2016-11-26 2 views
1

Уравнение:Это истинное уравнение, написанное на C#?

enter image description here

Это правда, я написал?

Double x = 14.26 
Double y = -1.22 
Double z = 3.5 * Math.Pow(10.0, -2) 
Double t; 

t = (2 * Math.Cos(x - Math.PI/6))/(0.5 + Math.Pow(Math.Sin(y), 2)) * ((1 + Math.Pow(z, 2))/(3 - Math.Pow(z, 2)/5)); 

Поскольку результат не совпадает с указанным выше желаемого результата - Т = 0,188451240697501, и мне нужно вывести T 0.564849.

+0

насчет 'y'? Это в градусах или радиан? –

+2

Я предлагаю вычислить числители и знаменатели отдельно, чтобы облегчить понимание вашего выражения. – Dai

+0

@GhostBasenji извините, но я думаю, что ответ Ofiris содержит ошибку .. он делает 1 + (Math.Pow (z, 2), а затем делит все на (3-Math.Pow (z, 2)/5) .. но это ошибка, если вы видите опубликованное вами выражение алгебры, потому что вы добавили 1 к (Math.Pow (z, 2)/(3-Math.Pow (z, 2)/5)). Вся ваша предыдущая часть из выражения правильно –

ответ

1

Я думаю, что одна ошибка именно здесь:

((1 + Math.Pow(z, 2))/(3-Math.Pow(z, 2)/5)) 

вы должны сделать:

(1 + (Math.Pow(z, 2)/(3-Math.Pow(z, 2)/5))) 
2
Double x = 14.26, y = -1.22, z = 3.5 * Math.Pow(10.0, -2), t; 
    t = (2*Math.Cos(x-Math.PI/6))/(0.5+Math.Pow(Math.Sin(y), 2)) * (1 + (Math.Pow(z, 2))/(3-Math.Pow(z, 2)/5)); 

    Console.WriteLine(t); // 0.5648... 

У вас есть вопрос скобки, изменить ((1 + Math.Pow(z, 2)) к (1 + (Math.Pow(z, 2)), добавление 1 должно быть рассчитано после разделения.

Также рассмотрите возможность вычисления числителей и знаменателей отдельно.

+0

Этот ответ содержит очевидную ошибку вычисления по сравнению с алгебраической формой выражение, указанное в вопросе. Поскольку «1» добавляется к «(Math.pow (z, 2))», а затем divi (3 - (Math.pow (z, 2)/5)) ". Хотя правильный расчет состоит из суммы «1» с результатом деления между «(Math.pow (z, 2)) и (3 - (Math.pow (z, 2)/5))». –

Смежные вопросы