Создать программу и сохранить под именем program8_Фамилия.

Практическая работа № 12

Тема: Решение задач в среде программирования Pascal

 

Цель урока:

1. изучить циклические конструкции языка программирования Pascal, позволяющие работать с простыми и составными типами данных;

2. закрепить теоретические знания и практические навыки при написании программ на языке программирования Pascal.

 

Ход выполнения практической работы

Операторы DIV и MOD

В Паскале за целочисленное деление отвечаетоператор div.

z:= x div y

x - число , которое будем делить на y (делимое)
y - число , на которое будем делить число x (делитель)
z - результат целочисленного деления (целочисленное частное)
Например, z := 55 div 6 z = 9.

 

Делении с остатком - оператор mod.

z := x mod y

x - число , которое будем делить на y (делимое)
y - число , на которое будем делить число x (делитель)
z - остаток
Например, z := 55 mod 6 z=1 .

Пример условия, которое проверяет кратность, где v - это число, проверяемое на кратность по числу m:

if v mod m = 0 then

Например, чтобы проверить, является ли 40 кратным 4, используем оператор mod с условием и получим:

if 40 mod 4 = 0 then

Циклические операторы

Повторение действий в алгоритмах называется циклом.

Алгоритм, который предусматривает многократное повторение одного и того же действия, называется циклическим. В циклические алгоритмы входит последовательность команд, выполняемая многократно. Такая последовательность команд называется телом цикла.

В языке Pascal существует три типа циклических конструкций:

For, или цикл с параметром

While, или цикл с предусловием

Repeat, или цикл с постусловием

А) Цикл с параметром

 

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

for <параметр цикла>:=<начало> to/downto <конец> do <оператор>;

для до делать

параметр цикла - числовая переменная типа integer

начало, конец - арифметическое выражение

to – используется, когда начало меньше конца

downto – используется, когда начало больше конца

оператор - тело цикла, любой оператор, в том числе и составной

Задача 1. Сто раз написать свое имя на экране в строчку.

Создать программу и сохранить под именем program7_Фамилия.

Программа:


Б) Цикл с предусловием

Нужно исправить неверно составленный алгоритм:

На перемене школьник зашел в столовую съесть пирожков, и некто посоветовал ему воспользоваться алгоритмом

1. Пока не исчезнет чувство голода повторять:

2. Купить пирожок

3. Конец цикла

4. Съесть пирожок.

Какие строки алгоритма надо поменять местами, чтобы школьник ушел сытым?

Цикл ПОКА

пока <условие>
выполнять
<тело цикла>

Выполнение цикла ПОКА начинается с проверки условия его окончания. Эту разновидность цикла называют циклом с предусловием.

Задача 2. Распечатать квадраты чисел, находящихся в диапазоне от 0 до 1 с шагом 0,2.

Создать программу и сохранить под именем program8_Фамилия.


В) Цикл с постусловием

 

 

Цикл ДО

выполнять
<тело цикла >
до <условие>

В этом цикле условие проверяется после выполнения тела цикла. Цикл будет повторяться до тех пор, пока проверка этого условия будет давать результат “ложь”(false), то есть пока условие не выполнено. Даже если условие сразу оказывается истинным, цикл выполнится хотя бы один раз. Вот как это тип цикла реализуется на языке Паскаль:

Repeat < оператор 1 >;
< оператор 2 >;
< оператор n >;
until <условие >

 

Задача 3. Составить программу планирования закупки товара в магазине на сумму, не превышающую заданную величину.

Обозначим через:

с – цену товара;
k – количество товара;
р – заданную предельную величину;
s – начальное значение общей стоимости покупки;

Начальное значение (s) = 0, значение предельной суммы (р) – вводится с клавиатуры. Необходимо повторять запрос цены и количества выбранного товара, вычислять его стоимость и выводить результат на экран до тех пор, пока она не превысит предельную сумму, в этом случае на экран нужно вывести сообщение о превышении.

 

Блок-схема для задачи