Циклический вычислительный процесс. (Лабораторная работа 4)

Содержание

Слайд 2

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

Циклический вычислительный процесс
Вычислительные процессы называют циклическими, если отдельные участки вычислений многократно

повторяются при изменении исходных данных
Например:
Вычислить
где
(X меняется от 0 до 100 с шагом 1)
Слайд 3

Цикл (тело цикла) Переменная цикла Начальное значение переменной цикла Изменение значения

Цикл (тело цикла)
Переменная цикла
Начальное значение переменной цикла
Изменение значения переменной цикла
Проверка

условия выполнения цикла
Шаг изменения переменной цикла

Основные понятия

Слайд 4

Оператор цикла WHILE B DO P; где B - условие (отношение),

Оператор цикла

WHILE B DO P;
где B - условие (отношение),
P -

любой оператор (в том числе и составной оператор)
Выполняется оператор цикла так:
проверяется условие B, и если оно соблюдается, то выполняется Р,
затем вновь проверяется условие B и т.д.
как только на очередном шаге окажется, что условие B не соблюдается, то выполнение оператора цикла прекратится.
Слайд 5

Оператор цикла REPEAT P1; P2; P3; … UNTIL B; где B

Оператор цикла

REPEAT
P1;
P2;
P3;

UNTIL B;
где B - условие (отношение),


P1, P2, P3… - любые операторы (тело цикла)
Работает оператор цикла так:
выполняется P1, P2, P3…,
проверяется условие B, и если оно истинно, то выполнение оператора цикла прекратится,
если условие B не соблюдается, то вновь выполняются P1, P2, P3 и т.д.

P1, P2, P3…

В

Слайд 6

х=х0,xk,h X:=X0; While X begin оператор1; оператор2; … X:=X+H; end; X:=X0;

х=х0,xk,h

X:=X0; While X<=XK do
begin оператор1; оператор2; … X:=X+H;
end;

X:=X0; Repeat
оператор1; оператор2;

… X:=X+H;
Until X>XK;

Структуры повторения в схемах алгоритмов

«Выполнять процедуру Р при изменении исходной переменной X от начального значения Хо до конечного значения Xk с шагом h»
P

Слайд 7

Переменная цикла Хо, X1 = Хо + h, Х2 = X1+

Переменная цикла

Хо,
X1 = Хо + h,
Х2 = X1+ h,
...,


Xi = Xi-1, + h..,
Xk = Xk-1 + h
Аргумент должен последовательно принимать значения в определенном диапазоне
Хо - начальное значение,
Хк - конечное значение,
каждое значение аргумента больше предыдущего на постоянную величину h,
h называется шагом изменения аргумента
Слайд 8

Разработка циклической программы Выполнил: студент Иванов А., 15-ВТ Цель работы: получение

Разработка циклической программы

Выполнил: студент Иванов А., 15-ВТ
Цель работы: получение практических навыков

при алгоритмизации и программировании циклических процессов обработки данных (использования структур повторения в программах)
Задание:
Модифицировать полученную при выполнении работы № 3 программу таким образом, чтобы автоматически осуществлялись многократные решения задачи при изменении одного из исходных данных в заданном диапазоне (исходная переменная, значение которой должно изменяться, определяется студентом самостоятельно). Результаты решения должны выводиться для каждого значения изменяемого аргумента – в виде таблицы (форма таблицы согласовывается с преподавателем).
Слайд 9

Циклический вычислительный процесс Исходные данные для 2-ой и 3-ей работы: значения

Циклический вычислительный процесс

Исходные данные для 2-ой и 3-ей работы: значения сторон

a и b
Исходные данные для 4-ой:
значение стороны a,
начальное и конечное значения стороны b: b0 и bк
Шаг изменения h вычисляется:
Слайд 10

Схема алгоритма предыдущей работы

Схема алгоритма предыдущей работы

Слайд 11

Схема алгоритма лабораторной работы №4

Схема алгоритма лабораторной работы №4

Слайд 12

Схема алгоритма лабораторной работы №4 нет

Схема алгоритма лабораторной работы №4

нет

Слайд 13

Текст программы program labrab4 ; {Иванов А., 15-ВТ, лаб. раб. 4,

Текст программы

program labrab4 ;
{Иванов А., 15-ВТ, лаб. раб. 4, вариант

28}
var a, b, s,b0,bk,h: real;
begin
writeln ('Введите значения стороны a ');
readln (a);
if (a<=0) then
writeln (' введено неверное значение стороны a‘)
else
begin {1}
writeln ('Введите начальное и конечное значения стороны b ');
readln (b0,bk);
if (bk<=0) then
writeln (' введено неверное значение стороны b‘)
else
begin {2}
h:=(bk-b0)/16;
Слайд 14

Текст программы b:=b0; WHILE (b Begin {3} write (' b= ',b:7:2);

Текст программы

b:=b0;
WHILE (b<=bk) do
Begin {3}
write (' b=

',b:7:2);
if (b<=0) then writeln (' b<=0‘)
else
begin {4}
s:=a*b;
write (' площадь = ' ,s:7:2);
If (a>b) then writeln (' сторона a больше b ' )
else
if (a else writeln (' сторона a равна b ' );
end; {4}
b:=b+h;
end; {3}
end; {2}
end; {1}
end.
Слайд 15

Вывод результата write (' b= ',b:7:2); if (b write (' площадь

Вывод результата

write (' b= ',b:7:2); if (b<=0) then writeln (' b<=0‘)
write

(' площадь = ' ,s:7:2);
If (a>b) then writeln (' сторона a больше b ' )
else
if (a else writeln (' сторона a равна b ' );
Слайд 16

Вывод результата

Вывод результата

Слайд 17

Вывод результата в виде таблицы

Вывод результата в виде таблицы

Слайд 18

program labrab4 ; {Иванов А., 15-ВТ, лаб. раб. 4, вариант 28}


program labrab4 ;
{Иванов А., 15-ВТ, лаб. раб. 4, вариант 28}


var a, b, s,b0,bk,h: real;
begin
writeln ('Введите значения стороны a ');
readln (a);
if (a<=0) then
writeln (' введены неверные данные‘)
else
begin {1}
writeln ('Введите начальное и конечное значения стороны b ');
readln (b0,bk);
if (bk<=0) then
writeln (' введены неверные данные‘)
else
begin {2}
h:=(bk-b0)/16;
b:=b0;
writeln ('______________________________________________');
writeln ('!Сторона В!Площадь! Соотношение сторон А и В!');
writeln ('______________________________________________');
Слайд 19

WHILE (b Begin {3} write ('! ', b:9:2, '!'); if (b

WHILE (b<=bk) do
Begin {3}
write ('! ', b:9:2, '!');
if (b<=0) then

writeln (' b<=0 ! !‘)
else
begin {4}
s:=a*b;
write (s:7:2, '!');
If (a>b) then writeln (' сторона a больше b ' :24,'!')
else
if (a else writeln (' сторона a равна b ' :24,'!');
end; {4}
b:=b+h;
end; {3}
end; {2}
end; {1}
writeln ('_____________________________________________');
end.
Слайд 20

Таблица кодов ASCII

Таблица кодов ASCII

Слайд 21

Таблица кодов ASCII

Таблица кодов ASCII