Модифицировать вычисление выражения под другие входные данные - C (СИ)
Формулировка задачи:
По принципу этой программы напишите пожалуйста похожее но с другими значениями такими как на картинке.
#include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char *argv[]) { float a, b, x, f; printf("\nx="); scanf("%f", &x); a = 15*x + 21*pow(x,2); if (a < 0) { printf("\n некорректное число x (a)"); return 1; } a = sqrt(a); b = sin(x*x - x); if (a - b > 10) if (b > 0 && fabs(cos(a)-b) > 0.00001) { f = a*log(b) + b/(cos(a)-b); printf("\nf1=%.3f", f); } else { printf("\n некорректное число x (f1)"); return 2; } else if (a+1>=0 && fabs(cos(12*b-4))>0.00001) { f = (1 + sin(sqrt(a+1))) / cos(12*b - 4); printf("\nf2=%.3f", f); } else { printf("\n некорректное число x (f2)"); return 3; } return 0; }
Решение задачи: «Модифицировать вычисление выражения под другие входные данные»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <math.h> int main() { float a, b, x; printf("\nx="); scanf("%f", &x); if (x==0 || 2*x+5<0) { printf("Wrong a\n"); return 0; } a = sqrt(2*x+5)/x; b = abs(2*x); if(a*a<b) { printf("f1=%.3f\n",a+b*(a+b)); } else { printf("f2=%.3f\n",sqrt(a*a-b*b)); } return 0; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Объявляем переменные a, b, x типа float
- Выводим на экран значение x с помощью функции printf
- Считываем значение x с помощью функции scanf
- Проверяем условие: если x равно нулю или 2*x+5 меньше нуля, выводим сообщение
Wrong a
и завершаем работу программы - Вычисляем значение a по формуле sqrt(2*x+5)/x
- Вычисляем значение b по формуле abs(2*x)
- Проверяем условие: если a в квадрате меньше b, выводим значение f1 по формуле a+b*(a+b))
- Если условие не выполняется, выводим значение f2 по формуле sqrt(aa-bb)
- Завершаем работу программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д