Вычислить значение выражения - C (СИ) (70796)
Формулировка задачи:
Здравствуйте! Пожалуйста, помогите кодом или советом - для допуска к экзамену выдали кучу задач. Сам я новичок, пока плохо разбираюсь...
Вычислить значение выражения:
(cos1/sin1)*((cos1+cos2)/(sin1+sin2))*...*((cos1+...+cosn)/(sin1+...+sinn)).
Решение задачи: «Вычислить значение выражения»
textual
Листинг программы
#include <stdio.h> #include <math.h> float func(int n) { float result = 1; float num = 0; float denom = 0; for (int i = 1; i <= n; i++) { num += cos((float) i); denom += sin((float) i); result *= num / denom; } return result; } int main () { int n; printf("Введите n\n"); scanf("%d", &n); float result = func(n); printf("Значение выражения: %f", result); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с плавающей точкой и вводом-выводом
- Определение функции с именем func, которая принимает целочисленный аргумент n
- Внутри функции объявлены три переменные: result, num и denom, которые будут использоваться для хранения результата, числителя и знаменателя соответственно
- Задается начальное значение result равное 1
- В цикле от 1 до n с шагом 1 выполняются следующие действия:
- Значение i преобразуется в тип float
- Значение cos(i) добавляется к num, а значение sin(i) к denom
- Результат умножается на num и делится на denom, затем присваивается переменной result
- Функция func возвращает значение result
- В функции main происходит запрос на ввод значения n с помощью функции scanf
- Вызывается функция func с переданным значением n
- Результат вычислений выводится на экран с помощью функции printf
- Программа завершается возвратом 0, что означает успешное выполнение
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д