Программирование циклических алгоритмов с заданным числом повторений
Первая форма счетного оператора цикла позволяет наращивать параметр цикла на единицу (+1):
FOR <параметр цикла>:= <min значение> TO <max значение> DO <оператор>;
(Для) (увеличивая к) (выполнять)
где <параметр цикла> -это переменная целого либо любого порядкового типа; <min, max значения>-это начальное и конечное значения параметра цикла (выражения того же типа, что и параметр цикла).
Вторая форма позволяет уменьшать значение параметра цикла на единицу (-1):
FOR <параметр цикла>:= <max знач.> DOWNTO <min знач.> DO <оператор>; (Для) (уменьшая к) (делать)
Пример 1. Вычислить сумму элементов s=1+1/4+1/9+1/16+... .
На основе анализа изменения параметра знаменателя определим алгоритм решения задачи и напишем программу:
PROGRAM suma;
VAR s, r: REAL;
i, N: INTEGER;
BEGIN
s:=0;
WRITELN('введите N');
READ(N);
FOR I:=1 TO N DO
begin
r:=1/sqr(i);
s:=s+r;
end;
WRITELN('Сумма=',s:6:2);
END.
Пример 2. Вычислить значения двух функций F1(x)=tg(x) и
F2(x)=sin(x) в n точках, равномерно распределенных на интервале a ≤ x ≤ b, где a=-π/4, b=π.
Для реализации данной задачи разработана следующая программа:
Program Lab3;
Const а = -pi/4; b = pi;
Var F1, F2, x, dx: real; {dx - шаг изменения х}
i, n: integer; {i - пеpеменная цикла}
Begin
writeln ('введите число точек N');
read(n);
dx: = abs(b-a)/(n-1);
x:=a;
writeln (' _____________________________');
writeln ('| I | X | F1 | F2 |');
writeln ('|---|--------------|------------|------------|');
for i:=1 to n do {опеpатоp цикла}
begin
F2:=sin(x);
F1:=F2/cos(x); {вычисление: tg x}
writeln('|', i:3,' |', x:8:3,'|', f1:8:4,' |', f2:8:4,' |');
x:=x+dx;
end;
writeln('|________________________|);
End.
Задание 2 (программа 3_2)
Вычислить значения двух функций в n равномерно распределенных в диапазо-
№ п/п | a | b | n | F1(х) | F2(х) |
1 2 3 4 5 6 7 8 9 10 11 12
| 0 1 -1 -2 0 - -1 -4 1 1 0 -
| 2 2 5 5 3 4 3 4 2
| 10 12 15 14 16 12 10 12 15 10 15 18 | sin x cos x 1+2x+5 4e-|x|-1 | x+10|5 2 sin 2x +1 2-cos x 2-x/100 x3e2x 1/(1+) 5-3 cos x |sinx|+|cosx|
| sin x + cos x -1 (x-1)3 cos x e-(x+5) (x+5)3(1+sin2x) 20/(1+x2) ex sin x x ln2 x 2x/(1-4x) |sin x| - |cos x|
|
Лабораторная работа 4
- Алгоритмизация и программирование
- Варианты домашних заданий
- Основы программирования в среде Турбо Паскаля.
- Приоритет операций в выражении
- Задание 1 (программа 1_1)
- Программирование разветвленных алгоритмов. Операторы передачи управления
- Программирование циклических алгоритмов с заданным числом повторений
- Программирование циклических алгоритмов с предусловием
- Программирование циклических алгоритмов с постусловием
- Модифицировать программу 3_2 для вычисления функций f1(X) и f2 (X) с применением оператора цикла с постусловием. Выполнить ее и сравнить результа-ты с полученными ранее.
- Программирование алгоритмов обработки одномерных массивов
- Задание 1
- Порядок выполнения лабораторных работ
- Сообщение об ошибках Сообщения об ошибках периода компиляции
- Сообщения об ошибках периода исполнения Ошибки операционной системы dos
- Ошибки вода - вывода
- Критические ошибки