Вычислить значение выражения - C (СИ) (70561)

Узнай цену своей работы

Формулировка задачи:

Всем привет! Нужна ваша помощь с заданием: Вычислить S=(1 + 1/3)*(1/5+ 1/7)*( 1/9+ 1/11 + 1/13)*...*( 1/33+1/35+1/37+1/39+ 1/41+1/43) Буду очень благодарен за помощь.

Решение задачи: «Вычислить значение выражения»

textual
Листинг программы
  1. #include <stdio.h>
  2.  
  3. int main() {
  4.     int i = 1, k;
  5.     int j, prev = 3;
  6.     double res = 1;
  7.     double sum = 1;
  8.     for(i = 1; i<=6; i++){
  9.         for (j = prev, k = i; j <= 43; j+=2) {
  10.             res += 1.0 / j;
  11.             prev = j + 2;
  12.             k--;
  13.             if (k == 0) break;
  14.         }
  15.         sum *= res;
  16.         res = 0;
  17.     }
  18.     printf("%f\n", sum);
  19.     return 0;
  20. }

Объяснение кода листинга программы

В этом коде выполняются два вложенных цикла. Первый цикл идет от 1 до 6, а второй - от 3 до 43 с шагом 2. В каждой итерации внутреннего цикла переменная res увеличивается на 1/j, где j - это значение из диапазона от 3 до 43 с шагом 2. Затем переменная prev увеличивается на 2, а переменная k уменьшается на 1. Если k становится равным 0, то цикл прерывается. Переменная sum перемножается на значение res после каждой итерации внешнего цикла. Значение res затем обнуляется. В конце программы выводится значение sum.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут