
- •Алгоритмизация и программирование на языке Pascal
- •1 Курса отделения спо
- •Урок 1 Язык программирования Паскаль
- •Урок 2. Типы данных: константы и переменные
- •Урок 3. Решение задач
- •Урок 4, 5. Среда программирования Turbo Pascal
- •Урок 6. Решение задач
- •Урок 7. Этапы решения задач на компьютере
- •Математическое или информационное моделирование.
- •Алгоритмы
- •Типы алгоритмов
- •Способы задания алгоритмов
- •Урок 8, 9, 10. Решение задач
- •Урок 11. Контрольная работа №1 Урок 12, 13. Разветвляющиеся алгоритмы.
- •Урок 14, 15, 16, 17, 18. Решение задач
- •Урок 19. Контрольная работа №2 Урок 20, 21, 22. Циклические алгоритмы.
- •Урок 23 - 33. Решение задач
- •Урок 34. Контрольная работа №3 Урок 35, 36. Массивы
- •Урок 37-49. Решение задач
- •Урок 50. Контрольная работа №4 Урок 51. Строки
- •Урок 52 - 54. Решение задач
- •Урок 55. Контрольная работа №5 Урок 56-60. Решение задач Урок 61-62. Итоговая контрольная работа
Урок 19. Контрольная работа №2 Урок 20, 21, 22. Циклические алгоритмы.
Организация циклов в Паскале
Циклический алгоритм – алгоритм, содержащий повторяющиеся действия, - цикл. Цикл состоит из условий и тела цикла.
Условие цикла – логическое выражение, от значения которого зависит принятие решения о следующем выполнении цикла.
Тело цикла – набор действий (команд, операторов), которые выполняются несколько раз.
Параметр цикла – переменная, которая меняется от известного начального до известного конечного значения с известным шагом.
Существует несколько видов циклов: пока, до, для. В Паскале им соответствуют операторы while, repeat и for.
Цикл пока
|
Оператор while
while условие do begin тело цикла; end; |
Перед каждым выполнением тела цикла вычисляется значение выражения условия. Если результат верен, тело цикла выполняется и снова вычисляется выражение условия. Если результат неверен, происходит выход из цикла и переход к следующему после цикла оператору.
Ц
|
Оператор repeat
repeat тело цикла; until условие; |
Сначала выполняется тело цикла, затем проверяется условие выхода из цикла. Именно поэтому цикл, организованный с помощью оператора repeat, выполнится хотя бы один раз.
Цикл для
|
Оператор for Прямой формат: for i:=n1 to n2 do begin тело цикла; end;
Обратный формат: for i:=n1 downto n2 do begin тело цикла; end; |
i – переменная – параметр цикла; n1 и n2 – выражения, определяющие соответственно начальное и конечное значение параметра цикла.
Параметр цикла принимает начальное значение и затем сравнивается с конечным значением. Если конечное значение меньше значения параметра цикла, то происходит выполнение тела цикла, иначе цикл завершается и выполняется следующий за циклом оператор. Шаг изменения параметра цикла равен 1(to)или -1(downto).
Оператор for обеспечивает выполнение тела цикла до тех пор, пока не будут перебраны все значения параметра цикла от начального до конечного. Начальное и конечное значения диапазона должны иметь тип, совместимый с типом параметра цикла. При этом допустим любой скалярный тип, кроме вещественного. В теле цикла запрещается явное изменение значения параметра цикла.
Пример: Программа суммирует n-е количество вводимых с клавиатуры чисел.
С – параметр цикла (подсчитывает количество введенных чисел); n – количество чисел;
x – вводимое число; S – сумма чисел.
|
program DemoWhile; var c, n: integer; x, s: real; begin write (‘Введите к-во чисел n=’); readln (n); c:=0; s:=0; while c<=n do begin c:=c+1; write (c,’-е число:’); readln (x); s:=s+x; end; write (‘Сумма чисел =’,s); end. |
|
program DemoRepeat; uses wincrt; var c, n: integer; x, s: real; begin write (‘Введите к-во чисел n=’); readln (n); c:=0; s:=0; repeat c:=c+1; write (c,’-е число:’); readln (x); s:=s+x; until c=n; write (‘Сумма чисел =’,s); end. |
|
program DemoFor; uses wincrt; var c, n: integer; x, s: real; begin write (‘Введите к-во чисел n=’); readln (n); s:=0; for c:=1 to n do begin write (c,’-е число:’); readln (x); s:=s+x; end; write (‘Сумма чисел =’,s); end. |
Упражнения
Загрузите Turbo Pascal, введите текст программы, откомпилируйте и проверьте ее действие.
Напишите программу, которая 10 раз печатает ваше имя.
Составьте программу, выводящую на экран все числа первой сотни, оканчивающиеся на 5.
Программа запрашивает возраст, а затем печатает на экране «Здравствуй!» столько раз, сколько лет введено.
Составьте программу для вывода на экран таблицы значений функции:
а)
у = х
с шагом 0,2;
б)
у = sin
x,
x
с шагом
;
в)
у =
с шагом h;
г)
у=3х2+х-4,
х
[a,
b]
с шагом 0,1;
д)
у=
,
х
[0;
5] с шагом 0,5.