
- •Введение
- •Глава 1. Структурное программирование
- •1.1 Основные определения
- •1.2 Три основных действия
- •1.2.1 Последовательность
- •1.2.2 Выбор
- •1.2.3 Цикл
- •1.3. Структурный подход к решению задач
- •Задание
- •1.4. Организация хранения и обработки данных
- •1.4.1 Записи и списки
- •Задание
- •1.4.2 Очередь
- •Задание
- •1.4.3 Стек
- •Задание
- •1.5 Структурное программирование.
- •2. Программирование на языке паскаль
- •2.1. Краткая история эвм и языки программирования
- •Задание
- •2.2. Интегрированная среда borland pascal
- •2.2.1. Краткая характеристика. Запуск программы
- •2.1.2. Основы работы в редакторе Открытие нового окна
- •Завершение работы со средой
- •Задание
- •«Горячие» клавиши интегрированной среды
- •2.3. Структура программы
- •2.3.1.Основные положения
- •2.3.2. Понятие идентификатора
- •2.3.3. Первая программа
- •2.3.4. Описание подпрограммы (процедуры).
- •2.3.4. Строковый тип данных
- •2.3.5. Процедуры ввода и вывода данных
- •Задание
- •2.4. Программа калькулятор.
- •2.4.1. Тип целые и вещественный.
- •2.4.2. Переменные вещественного типа
- •Задание
- •2.5. Улучшенный калькулятор
- •2.5.1. Операторы выбора
- •Булевские (логические) операции
- •Операции отношения
- •Оператор if … then
- •Оператор case
- •2.5.2. Основные отличия применения операторов выбора. Перечисляемый тип. Интервальный тип.
- •Задание
- •2.6. Улучшенный каЛьКулятор (продолжение)
- •2.6.1. Оператор цикла с постусловием (проверка на ноль)
- •2.6.2. Оператор цикла с предусловием
- •2.6.3. Оператор цикла со счетчиком (параметром)
- •Задание
- •2.7. Переменные типа массив
- •2.7.1. Виды массивов
- •2.7.2.Описание массива
- •2.7.3.Нахождение максимального элемента в массиве
- •Задание
- •2.7.4. Строковая переменная (продолжение)
- •Задание
- •2.7.5. Строковая переменная как массив
- •Мама мыла раму
- •Задание
- •2.7.6. Описание функции
- •Задание
1.2.3 Цикл
Очень часто для того, чтобы получить результат, нужно выполнить некоторые действия несколько раз. Чтобы забить гвоздь надо несколько раз ударить по нему молотком. Чтобы дойти от одного классного кабинета до другого надо сделать некоторое количество шагов.
Цикл: Для того, чтобы произвести действие А, необходимо N раз выполнить поддействие А1.
Г
рафически
используя блок-схему, это можно представить
следующим образом:
Рис 1.7
Здесь число N показывает количество выполнений поддействия А1 для выполнения основного действия А. Если заранее это количество повторений известно, то говорят, что мы имеем дело с циклом с фиксированным количеством действий. Исторически, как и для видов действий выбора, принято разделять циклические действия, которые мы выполняем на три основных вида:
А) Цикл с фиксированным количеством действий.
К этой группе относят циклические действия, в которых нам заранее известно количество повторений. Например, на уроке физкультуры учитель предложил вам пробежать три круга по стадиону. Для того чтобы сделать это, вам придется пробежать один круг три раза. Другой пример: в домашнем задании по математике вам предлагается решить пять задач. Это значит, что вы должны пять раз повторить действие «решить задачу». Вы сами можете вспомнить много примеров такого вида действий из своей жизни. Но в большинстве случаев нам заранее неизвестно, сколько раз надо повторить поддействие, чтобы выполнить основное действие. Например: Действие "выучить стихотворение". Для того, чтобы выучить стихотворение, можно один раз его прочитать, и запомнить. А можно читать стихотворение и два раза, и три, и четыре, то есть в данном случае количество повторений заранее неизвестно.
б) Цикл с предусловием.
К этой группе относят циклические действия, в которых нам заранее неизвестно количество повторений и которые перед выполнением действия требуют проверки выполнения какого-либо условия. Например, Вы собираетесь поесть суп. Вам заранее неизвестно, сколько раз нужно зачерпнуть ложкой суп из тарелки, чтобы полностью его съесть. Вы будете брать ложкой суп до тех пор, пока тарелка не опустеет. Но если тарелка была изначально пуста, сможете ли Вы взять суп ложкой хоть один раз? Я думаю, нет. Отсюда следует интересная особенность данного вида цикла. Он может выполняться ноль раз!
Рис 1.8
в) Цикл с постусловием.
К этой группе также относят циклические действия, в которых нам заранее неизвестно количество повторений, но, в отличие от предыдущего цикла, где перед выполнением действия требуют проверки выполнения какого-либо условия, проверка на выполнение какого либо условия происходит только после выполнения действия.
Р
ис
1.9
Чтобы лучше уяснить принцип цикла с постусловием, представьте себе сито, в котором находятся хрупкие шарики, размер которых больше, чем размер ячеек в сите. Вы подбрасываете эти шарики и, в процессе соударений, их размер уменьшается. Это будет продолжаться до тех пор, пока размер шариков станет таким, что они проскочат сквозь ячейки сита. То есть выполнится условие - диаметр шариков равен размеру отверстия в сите.
Основное отличие цикла с предусловием от цикла с постусловием в том, что в первом виде цикла действие выполняется, когда УСЛОВИЕ=ИСТИНА. Во втором виде цикла - если УСЛОВИЕ=ИСТИНА - выполнение действий прекращается.
Дополнительно отметим, что цикл с фиксированным количеством действий является частным случаем цикла с предусловием. В самом деле, если предложили пробежать три круга по стадиону, а Вы уже пробежали три или более кругов, то вправе больше не бежать.
Задание
Приведите пример цикла с фиксированным количеством действий.
Приведите пример цикла с предусловием.
Приведите пример цикла с постусловием.
В чем основное отличие цикла с предусловием, от цикла с постусловием.
Какое минимальное количество может выполняться цикл с предусловием.
Какое минимальное количество может выполняться цикл с постусловием.