#include <QCoreApplication>
#include <iostream>
#include <cmath>

int main()
{
    double x,y,z,s;
    std::cout << "Please enter x:\t";
    std::cin>>x;
    std::cout<< "\nPlease enter y:\t";
    std::cin>>y;
    std::cout<<"\nPlease enter z:\t";
    std::cin>>z;

    //---------------------------------
    //Первое слагаемое
    double powOfY = x>=0?pow(x, 1/3.f):pow(-x,1/3.f);  //Вычисляем степень первого слагаемого
    double ypow = pow(y,powOfY); //Возводим первое слагаемое в степень первого слагаемого
    s=ypow; //прибавляем первое слагаемое к результату
    //---------------------------------

    //---------------------------------
    //Второе слагаемое
    double secondSummand, cosCube, numerator, denominator;

        //Первый множитель
        cosCube = pow(cos(y), 3);
        secondSummand = cosCube;
        //---------------------------------
        //---------------------------------
        //Второй множитель
        double numerator1, numerator2;
        numerator1 = (x-y)>0?(x-y):(y-x);
        numerator2 =1;
        numerator2 += (sin(z)*sin(z))/(sqrt(x+y));
        numerator = numerator1*numerator2;
        denominator = exp(numerator1);
        denominator += (x/2);
        secondSummand *=(numerator/denominator);
    //---------------------------------
        s+=secondSummand;
        std::cout<<"\n\nAnswer is:\t"<<s;




    return 0;
}
