Задачка по С++

Задачка по С++
пример записать кодом!

#include
#include
#include
#include

using namespace std;

int main()
{
double x, y, z, h;
cout < < "Vvedite x: ";
cin >> x;
cout < < "Vvedite y: ";
cin >> y;
cout < < "Vvedite z: ";
cin >> z;
h=(pow(sin(z),2)/sqrt(x+y)+1)*pow(cos(y),3)/(exp(fabs(x-y))+x/2)*fabs(x-y);

h+=pow(y,fabs(x)*1/3);

cout < < "Result h= " << h <

  • Должно быть:
    h+=pow(y,pow(fabs(x),1./3));

    и неплохо бы убедиться, что x+y не равен нулю
    а выражение exp(fabs(x-y))+x/2, хоть теоретически тоже может быть равен нулю, но практически не будет никогда ему равен, поэтому в принципе его на ноль проверять не обязательно

  • возможно бзик в целочисленном делении
    1/3 == 0
    1./3 == 1/3. == 0.333333....
  • скобки забыли перед +1 в последнем выражении, поэтому еденица к знаменателю прибавляеться а не к выражению
    хотя ене уверен
  • Лениво пересчитывать, но как минимум нужно учесть что sin как и cos (касательно c/c++ stdlib) ожидают значения в радианах а не в градусах, если не ошибаюсь.
    Источник: опыт