- •Министерство образования Российской Федерации
- •Информатика
- •Самара 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
2.4. Булевские данные
Встроенный тип Booleanданных вTurbo Pascalимеет два возможных значения:TrueиFalse(истина и ложь). Можно объявить переменную типаBoolean, и присвоить ей значениеTrueилиFalse, или же, что более важно, присвоить ей значение выражения, которое при вычислении принимает одно из этих значений.
Булевское выражение – это выражение, которое принимает значение TrueилиFalse. Оно состоит из выражений отношений, булевских операторов, булевских переменных и/или других булевских выражений. Например:
While (Index <= Limit) and not Done do …
Whileсодержит булевское выражение. Булевское выражение в этом случае все, что находится между ключевыми словамиwhileиdo.Done– это переменная (или функция) булевского типа.
2.5. Тип массив
Массивы содержат фиксированное число компонент одного типа – тип компоненты. В типах индекса, по одному для каждой размерности массива, указывается число элементов. Допустимыми типами индекса являются все порядковые типы, за исключением Longint. Массив может быть проиндексирован по каждой размерности всеми значениями соответствующего индекса; число элементов поэтому равно числу значений каждого индекса. Максимальное число размерностей – четыре.
Приведем пример объявления переменной типа массив:
Var
Mas1: array[1..100] of Real;
В приведенном примере объявлена матрица вектор из ста элементов вещественного типа.
Многомерные массивы можно объявлять как массив массивов:
Mas2: array[1..10] of array[1..10] of Integer;
Для объявления таких массивов обычно используют краткую форму, которая эквивалентна приведенной выше:
Mas2: array[1..10, 1..10] of Integer;
В обоих случаях объявляется матрица целых чисел размером 10х10.
Для доступа к элементам массива необходимо использовать идентификатор массива за которым указывается индекс (или набор индексов), задающий элемент. Например:
Mas1[8] - указывает на восьмой элемент;
I:= 4;J:= 5;
Mas2[I,J] - указывает на пятый элемент в четвертой строке.
3. Идентификаторы
До сих пор в примерах содержались идентификаторы переменных без описания ограничений и правил их образования. Рассмотрим их более подробно.
Имена, которые даются константам, типам данных, переменным, функциям, известны как идентификаторы.
Идентификаторы использовались для:
Integer,Real,Stringвстроенных типов данных;
Hello,DoRatioназвания основных программ;
Name, A, B, Ratio переменных;
Write,WriteLn,ReadLnимен встроенных процедур.
Turbo Pascalимеет несколько правил образования идентификаторов. Краткое описание правил:
все идентификаторы начинаются с буквы или знака подчеркивания (a..z,A..Z, _ ). Последующими символами могут быть буква, знак подчеркивания, цифра (0-9). Другие символы недопустимы.
Идентификаторы рассматриваются без учета регистров (прописные и строчные буквы не различаются). Это значит, что a..zтождественноA..Z. Напримерindexтоже самое что иIndex, иINDEX.
Идентификаторы могут иметь различную длину, но используются только первые 63 символа.
4. Операторы
Итак, данные получены программой и присвоены переменным. Программе нужно их обработать и получить результат, используя операторы.
Существует восемь типов операторов. Из них здесь будут рассмотрены пять из них: присваивания, арифметические, отношений, логические и над строками.
Большинство операторов в Паскале бинарные, имеют два операнда; унарные операторы имеют один операнд. Бинарные операторы имеют обычно алгебраическую форму, например a+b. Унарный оператор предшествует своему операнду, например –b.
В сложных выражениях порядок выполнения операций определяется правилами приоритета.
Приоритет операторов
Таблица 4.1.
Операторы |
Приоритет |
Категория |
Not |
Первый (высший) |
Унарный |
*, /, div, mod, and |
Второй |
Мультпликативные |
+, -, or,xor |
Третий |
Аддитивные |
=, <>, <, >, <=, >=, |
Четвертый (низший) |
Отношения |
Операция равного приоритета выполняются слева направо, хотя компилятор может их перегруппировать для генерации оптимального кода.
Последовательность операторов с одинаковым приоритетом выполняются слева направо. Выражения, заключенные в скобки, вычисляются в первую очередь, независимо от предшествующих и последующих операторов.