Pas.0011. Напишите программу, которая выводит частичную сумму гармонического ряда. Для удобства анализа роста суммы выводите
только значения суммы и номера элемента ряда, когда сумма «перепрыгивает» очередное целое значение.
Гармонический ряд — это числовая последовательность вида \(
a_n = \dfrac 1n \). Сумма гармонического ряда \[
1 + \dfrac 12 + \dfrac 13 + \ldots + \dfrac 1n + \dfrac 1{n+1} + \ldots
\]
Решение.только значения суммы и номера элемента ряда, когда сумма «перепрыгивает» очередное целое значение.
Гармонический ряд — это числовая последовательность вида \(
a_n = \dfrac 1n \). Сумма гармонического ряда \[
1 + \dfrac 12 + \dfrac 13 + \ldots + \dfrac 1n + \dfrac 1{n+1} + \ldots
\]
program HarmonicSequenceSum; const LAST = 9999999; var n: longint; past, present : integer; sum: real; begin sum := 0; for n := 1 to LAST do begin past := trunc(sum); sum := sum + 1/n; present := trunc(sum); if (present > past) or (n = LAST) then writeln('sum = ', sum:12:9, ' (n = ', n:7, ')'); end end.Консоль.
sum = 1.000000000 (n = 1) sum = 2.083333333 (n = 4) sum = 3.019877345 (n = 11) sum = 4.027245195 (n = 31) sum = 5.002068273 (n = 83) sum = 6.004366708 (n = 227) sum = 7.001274097 (n = 616) sum = 8.000485572 (n = 1674) sum = 9.000208063 (n = 4550) sum = 10.000043008 (n = 12367) sum = 11.000017709 (n = 33617) sum = 12.000003052 (n = 91380) sum = 13.000001229 (n = 248397) sum = 14.000001362 (n = 675214) sum = 15.000000378 (n = 1835421) sum = 16.000000095 (n = 4989191) sum = 16.695311266 (n = 9999999)