Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
ВЫЧИСЛЕНИЕ СУММ ПРОСТЕЙШИХ ЧИСЛОВЫХ РЯДОВ
Примеры составления программ Пример 10.1. Составим программу вычисления значения числового ряда, определяющего значение основания натурального логарифма e, равного примерно 2,718282: 1 + 1/1! +1/2! + 1/3! + …+ 1/n! ≈ e. Накопление суммы ряда будем производить по рекуррентной формуле где - текущий член ряда определяется выражением . Для того чтобы не вводить дополнительного цикла вычисления факториала , с целью сокращения объема вычислений следует использовать рекуррентное соотношение Принимая начальные значения суммы и текущего члена ряда равными единице, схему алгоритма решения задачи можно представить рис. 10.1. Текст программы имеет следующий вид: Program Line; {********************************** } {Цель - Вычисление суммы ряда } {Переменные: } { S – сумма; i – параметр цикла; } { u – член ряда; } { n – число членов ряда. } {Программист: ст. гр. 537 Сычев В.К. } {Проверил: доцент Лаврентьев С.И. } {Дата написания - 26.12.05 г. } {*********************************** } Var S, u :real; Рис. 10.1. Алгоритм i, n :integer; вычисления суммы ряда Begin {Line} {Ввод и эхо-печать исходных данных} Write('Введите число членов ряда'); Read(n); Write ('Сумма',n:4,' слагаемых равна'); {Инициализация переменных} S:=1; u:=1; for i:=1 to n do {Накопление суммы ряда} begin u:=u/i; S:=S+u end; {Вывод результатов} Writeln(S); Writeln('Точное значение ряда: e = ', Exp(1)) End. {Line } Пример 10.2. Составим программу вычисления значения числового ряда, определяющего значение константы 1/4: 1/(1*2*3) + 1/(2*3*4) + 1/(3*4*5) + … + 1/(n(n+1)(n+2)) ≈ 1/4. Накопление суммы ряда, как и в предыдущем примере, будем производить по рекуррентной формуле где - текущий член ряда определяется выражением . В отличие от предыдущего примера здесь текущий член ряда может быть вычислен непосредственно, и его не обязательно обозначать отдельной переменной. Поэтому схему алгоритма решения задачи можно представить рис. 10.2. Текст же программы примет следующий вид: Program Line2; {********************************** } {Цель - Вычисление второй суммы ряда } {Переменные: } { S – сумма; i – параметр цикла; } { n – число членов ряда. } {Программист: ст. гр. 539 Краснов В.К. } {Проверил: ассистент Попов А.В. } {Дата написания - 28.12.05 г. } {*********************************** } Var S :real; Рис. 10.2. Алгоритм i, n :integer; вычисления второй суммы Begin {Line2} {Ввод и эхо-печать исходных данных} Write('Введите число членов ряда'); Read(n); Write ('Сумма',n:4,' слагаемых равна'); {Инициализация переменной суммы} S:=1; for i:=1 to n do {Накопление суммы ряда} S:=S+1/(i*(i+1)*(i+2)); {Вывод результата} Writeln(S); End. {Line2} Задания Составить алгоритм и программу вычисления суммы ряда в соответствии с приведенным вариантом. Справа от знака равенства дано для контроля точное значение ряда. Вариант 1. 1 –1/2 + 1/3 –1/4+…±1/n ≈ ln 2. Вариант 2. 1 + 1/2 + 1/4 + 1/8 +…+1/2n ≈ 2. Вариант 3. 1 –1/2+ 1/4 - 1/8 + … ± 1/2n ≈ 2/3. Вариант 4. 1 – 1/3 + 1/5 – 1/7 + 1/9 - …±1/(2n-1) ≈ p/4. Вариант 5. 1/(1*2) + 1/(2*3) + 1/(3*4) + … + 1/(n(n+1)) ≈ 1. Вариант 6. 1/(1*3) + 1/(3*5) + 1/(5*7) + … + 1/((2n-1)(n+1)) ≈ ½. Вариант 7. 1/(1*3) + 1/(2*4) + 1/(3*5) + … + 1/((n-1)(n+1)) ≈ 2/3. Вариант 8. 1/(3*5) + 1/(7*9) + 1/(11*13) + … + 1/((4n-1)(4n+1)) ≈ 1/2 - p/8. Вариант 9. 1/(1*2*3) + 1/(2*3*4) + 1/(3*4*5) + … + 1/(n(n+1)(n+2)) ≈ ¼. Вариант 10. 1 +1/22 + 1/32 +1/42+…+1/n2 ≈ p2/6. Вариант 11. 1/12 + 1/32 +1/52+…+1/(2n+1)2 ≈ p2/8. Вариант 12. 1 +1/24 + 1/34 +1/44+…+1/n4 ≈ p4/90. Вариант 13. 1 - 1/24 + 1/34 - …±1/n4 ≈ 7p4/720. Вариант 14. 1/14 + 1/34 +1/54+…+1/(2n+1) 4 ≈ p4/96. Вариант 15. 1 – 1/1! +1/2! – 1/3! + …± 1/n! ≈ 1/e. Вариант 16. 1 + 1/1! +1/2! + 1/3! + …+ 1/n! ≈ e. Вариант 17. 1 + 2 + 3 + … + n = n(n+1)/2. Вариант 18. p + (p+1) + (p+2) +… + (p+q) = (2p+q)(q+1)/2. Вариант 19. 1 + 3 + 5 + … + (2n – 1) = n2. Вариант 20. 2 + 4 + 6 + … + 2n = n(n+1).
Вариант 21. 12 + 22 + 32 + … + n2 =n(n+1)(2n+1)/6. Вариант 22. 13 + 23 + 33 + … + n3 =n2(n+1)2/4. Вариант 23. 12 + 32 + 52 + … + (2n – 1)2 =n(4n2-1)/3. Вариант 24. 13 + 33 + 53 + … + (2n – 1)3 =n2(2n2 - 1). Вариант 25. 14 + 24 + 34 + … + n4 = n(n+1)(2n+1)(3n2+3n – 1)/30. Тема 11 ТАБУЛИРОВАНИЕ ФУНКЦИИ С ПОМОЩЬЮ ОПЕРАТОРА ЦИКЛА С ПАРАМЕТРОМ |
||
Последнее изменение этой страницы: 2018-05-10; просмотров: 267. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |