![](/user_photo/2706_HbeT2.jpg)
- •Федеральное агенство по образованию российской федерации
- •1. Основные категории и понятия информатики
- •Предмет информатики как науки
- •1.2. Информация: структура, форма, измерение
- •2. Техническое и программное обеспечение пэвм
- •2.1. Структура аппаратных средств пэвм
- •2.2. Программное обеспечение пэвм
- •3. Основы алгоритмизации
- •Этапы разработки программ
- •3.2.Формы представления алгоритмов
- •Действие 1
- •Действие 2
- •Классификация и примеры алгоритмических структур
- •3.2.1. Алгоритм линейной структуры.
- •3.2.2. Алгоритм разветвляющейся структуры.
- •Да нет да да Рис 3.11
- •3.2.3. Алгоритмы циклической структуры.
- •4.2. Структура программы на языке Паскаль
- •4.3. Скалярные стандартные типы данных
- •4.4. Скалярные, пользовательские типы данных
- •5. Структурные типы данных
- •Массивы
- •5.3. Записи
- •5.4. Записи с вариантами
- •Множества
- •5.6.Файлы
- •6. Операции над данными скалярных типов. Выражения
- •7. Операторы языка Паскаль
- •7.1. Простые операторы
- •7.2. Структурные операторы
- •Оператор 2
- •8. Примеры программ на языке Паскаль
- •8.1. Пример 1. Арифметические выражения. Оператор присваивания
- •Пример 2. Условные операторы
- •Ввод чисел х, а
- •8.3. Пример 3. Программа обработки одномерного массива
- •8.4. Пример 4. Программа обработки двумерного массива
- •True False True False False
- •8.5. Пример 5. Программа обработки символьных строк
- •8.6. Пример 6. Программа обработки двумерного массива с вводом элементов матрицы из текстового файла
- •9.Разработка программ сложной структуры
- •9.1. Процедуры и функции
- •9.2. Область действия идентификаторов при использовании процедур и функций. Локальные и глобальные переменные
- •9.3. Передача данных в подпрограмму с помощью параметров. Формальные и фактические параметры
- •9.4. Использование процедур и функций
- •True False Рис. 9.4
- •9.5. Массивы – параметры процедур и функций
- •True False True False Рис. 9.7
- •True False True False True False Рис 9.9
- •9.6. Рекурсивные процедуры и функции
- •True False Рис. 9.10 True False
- •True False Рис. 9.12
- •9.7. Модули
- •10. Динамические структуры данных
- •Основные определения
- •10.2. Объявление и создание динамических структур данных. Указатели
- •Операции над указателями
- •Программа создания и обработки линейного списка
- •Приложение. Контрольные вопросы
- •Литература
7.2. Структурные операторы
Составной оператор объединяет группу операторов в единое целое, после чего они рассматриваются компилятором как один оператор.
Составной оператор имеет следующий синтаксис:
Begin<оператор 1>; <оператор 2>; …<операторn>end
Составной оператор используется в тех случаях, когда в программе допускается написать один оператор, а требуется выполнить группу операторов. Составной оператор соответствует алгоритмической структуре “Следование” (см. рис. 7.1).
К условным операторам относятся операторы if и case. Условный оператор if обеспечивает выбор из двух альтернатив в зависимости от условия и имеет следующий синтаксис:
If <логическое выражение> then <оператор 1> else <оператор 2>;
Оператор 1 выполняется, если значение логического выражения – True, а оператор 2 выполняется, если значение логического выражения – False.
Оператор If допускается в неполной форме:
If <логическое выражение> then <оператор >;
Если после then и else необходимо выполнить группу операторов, то они должны быть объединены в составной оператор, например,
If A>B then begin X:=A+B; Y:=A*B end;
Условный оператор соответствует алгоритмической структуре “Разветвление”, блок-схема которой на рис. 7.2.
Оператор
1
Оператор 2
……………..
Оператор
n
Рис.
7.1
Рис.
7.2
Оператор выбора case обеспечивает возможность выполнения одного из нескольких действий и имеет следующий синтаксис:
Case <выражение> of
<список констант 1>: <оператор 1>;
<список констант 2>: <оператор 2>;
……
<список констант n>: <оператор n>
else <оператор >
end;
Перед else точка с запятой не ставится. Ветвь else может отсутствовать.
Список констант может содержать одну константу; несколько констант, разделенных запятыми; или интервал значений <значение 1>.. <значение 2>.
Пример.
Var Symbol: Char;
…………………….
Begin
…………………….
Case Symbol of
‘0’..’9’: writeln(‘Это цифра’);
‘A’..’Z’: writeln(‘Это прописная буква’);
‘a’..’z’: writeln(‘Это строчная буква’);
‘=’: writeln(‘Это знак операции сравнения’)
else writeln(‘другой символ’);
end;
Рассмотрим операторы цикла языка Паскаль. Язык Паскаль поддерживает три конструкции цикла:
оператор цикла с предусловием while-do;
оператор цикла с постусловием repeat-until;
оператор цикла с параметром for.
Оператор while-doимеет следующий синтаксис:
While < логическое выражение >
do <оператор>
или
While < логическое выражение >
begin
<операторы>
end
Блок-схема оператора цикла представлена на рис. 7.3. Тело цикла – это оператор или составной оператор. В операторе while-do тело цикла может не выполниться ни разу. Логическое выражение – это условие продолжения цикла. Проверка условия продолжения цикла выполняется перед очередной итерацией. Итерация – это выполнение операторов тела цикла.
Рис.
7.3
Оператор цикла repeat-until имеет следующий синтаксис:
Repeat
<оператор 1>
<оператор 2>
….
<оператор n>
until <логическое выражение>
В операторе repeat-until не требуется использование составного оператора. Блок-схема оператора repeat-until показана на рис. 7.4, где логическое выражение является условием выхода из цикла. Операторы тела цикла repeat-until выполняются хотя бы один раз. Проверка условия выхода из цикла происходит после очередной итерации.
Оператор цикла с параметром используется в тех случаях, когда точно известно число итераций, отсчет числа итераций выполняется с помощью управляющей переменной, которая называется параметром цикла. Перед выполнением цикла известны начальное N1 и конечное N2 значение параметра цикла. Шаг изменения параметра равен 1.
Если N1<N2 (см. рис. 7.5) , то оператор цикла с параметром имеет следующий синтаксис:
For <параметр цикла>:=<выражение N1> to <выражение N2> do <оператор или составной оператор>
Если N1>N2 (см. рис. 7.6) , то оператор цикла с параметром имеет следующий синтаксис:
For <параметр цикла>:=<выражение N1> downto <выражение N2> do <оператор или составной оператор>
В Паскале оператор цикла с параметром имеет два ограничения:
Шаг изменения параметра может быть равен только 1, если используется ключевое слово to, или –1,если используется ключевое слово downto.
Переменная – параметр цикла должна быть только порядкового типа и должна быть локальной.
Рис.
7.4
Рис.
7.5
Рис.
7.6