
- •Лекция 22
- •1. Введение. Понятие.
- •2. Виды языков программирования:
- •3. Уровни языков программирования:
- •4. Краткая история создания языка программирования
- •5. Особенности:
- •6. Основные элементы языка программирования Turbo Pascal.
- •Среда программирования Turbo Pascal.
- •9. Состав среды программирования Turbo Pascal.
- •10. Данные и величины
- •11. Типология данных. Характеристика основных типов данных.
- •Минимально необходимый набор основных типов данных.
- •Классификация данных по структуре.
- •Характеристики основных типов данных.
- •12. Элементы окна редактирования интегрированной среды программирования тр 7.0.
- •Состав окна редактирования интегрированной среды программирования тр 7.0.
- •13. Основные команды.
- •14. Структура программы.
- •15. Оператор ввода
- •16. Оператор вывода
- •17. Выражения. Виды выражений.
- •Виды выражений:
- •18. Правила записи арифметических операций.
- •19. Встроенные математические функции.
- •Оператор безусловного перехода.
- •Правила использования оператора безусловного перехода (go to):
- •21. Пустой оператор.
- •22. Оператор условного перехода.
- •1. Полная форма записи оператора ветвления:
- •Цикл с предусловием.
- •25. Цикл с постусловием.
- •26. Цикл с параметром.
- •27. Понятие массива.
- •28. Оператор описания массивов.
- •29.Одномерные массивы.
- •30. Двумерный массив.
- •31. Формирование массивов.
- •33. Вывод массива.
- •34. Понятие символьных и строковых переменных.
- •35. Строковые выражения. Операции над строками.
- •3. Строковые процедуры и функции
Цикл с предусловием.
Оператор while (пока) часто называют оператором цикла с предусловием за то, что проверка условия выполнения тела цикла производится в самом начале оператора. Формат записи:
while <условие продолжения повторений> do
<тело цикла>;
Условие - булевское выражение,
Тело цикла - простой или составной оператор.
Работа оператора:
Перед каждым выполнением тела цикла вычисляется значение выражения условия:
Если результат равен True, то тело цикла выполняется и снова вычисляется выражение условия.
Если результат равен False, то происходит выход из цикла и переход к первому после while оператору.
Пример 1: Произведите суммирование 10 произвольно введённых целых чисел.
Program DemoWhile;
Const Limit =10;
Var Count, Item, Sum: integer;
Begin
Count: = 0; {счётчик чисел}
Sum: = 0; {сумма чисел}
While (Count < Limit) do {условие выполнения цикла}
Begin
Count: = Count + 1;
Write (‘Введите ’, Count, ’- е целое число: ’);
Readln(Item); {Ввод очередного числа с клавиатуры}
Sum: = Sum + Item;
End;
Writeln(‘Сумма введённых чисел равна ’, Sum);
Readln;
End.
В данном примере в разделе описания констант описана константа Limit =10, задающая ограничение на количество вводимых чисел. В разделе описания переменных описаны переменные Count, Item, Sum целочисленного типа.
Пример 2. Составить таблицу значений функции y(x) = ax2 + bx - d, где значения переменной x являются числами из натурального (целые положительные числа) ряда.
Значение переменных a, b, d - неизвестны, поэтому их необходимо ввести. Т.к. неизвестно последнее значение переменной х, обозначим его за N. Шаг изменения также неизвестен, поэтому по умолчанию примем значение шага равным 1.
Т.е. x (1; N), с = 1 Program Function;
x0 = 1 var a, b, d: real;
x1 = x0 + 1 x: integer;
x2 = x1 + 1 begin
………… writeln (‘Введите значение переменных a,b,d’);
xn = xn-1 + 1 readln (a, b, d);
writeln (‘Введите конечное значение параметра цикла N’);
readln (N);
x:=1;
while (x < N) do
begin
Y: = a * SQR(x) + b * x - d;
writeln (‘Y(x) = ’, Y);
end;
readln;
end.
25. Цикл с постусловием.
Оператор повтора repeat аналогичен оператору while.
Отличие:
условие проверяется после очередного выполнения операторов тела цикла, что гарантирует хотя бы однократное выполнение цикла,
критерием прекращения цикла является равенство выражение константе True.
За это цикл repeat называют циклом с постусловием. Или циклом «ДО», так как он прекращает выполнение, как только значение выражения условия, записанного после слова until, равно True (истина). Оператор повтора repeat состоит из заголовка repeat, тела и условия окончания until. Формат записи:
Repeat
<оператор>;
…
<оператор>;
until <условие окончания цикла>;
Операторы, заключённые между словами repeat и until, является телом цикла. Вначале выполняется тело цикла, затем проверяется условие выхода из цикла. Именно поэтому цикл, организованный с помощью оператора repeat, в любом случае выполняется хотя бы один раз. Если результат булевского выражения равен False, то тело цикла активизируется ещё раз; если результат True, происходит выход из цикла.
При программировании операторов тела цикла следует обеспечить влияние по крайней мере одного из операторов тела цикла на значение условия, иначе цикл будет выполняться бесконечно.
Пример 3: Введите и суммируйте любое количество целочисленных значений.
Если введено значение 999, то на экран выводится результат суммирования.
Program Summa;
var x: integer;
S: real;
begin
S: = 0
repeat
write (‘Введите значение x ’);
readln (x);
if x < > 999 then S:= S + x;
until x = 999;
writeln (‘Сумма введенных чисел Summa =’, S);
readln;
end.