Задача 1.5

1. Условие задачи

Даны действительное число a и натуральное n. Вычислить:

         1          1                         1
        — + ——— + ... + —————— .
         a     a(a+1)            a(a+1)...(a+n)

 

 

2. Решение

Вычисления проводим в цикле:

1. Рассчитываем значение слагаемого


    b
b = —— ,
     a + i

где i — счетчик цикла.


2. Рассчитываем сумму по формуле S = S + b. После вычислений выводим результат на экран.

3. Алгоритм решения

4. Текст программы

 
 1:  #include <stdio.h>
 2:  #include <conio.h>
 3:  #include <math.h>
 4:  void main()
 5:  { 
 6:   float b=1, s=0, a;
 7:   int n, i;
 8:   clrscr();
 9:   printf ("\nВведите натуральное n:\n");
10:   scanf("%u", &n);
11:   printf("\nВведите a:\n");
12:   scanf("%f", &a);
13:   for (i=0; i<=n; i++)
14:   { 
15:    b = b / (a + (float)i);
16:    s = s + b;
17:   } 
18:   printf("Результат вычислений s=%f .\n", s);
19:   getchar();
20:  }

5. Работа программы

Введите натуральное n:
3
Введите a:
2
Результат вычислений s=0.716667 .

6. Проверка

Произведем расчет суммы при n = 3 и a = 2:

1/2+1/6+1/24+1/120 = 0,71666.


Программа работает корректно.

Хостинг от uCoz