- •Министерство образования Российской Федерации
- •Информатика
- •Самара 1999
- •Компоненты
- •1. Полоса меню и подменю.
- •1.1. Выбор команд меню с помощью клавиш.
- •1.2. Выбор команд меню с помощью мышки.
- •1.3. Сокращения
- •Общие горячие клавиши
- •Горячие клавиши меню
- •Горячие клавиши редактирования
- •Горячие клавиши управления окнами
- •Горячие клавиши встроенной справочной информации
- •Горячие клавиши отладки/запуска
- •2. Окна TurboPascal
- •2.1. Управление окнами
- •2.2. Строка статуса
- •3. Диалоговые окна
- •3.1. Зависимые и независимые кнопки
- •3.2. Окна ввода и списки
- •4. Создание Вашей первой программы
- •4.1. Анализ Вашей первой программы
- •4.2. Сохранение Вашей первой программы
- •4.3. Компиляция Вашей первой программы
- •4.4. Выполнение Вашей первой программы
- •4.5. Проверка файлов, которые Вы создали
- •5. Ваша вторая программа
- •5.1. Отладка Вашей второй программы
- •5.2. Использование окна Watch
- •5.3. Исправление Вашей второй программы
- •Программирование на turbo pascal
- •1. Элементы программирования
- •2.1. Целые числа
- •2.2. Вещественный тип данных
- •2.3. Символьные и строковые типы данных
- •2.4. Булевские данные
- •2.5. Тип массив
- •3. Идентификаторы
- •4. Операторы
- •4.1. Операторы присваивания
- •4.2. Арифметические операторы
- •4.3. Операторы отношений
- •4.4. Логические операторы
- •4.5. Строковые операторы
- •5. Вывод
- •5.1. Процедура WriteLn
- •6. Ввод
- •7. Условные операторы
- •7.1. Оператор If
- •7.2. Оператор выбора Case
- •8. Цикл.
- •8.1. Цикл while.
- •8.2. Цикл Repeat … Until
- •8.3. Цикл For
- •9. Процедуры и функции.
- •10. Структура программ.
- •11. Структура процедуры и функции.
- •12. Пример программы.
- •13. Комментарии.
- •Контрольные задания Вариант №1
- •Вариант№2
- •Вариант №3
- •Вариант №4
- •Вариант №5
- •Вариант №6
- •Вариант №7
- •Вариант №8
- •Вариант №9
- •Вариант №10
8.3. Цикл For
Цикл Forсуществует во многих языках программирования. В Паскале тоже. Однако, вариант этого цикла в Паскале как эффективен, так и ограничен.
Обычно, набор операторов выполняется фиксированное число раз, пока переменная (индексная) принимает значение в указанном диапазоне. Модифицируем знакомую программу HELLOследующим образом:
Program Hello;
Var
Count: Integer;
Begin
For Count := 1 to 10 Do
WriteLn(‘Здравствуй и прощай!’);
WriteLn(‘Это конец’);
End.
При выполнении этой программы видно, что цикл Forвыполняется так же, как и циклыWhileиRepeat. Фактически эквивалентно циклуWhile. Формат циклаFor:
Forиндекс:= выражение 1toвыражение 2doоператор
Где индекс – скалярная переменная (целого типа, символьного, булевского и любого перечисленного типа);
Выражение 1 и выражение 2 – выражения типа, совместимого с типом индекса; оператор – одиночный или составной оператор. Индекс увеличивается на 1 после каждого выполнения цикла Индекс можно уменьшить на 1. Для этого ключевое слово toзаменяется наdownto.
Цикл forэквивалентен следующей программе с цикломwhile:
Index :=expr1;
While index <= expr2 do
Begin
Оператор;
Inc (index)
End;
Главный недостаток цикла for– это возможность уменьшить или увеличить индекс только на 1.
Основные преимущества – краткость, возможность использования символьного и перечислимого типа в диапазоне значений.
9. Процедуры и функции.
Вы изучили условное и итеративное выполнение операторов программы. Теперь посмотрим, как можно выполнить один и тот же набор команд в разных местах программы и с разными данными. Можно объединить эту группу операторов в подпрограмму, которую можно вызвать по необходимости.
В Паскале есть два вида подпрограмм: процедуры и функции.
Главное различие между ними – это то, что функция возвращает значение и может быть использована в выражении:
X := sin(A);
В то время, как процедура может быть вызвана:
WriteLn(“это проверка”);
Однако перед знакомством с процедурами и функциями, необходимо рассмотреть структуру программ.
10. Структура программ.
В стандартном Паскале программы имеют жесткий формат:
Programимя программы
Label
Метки;
Const
Объявление констант;
Type
Объявление типов данных;
Var
Объявление переменных;
Procedure и function;
Begin
Тело программы
End.
Наличие всех пяти секций объявлений – Label,Const,Type,Var,Procedureиfunction– в Вашей программе необязательно. Однако для стандартного Паскаля, если они присутствуют, порядок их следования строго регламентирован, и в программе они должны присутствовать только один раз. За секцией объявлений, следуют процедуры и функции, и только затем тело программы.
TurboPascalобеспечивает более гибкую структуру программы. Главное – это операторprogramдолжен быть первым, а тело программы последним. Порядок описания остальных секций жестко не регламентирован, но идентификаторы должны быть объявлены до их использования во избежание ошибок компиляции.
11. Структура процедуры и функции.
Процедуры и функции, известные под общим именем как подпрограммы могут быть описаны в любом месте программы, но до тела главной программы. Формат процедур:
Procedureимя процедуры (параметры);
Label
Метки;
Const
Объявление констант;
Type
Объявление типов данных;
Var
Объявление переменных;
Procedure, function;
Begin
Тело главной процедуры;
End.
Функции имеют такой же формат, как и процедуры, только они начинаются с заголовка functionи заканчиваются типом данных возвращаемого значения:
Functionимя функции (параметры): тип данных;
Имеются только два различия между программами, процедурами и функциями:
процедуры и функции имеют заголовок procedureилиfunction, соответственно, а неprogram;
процедуры и функции заканчиваются точкой с запятой (;), а не точкой (.).
Процедуры и функции могут иметь описание своих констант, типов данных, переменных и свои процедуры и функции. Но все эти элементы могут быть использованы только в тех процедурах и функциях, где они объявлены.