Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Последние темы форума

Показать новые сообщения »

Почтовая рассылка

Подписчиков: 6457
Последний выпуск: 19.06.2015

Помогите правильно написать математическое уровнение

61K
15 февраля 2015 года
Максим Тесля
13 / / 10.12.2014
Здравствуйте.Помогите написать на С# математическое выражение:
При вводе чисел 1.83 или -0.5 должно выйти 0.2601
Но у меня почему-то выходит или 0.31 или 0.92
степень над 9-кой я посчитал отдельно.Что не так с моей формулой,я что-то не так написал?!
Исправьте или напишите правильный код,если вас это конечно не затруднит=)

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Enter string:");
            double x = Convert.ToDouble(Console.ReadLine());
            double a = -Math.Sin((2 * x) / 3) * Math.Sin((2 * x) / 3);
            double y = 8 * x / (70 / 3 + Math.Sqrt((7 / 6) * 49) + x) - Math.Pow(9.0, a);
            Console.WriteLine("y({0})={1}n", x, y);
            Console.WriteLine("Press Enter to EXIT");
            Console.Read();
        }
    }
}
431
15 февраля 2015 года
Meander
487 / / 04.09.2011
Ты сам сравнивал код с формулой?
 
Код:
double y = 8 * x / (70 / 3 + Math.Sqrt((7 / 6) * 49) + x) - Math.Pow(9.0, a);
вместо 70 поставить 10
перед корнем поставить 7, тогда 49 - убрать
по-моему так:
double y = 8*x / (10/3 + 7*Math.Sqrt(7/6) + x) - Math.Pow(9.0, a);
или так:
double y = 8*x / (10/3 + 7*Math.Sqrt(7/6) + x) - Math.Pow( 9.0,-Math.Pow((2*x/3),2) );
//
double y = 8.0*x / (10.0/3.0 + 7.0*Math.Sqrt(7.0/6.0) + x) - Math.Pow( 9.0,-Math.Pow((2.0*x/3.0),2.0) );
Что-бы не делать таких ошибок, я обычно делаю так (последовательная запись):
 
Код:
double y = 8*x/() - Math.Pow( 9, );
double y = 8*x/() - Math.Pow( 9,-Math.Pow( ,2) );
double y = 8*x/() - Math.Pow( 9,-Math.Pow( (2*x/3),2) );
double y = 8*x/(10/3 + 7*Math.Sqrt( ) + x) - Math.Pow( 9,-Math.Pow( (2*x/3),2) );
double y = 8*x/(10/3 + 7*Math.Sqrt(7/6) + x) - Math.Pow( 9,-Math.Pow( (2*x/3),2) );
61K
15 февраля 2015 года
Максим Тесля
13 / / 10.12.2014
Цитата: Meander
Ты сам сравнивал код с формулой?
 
Код:
double y = 8 * x / (70 / 3 + Math.Sqrt((7 / 6) * 49) + x) - Math.Pow(9.0, a);
вместо 70 поставить 10
перед корнем поставить 7, тогда 49 - убрать
по-моему так:
double y = 8*x / (10/3 + 7*Math.Sqrt(7/6) + x) - Math.Pow(9.0, a);
или так:
double y = 8*x / (10/3 + 7*Math.Sqrt(7/6) + x) - Math.Pow( 9.0,-Math.Pow((2*x/3),2) );
//
double y = 8.0*x / (10.0/3.0 + 7.0*Math.Sqrt(7.0/6.0) + x) - Math.Pow( 9.0,-Math.Pow((2.0*x/3.0),2.0) );
Что-бы не делать таких ошибок, я обычно делаю так (последовательная запись):
 
Код:
double y = 8*x/() - Math.Pow( 9, );
double y = 8*x/() - Math.Pow( 9,-Math.Pow( ,2) );
double y = 8*x/() - Math.Pow( 9,-Math.Pow( (2*x/3),2) );
double y = 8*x/(10/3 + 7*Math.Sqrt( ) + x) - Math.Pow( 9,-Math.Pow( (2*x/3),2) );
double y = 8*x/(10/3 + 7*Math.Sqrt(7/6) + x) - Math.Pow( 9,-Math.Pow( (2*x/3),2) );


Не помогло...(

431
15 февраля 2015 года
Meander
487 / / 04.09.2011
1) откуда известен ответ?
2) в знаменателе, после 7, что за закорючка?
- это корень?
- какой степени?
- на что распространяется?
238
16 февраля 2015 года
koderAlex
1.4K / / 07.09.2005
y=8*x/(x+10/3+7+Math.Sqrt(7/6))-Math.Pow((Math.Sin(2*x/3)),2);
28K
19 февраля 2015 года
Ingvar5
1 / / 24.04.2009
Sin((2 * x) / 3) для 1,83 будет = 0.939099356
Sin((2 * x) / 3) для -0,5 будет = -0.327194697
Так что для обеих значений результат 0.2601 уж ни как не получиться.
По быстрому проверил в Екселе
Вычисление формулы
для -0.5 результат -1.175221595
для 1,83 результат 1.006535937

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог