Даны действительные числа s, t. Вычислить f(t, -2s, 1.17) + f(2.2, t, s-t) - C (СИ)
Формулировка задачи:
Цель лабораторной работы: получить навыки программирования задач с использованием нескольких функций.
Даны действительные числа s, t. Вычислить f(t, -2s, 1.17) + f(2.2, t, s-t), где f(a,b,c)=(2a-b-sin(c))/(5+abs(c)) .
Пожалуйста помогите!
Решение задачи: «Даны действительные числа s, t. Вычислить f(t, -2s, 1.17) + f(2.2, t, s-t)»
textual
Листинг программы
/* Даны действительные числа s, t. Вычислить
f(t, -2s, 1.17) + f(2.2, t, s-t),
где f(a,b,c)=(2a-b-sin(c))/(5+abs(c)) */
#include <stdio.h>
#include <stdlib.h>
/* прототип (объявление) функции */
float f(float, float, float);
int main()
{
/* объявление переменных */
float s, t, result;
/* ввод данных */
printf("Enter s: "); scanf("%f",&s);
printf("Enter t: "); scanf("%f",&t);
/* вычисление */
result=f(t, -2*s, 1.17) + f(2.2, t, s-t);
/* вывод */
printf("result = %8.5f\n", result);
/* чтобы окно сразу не закрылось */
getch();
return 0;
}
float f(float a, float b, float c)
{
float z;
z = (2*a-b-sin(c))/(5+abs(c));
return z;
}
Объяснение кода листинга программы
- Предполагается, что задача заключается в вычислении значения функции f(t, -2s, 1.17) + f(2.2, t, s-t), где f(a,b,c)=(2a-b-sin(c))/(5+abs(c)).
- В программе подключаются две библиотеки: stdio.h и stdlib.h.
- В функции main() объявляются три переменные: s, t и result.
- Пользователю предлагается ввести значения для переменных s и t с помощью функции scanf().
- Затем вызывается функция f(t, -2*s, 1.17) для вычисления первого значения и f(2.2, t, s-t) для вычисления второго значения.
- Результат сохраняется в переменной result.
- Используя функцию printf(), выводится значение result.
- Чтобы программа не закрылась сразу после вывода, вызывается функция getch().
- Программа возвращает 0, указывая, что она успешно завершила свою работу.
- В функции f(a,b,c) объявляется одна переменная z.
- Значение z вычисляется по формуле (2*a-b-sin(c))/(5+abs(c)).
- Затем функция возвращает значение z.