1 Востаннє редагувалося Roman_ko (24.09.2017 13:42:38)

Тема: Допоможіть, будь ласка, з рівнянням

Допоможіть, будь ласка, з рівнянням. "Нахімічив" ось таке, а далі туплю

using System;
using math.h;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp2
{
    class Program
    {
        static void Main(string[] args)
        {
          
                double x, y, a;
                Console.WriteLine("Write the X");
                x = Convert.ToDouble(Console.ReadLine());
                y = Math.Abs(x - (x + Math.Pow(Math.Abs(a+Math.Pow(Math.PI, x+Math.Cos(a))), 1.0/x)/(Math.Exp+Math.Pow(Math.Exp, Math.Exp)+));
                Console.WriteLine("y={0}",y);
                Console.ReadLine();

        }
    }
}

у прикріпленому файлі саме рівняння. ВЕЛИКЕ дякую за допомогу

Post's attachments

1.png 8.8 kb, 187 downloads since 2017-09-24 

2 Востаннє редагувалося FakiNyan (24.09.2017 14:04:59)

Re: Допоможіть, будь ласка, з рівнянням

public static double Acot(double x)
{
    return (x < 0 ? -Math.PI/2 : Math.PI/2) - Math.Atan(x);
}
//або
public static double Acot(double x)
{
    return x == 0 ? 0 : Math.Atan(1/x);
}

https://stackoverflow.com/questions/277 … in-c-sharp
це arcctg

3 Востаннє редагувалося koala (24.09.2017 14:10:51)

Re: Допоможіть, будь ласка, з рівнянням

Для початку - давайте завдання. "Рівняння" - це не завдання, вибачте. Завданням може бути, скажімо, "розв'язати рівняння відносно y для введеного з клавіатури x"; але тоді, схоже, це все одно не рівняння, а обчислення значення виразу, бо рівняння у вас уже приведене до вигляду y=f(x).
По-друге, поясніть, чим вас не влаштовує ваш код. Іноді буває так, що код, насправді, працює, а ви просто очікуєте чогось не того (наприклад, ви ввели значення, при якому знаменник стає 0). Якщо виводить неправильне значення - покажіть, що ви вводили, що виводить програма, а чого ви очікували. Якщо пише про помилку - то про яку і де. Звісно, в більшості випадків ми можемо самі це отримати, але нащо нам щось робити, якщо ви вже це маєте, і вся проблема - розказати це нам?
По-третє, дуже раджу такі вирази розбивати на кілька частин - наприклад, числівник і знаменник обчислити у дві окремі змінні.
По-четверте, "велике дякую" не кажуть. Це як рос. "очень спасибо".
І по-п'яте, Math.Exp - це функція натуральної експоненти(ex), а не число. Число Ейлера (константа e) в C# позначається аналогічно з Math.PI - Math.E.

Подякували: FakiNyan, NaharD2

4

Re: Допоможіть, будь ласка, з рівнянням

Соромно мені... Я розумію, що не правий і необізнаний у багатьох моментах, але вже чіплятися за "велике дякую"... Вибачте, але ми нація, яка дбає один про одного чи "гризе" один одного?
Дякую за приниження, koala. Ваш розум я поважаю, але не Ваше ставлення до людей.
Пробачте мені, якщо образив Вас http://nihon-go.ru/wp-content/uploads/0192-200x3001.jpg

Подякували: 0xDADA11C7, NaharD, FakiNyan, ostap34PHP4

5

Re: Допоможіть, будь ласка, з рівнянням

От тепер ви мене образили тим, що проігнорували моє прохання написати завдання і те, що вас не влаштовує у вашому коді.
І зверніть увагу - я нічого не казав про вас, ваші здібності і т.д. Я просто виправив вашу помилку, і все, а ви самі перенесли це на себе і сприйняли як приниження. Виправлення - не приниження, а крок до досконалості.

Подякували: FakiNyan, Betterthanyou, ostap34PHP3

6 Востаннє редагувалося Roman_ko (25.09.2017 12:58:42)

Re: Допоможіть, будь ласка, з рівнянням

Видаляйте тему

7

Re: Допоможіть, будь ласка, з рівнянням

вже не актуально

Погоджуюсь з koala, вам просто дали пораду, як виправити помилки в коді (і як виправити лексичну помилку у вашому повідомленні. Хоча це було зайве), ніхто вас не ображає
Якщо ви почитаєте уважно правила, то зрозумієте що ви теж не праві. Ви не дотрималися наступних правил:
3.3. Назва теми має бути інформативною і максимально чітко відображати зміст проблеми.
Правильно: "Масив (парність та непарність)", "Обробка текстового файлу з числами", "Smarty (та інші шаблонізатори) - чи доречно застосовувати?".
Не правильно: "Допоможіть розв'язати задачу", "Потрібна допомога", "Терміново".
3.4. Бажано в повідомленні вказувати наступне:
...

  • описуєте з чим у вас виникли проблеми

3.7. Старайтесь не допускати граматичних помилок, поважайте учасників форуму.

Що до вашого питання, розбийте приклад (задачу) на менші приклади, введіть додаткові змінні, якщо ви їх потребуєте, для легшого сприймання коду.
Використовуйте Debugger щоб вияснити коли у вас виникає помилка

Ось маленький приклад (але я не гарантує що він правильний)

...
            double y, numerator, denominator, x, a;
            Console.WriteLine("Write the X");
            x = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Write the A");
            a = Convert.ToDouble(Console.ReadLine());
            /*numerator*/
            numerator = Math.Pow(Math.PI, x + Math.Cos(a));//PI^x+cos a
            numerator = Math.Abs(x + numerator);//|a+PI^x+cos a|
            numerator = Math.Pow(numerator, 1 / x);//sqrt(by x) |a+PI^x+cos a|
            numerator = x + numerator;//x + sqrt(by x) |a+PI^x+cos a|
            /*denominator*/
            ...
            /*result*/
            y = Math.Abs(x - numerator / denominator);
            Console.WriteLine("Result = " + Convert.ToString(y) + "\nPress any key to exit...");
            Console.ReadKey();
...

Якщо ви вкажете конкретну дію яку не вдається зробити, то вам обов'язково допоможуть, просто зараз не зрозуміло що ви хочете. Виникає відчуття що ви хочете отримати вирішення всього прикладу.

Подякували: koala, Chemist-i, ping, SergTeor, ostap34PHP5