Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metod91_2.doc
Скачиваний:
6
Добавлен:
17.08.2019
Размер:
551.42 Кб
Скачать

Вычисление суммы ряда с определенной точностью — типичный пример использования цикла с условием.

Вычислить сумму ряда

с погрешностью .

Суммой ряда называется предел, к которому стремится последовательность частичных сумм данного ряда, если он существует. Если такой предел существует, то ряд называется сходящимся. Если , где и  — соответственно й и й члены ряда, то ряд сходится.

Будем считать, что сумма n первых членов ряда отличается от точной суммы ряда меньше чем на величину . Следовательно, для получения результата с заданной погрешностью будем накапливать частичную сумму элементов ряда, пока очередной член ряда по модулю не станет меньше заданной погрешности .

Вычислять элементы ряда независимо друг от друга нерационально. Для получения более эффективного алгоритма заметим, что й элемент ряда может быть получен по рекуррентной формуле: .

Поскольку ,

а , то

То есть .

Переменная x служит для хранения входных данных, переменная y — результата вычисления.

Значение в ходе вычисления суммы ряда не меняется, поэтому значение ( ) достаточно вычислить один раз до входа в цикл (запоминается в переменной x2).

Пример реализации программы. На форму помещены 3 элемента управления: кнопка Command1 (для запуска процесса вычислений), строка ввода Text1 (для ввода x) и метка Label1 (для вывода y).

Private Sub Command1_Click()

Const eps = 0.0001 'точность вычисления

Dim x As Double 'аргумент

Dim y As Double 'сумма ряда

Dim r As Double 'член ряда

Dim x2 As Double 'минус (x в квадрате)

Dim n As Integer 'номер слагаемого

x = CDbl(Text1.Text)

y = x : r = x : x2 = –x ^ 2 : n = 2

Do

r = r * x2 / ((2 * n + 1) * (2 * n))

y = y + r

n = n + 1

Loop Until Abs(r) < eps

Label1.Caption = CStr(y)

End Sub

Контрольные вопросы

1. Операторы цикла c пред- и постусловием.

2. Операции над переменными логического типа.

3. Понятие факториала и программная реализация его вычисления.

4. Понятие рекуррентной формулы.

5. Отличие цикла Do While от Do Until.

Приложение

Образец оформления титульного листа

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственное образовательное учреждение высшего профессионального образования Ростовская-на-Дону государственная академия сельскохозяйственного машиностроения

Факультет “Автоматика и робототехника”

Кафедра “Информационные и управляющие системы”

ОТЧЕТ

по лабораторной работе 1

“ЛИНЕЙНЫЙ АЛГОРИТМ”

по дисциплине “Технология программирования”

Вариант № ____

Выполнил: ст-т гр. ИС1-1 _____________ _______________________

(роспись студента) (Фамилия, инициалы студента)

Проверил: _____________ ________________________

(роспись (звание, должность, фамилия и

преподавателя) инициалы преп.)

Ростов-на-Дону

200__ г.

Содержание

Методические рекомендации к выполнению лабораторных работ 3

Лабораторная работа 1 5

Лабораторная работа 2 13

Лабораторная работа 3 21

Лабораторная работа 4 27

Приложение. Пример оформления титульного листа 32

——————————————————————

Учебное издание

Составители:

АЙДИНЯН Андрей Размикович

СЕЛИВАНОВА Елена Вячеславовна

СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕ

Методические указания к лабораторным работам по дисциплине “Технология программирования” для студентов I курса специальности 071900 “Информационные системы и технологии” дневной формы обучения

Редактор Т.С. Колоскова

Подписано к печати Формат бумаги 60х84/16

Бумага офсетная. Объем 1,9 усл. п.л. 1,7 уч.-изд.л.

Заказ № ______/2004 Тираж 50 экз.

Редакционно-издательский отдел РГАСХМ ГОУ

344023, Ростов-на-Дону, ул. Страны Советов, 1

Отпечатано в копировально-множительном бюро РГАСХМ ГОУ