Программирование циклических алгоритмов
Алгоритм называется циклическим, если он содержит многократное выполнение одних и тех же ветвей при различных значениях промежуточных данных. Число повторений этих ветвей алгоритма может быть задано в явной или неявной форме.
Перед выполнением работы необходимо изучить различные схемы организации циклов и операторы FOR, WHILE и REPEAT, с помощью которых они программируются.
Пример. Составим программу для вычисления и вывода на печать таблицы значений функции y = a x2 при x = 5, 6, 7, ..., 35; a =10.2.
С использованием оператора WHILE программа имеет вид:
program Pr1;
var
y,a: real;
x: integer;
begin
x:=5; a:=10.2;
while x<=35 do
begin
y:= a*x*x;
writeln(‘ x=',x, ‘y=’,y)
x:= x+1
end
end.
С использованием REPEAT программа выглядит так:
program Pr2;
var
y,a: real;
x: integer;
begin
x:=5; a:=10.2;
repeat
y:= a*x*x;
writeln(‘ x=',x, ‘y=’,y)
x:= x+1
until x >35
end.
Порядок выполнения работы
1. Изучить необходимые сведения, указанные в п.3.
2. Получить у преподавателя вариант задания.
3. Разработать, ввести и отладить программу
4. Произвести расчет по крайней мере при двух различных вариантах исходных данных, выбранных самостоятельно.
5. Оформить отчет, защитить и сдать его преподавателю. Отчет должен содержать цель работы, задание, блок-схему программы, распечатку программы и результатов прогона программы.
Варианты заданий
1. Вычислить число сочетаний из n по m по формуле
где n!=1*2*3…(n-1)*n, целые числа n, m (n>=m>0) ввести с клавиатуры.
2. Вычислить значение выражения
b = (1+
где n ввести с клавиатуры.
3. Вычислить число размещений из n по m по формуле
,
где целые числа n и m ввести с клавиатуры (n>=m>0).
4. Вычислить приближенно значение бесконечной суммы с точностью до e = 0,001;
Значение n и точность расчетов ввести с клавиатуры.
Примечание.Считать, что требуемая точность достигнута, если очередное слагаемое оказалось по модулю меньше,чем e.
5. Вычислить приближенно значение бесконечной суммы с точностью до 0,0005:
Значение n и точность расчетов ввести как константы (см. примечание к варианту 4).
6. Дано натуральное n, определить количество цифр в числе n и сумму всех его цифр. Значение n ввести с клавиатуры.
7. Вывести на печать таблицу n значений функции при изменении х от х1 до х2 с шагом h = (х2- х1)/(n – 1). Коэффициенты a, b, c, границы интервала х1, х2 и число n ввести с клавиатуры.
8. Вычислить значение функции для k = 1,2,… .Вычисления производить до тех пор, пока y>=z. Исходные данные x, y и z (x, y>1) ввести с клавиатуры.
9. Найти приближенно , с точностью до 0,01, минимум функции f(x)= ax2 + bx + c на отрезке х1 £ х <= x2. Значения х1, х2 и a, b, c ввести как константы.
10. Пусть а1= u; b1 = v; ak = 2bk-1+ ak-1; bk = 2ak-1 + bk-1, k=2,3,4,… .Даны действительные u, v, натуральное n. Найти
11. Вычислить бесконечную сумму с точностью e=0,001.
См. примечание к варианту 4.
12. Вычислить бесконечную сумму с точностью e=0,001.
См. примечание к варианту 4.
13. Вычислить и вывести на экран таблицу значений функции у = х/k!, больших e, если k = 1,2,3,… . Исходные данные: х=1,55; e = 0,0183.
14. Вычислить и вывести на экран таблицу всех 20 значений функции z(i,j) = xi 2+ yj 3 для xi = x1, x2, x3, x4; yj = y1, y2,…,y5. Исходные данные: x1= 0,1; x2 =0,2; x3 = =0,3; x4 =0,4; y1= 1,1; y2 = 1,2; y3 = 2,1; у4 = 2,2; y5 =2,5.
15. Вычислить значение выражения
(9 + (9 + …+ (9 + 91/2)1/3…)1/m-1)1/m
Число m ввести с клавиатуры.
16. Составить программу для вычисления и вывода на экран таблицы значений сумм для а £ х £ b, изменяющегося с шагом h = (b-a)/10. Исходные данные: а = -1,05; b= 362; n = 10.
17. Вычислить и вывести на экран таблицу значений функции у = x2 – ab – cx для х = -5, -6, -7,…,-35. Исходные данные (в экспоненциальной форме записи): а = 1,14Е +1; b = -4,21Е+2; с = 3,25Е+3.
18. Составить программу вычисления и вывода на экран таблицы сумм , где х изменяется в пределах а £ х £ b с шагом h = (b-a)/10. Исходные данные: а = 0,1; b = 13; n = 12.
19. Вычислить и вывести на экран таблицу значений функции у = x2 – ab + cx, для хнач. £ х £ хкон. с шагом h. Исходные данные: а = -1,14; b = -4,21; с = 3,25; хнач.= 4,5; хкон = 35,5; h = 0,5.
20. Найти наибольшее значение функции у = аx3 + bх – c при изменении х от хнач. до хкон с шагом h. Исходные данные : а = 2,14; b = -4,21; с = 3,25; хнач.= - 4,5; хкон = - 35,5; h = - 0,5.
21. Вычислить приближенно значение бесконечной суммы с точностью до 0,0005:
Значение n и точность расчетов ввести как константы (см. примечание к варианту 4).
22. Дано натуральное n, определить количество цифр в числе n и сумму всех его цифр. Значение n ввести с клавиатуры.
23. Вывести на печать таблицу n значений функции при изменении х от х1 до х2 с шагом h = (х2- х1)/(n – 1). Коэффициенты a, b, c, границы интервала х1, х2 и число n ввести с клавиатуры.
24. Вычислить значение функции для k = 1,2,… . Вычисления производить до тех пор, пока y>=z. Исходные данные x, y и z (x, y>1) ввести с клавиатуры.
25. Найти приближенно , с точностью до 0,01, минимум функции f(x)= ax2 + bx + c на отрезке х1 £ х <= x2. Значения х1, х2 и a, b, c ввести как константы.
26. Пусть а1= u; b1 = v; ak = 2bk-1+ ak-1; bk = 2ak-1 + bk-1, k=2,3,4,… .Даны действительные u, v, натуральное n. Найти
27. Вычислить бесконечную сумму с точностью e=0,001.
См. примечание к варианту 4.
28. Вычислить бесконечную сумму с точностью e=0,001.
См. примечание к варианту 4.
29. Вычислить и вывести на экран таблицу значений функции у = х/k!, больших e, если k = 1,2,3,… . Исходные данные: х=1,55; e = 0,0183.
30. Вычислить и вывести на экран таблицу всех 20 значений функции z(i,j) = xi 2+ yj 3 для xi = x1, x2, x3, x4; yj = y1, y2,…,y5. Исходные данные: x1= 0,1; x2 =0,2; x3 = =0,3; x4 =0,4; y1= 1,1; y2 = 1,2; y3 = 2,1; у4 = 2,2; y5 =2,5.
31. Вычислить значение выражения
(9 + (9 + …+ (9 + 91/2)1/3…)1/m-1)1/m
Число m ввести с клавиатуры.
Контрольные вопросы.
1. Каково назначение режимов Compile и Tools системы Turbo?
2. Какие команды имеются в режимах Compile и Tools?
3. Как записывается и как работает оператор FOR?
4. Для организации каких циклов применим оператор FOR?
5. В чем отличие оператора WHILE от оператора REPEAT?
6. Как программируются циклические алгоритмы с явно заданным числом повторений цикла?ign='left' width='50%'>
Дата добавления: 2015-05-10; просмотров: 157; Опубликованный материал нарушает авторские права?.