#include<iostream>
#include<math.h>
int main()
{
double y,a,b,x;
a=2.6; b=5.1;
std::cout << "Enter x: ";
std::cin >> x;
if (x<=1)
{
y=a*pow(cos(x),2)-b*sin(pow(x,2));
std::cout << "y("<<x<<") = "<<y;
}
if (x>1 && x<=4)
{
y=b*log(x)+pow(x,3);
std::cout << "y("<<x<<") = "<<y;
}
if (x>4)
{
y=sqrt(pow(x,2)+a*b);
std::cout << "y("<<x<<") = "<<y;
}
return 0;
}
Объяснение:



0
Объяснение:
Проанализируем функцию. Здесь наблюдается так называемая рекурсия, когда подпрограмма в своем теле вызывает саму себя.
Первый вызов: f(20). Так как выражение 20 <= 10 будет ложным, то выполнится f:=f(f(f(20-10))) = f(f(f(10)))
Первый вызов функции "приостанавливается", и начинается вычисление второй функции f(10). 10 <= 10 - удовлетворяет условию, значит результатом будет 0.
Теперь программе необходимо вычислить значение функции f(f(0)), который, в свою очередь, равен f(0) = 0. А это значит, что f(20) = 0.