Программирование циклических вычислительных процессов
Цель: Приобрести навыки программирования циклических вычислительных процессов.
Теоретические разделы для выполнения лабораторной работы
- Организация циклических процессов при решении вычислительныхзадач.
Задание к работе
А) Вычислить значение выражения (по вариантам, см. приложение 2) в цикле x Є [xn;xk] с шагом x. Исходные данные задать самостоятельно, в программе должно быть не менее 7-8 циклов.
Часть 1.
Программирование циклических вычислительных процессов с использованием оператора цикла For … Next.
Часть 2.
Программирование циклических вычислительных процессов с использованием оператора цикла Do … Loop с предусловием
(Do While … Loop или Do Until … Loop).
Часть 3.
Программирование циклических вычислительных процессов с использованием оператора цикла Do … Loop с постусловием
(Do … Loop Until или Do … Loop While).
Б) Выполнить вариант задания приложения 4, задание Б, с. 19.
Замечание
1) При написании программ необходимо учитывать область допустимых значений (ОДЗ).
2) Если во второй части задания А использовался оператор Do While … Loop, то в третьей части задания А лабораторной работы следует использовать оператор цикла Do…Loop Until, и наоборот.
Пример
Вычислить выражение
Метод разделения на части состоит в следующем: исходное выражение разбиваем на элементарные части, например:
а = sin x
b = x-2
c = cos x
После разбиения на части расчетная формула имеет следующий вид:
ОДЗ
b<>0, c>0
Текст программы (Часть 2, оператор цикла Do While … Loop)
Sub lr4_2() Dim x, y, a, b, c,xn, xk, dx As Single xn=Val(InputBox(“Введите начальное значение хn”)) xk=Val(InputBox(“Введите конечное значение хk”)) dx=Val(InputBox(“Введите шаг dx”)) x=xn Do While x<=xk a=sin(x) b=x-2 c=cos(x) If b<>0 then If c>0 then y=a/b-log(c) Else Y=“Подлогарифмическое выражение < = 0” End If Else Y= “Знаменатель = 0” End If MsgBox “Результат Y = ” & y, , “Вывод результатов” x=x+dx Loop End Sub
Контрольные вопросы
- Оператор цикла For … Next
- Операторы цикла Do While … Loop, Do Until … Loop
- Операторы цикла Do … Loop While, Do … Loop Until
Варианты заданий (часть Б)
1. Найти сумму ряда S= с точностью до = . Результат печатать.
2. Вычислить cos ( - известная величина ) разложением в ряд Тейлора с точностью до = .
3. Вычислить sin ( - известная величина ) разложением в ряд
Тейлора с точностью до = .
4. Найти среднее арифметическое целых чисел от до .
5. Найти среднее арифметическое целых чисел от до .
6. Вычислить для любого вводимого .
7. Вычислить значение при = разложением в ряд Тейлора с точностью до = .
8. Вычислить .
9. Найти сумму ряда S= + с точностью до = .
10. Найти среднее геометрическое всех четных чисел от 10 до 21 и среднее геометрическое всех нечетных чисел из того же интервала (в одном цикле) .
11. Найти сумму ряда S= + с точностью до E=10 -4.
12. Найти сумму ряда S= с точностью до E=10 -4.
13. Вычислить число сочетаний из по по формуле
С ,
где , целые числа ввести с клавиатуры.
14. Вычислить значение выражения
,
где ввести с клавиатуры .
15. Вычислить число размещений из по по формуле
,
где целые числа и ввести с клавиатуры .
16. Вычислить приближенно значение бесконечной суммы с точностью до E=10-4
Значение и точность расчетов ввести с клавиатуры.
17. Вычислить приближенно значение бесконечной суммы с
точностью до E=10-4
Значение и точность расчетов ввести как константы.
18. Вычислить значение функции для .
Вычисления производить до тех пор , пока . Исходные данные ввести с клавиатуры.
19. Вычислить бесконечную сумму с точностью до E=10-4.
20. Вычислить бесконечную сумму с точностью до E=10 -4.
21. Составить программу для вычисления и вывода на экран таблицы значений сумм
для , изменяющегося с шагом . Исходные
данные :.
22. Переменная изменяется от до включительно с шагом
. Найти наименьшее значение функции на этом интервале.
23. Переменная изменяется с шагом на интервале . Найти наибольшее значение функции для , принимающих указанное значение . результат печатать .
24. Вычислить значение многочлена Лагерра для по рекуррентной формуле :
.
25. Вычислить значение многочлена Лежандра для по рекуррентной формуле :
.
26. Вычислить значение многочлена Эрмита для ,
по рекуррентной формуле :
.
27. Вычислить с точностью до значение дилогарифма для пяти значений по его разложению в ряд
, .
28. Определить относительную погрешность вычисления факториала по формуле Стирлинга
для значений .
29. Посчитать , сколько отрицательных значений принимает функция , если изменяется от 0,25 до 3 с шагом 0,05.
. Предусмотреть случай , когда функция терпит разрыв .
30. Вычислить бесконечную сумму с точностью до Е=10 -3.
CC-BY-CA Анатольев А.Г., 31.01.2012