- •Министерство образования Российской Федерации
- •Информатика
- •Самара 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
4.1. Операторы присваивания
Основной операцией является операция присваивания: Ratio:=A/B. В Паскале оператор присваивания – это комбинация двоеточия и знака равенства: “:=”. В примере значение выраженияA/B, стоящее справа от “:=”, присваивается переменнойRatio, стоящей слева.
4.2. Арифметические операторы
Паскаль поддерживает обычный стандартный набор бинарных арифметических операторов, которые выполняются над целыми и вещественными числами:
умножение (*);
деление целых (div);
деление вещественных с остатком (/);
остаток от деления (mod);
сложение (+);
вычитание (-).
Кроме того, поддерживаются унарные операторы:
унарный минус (-b) – меняет знак числа на противоположный;
унарный плюс (+b) – ничего не выполняет, введен для полноты.
4.3. Операторы отношений
Операторы отношений сравнивают два значения, возвращая в результате булевское значение TrueилиFalse. В Паскале реализуются операторы:
> - больше, чем;
>= - больше, чем или равно;
< меньше, чем;
<= - меньше, чем или равно;
= - равно;
<> - не равно;
Почему необходимо знать, каков результат: TrueилиFalse?
Введем следующую программу:
Program TestGreater;
Var
A, B: Integer;
Test: Boolean;
Begin
Write(‘Введите два числа: ‘);
ReadLn(A, B);
Test := A > B;
WriteLn(‘A больше чем B’, Test);
End.
Результат программы: True, если А больше В, иFalse, если А меньше или равно В.
4.4. Логические операторы
В Паскале есть четыре логических оператора:
And- логическое И;
Or- логическое ИЛИ;
Xor- исключающее ИЛИ;
Not- логическое отрицание.
Эти операторы работают с логическими значениями (TrueиFalse) позволяя комбинировать выражения отношений, булевские переменные и булевские выражения.
4.5. Строковые операторы
Существует единственный оператор – “+”, который выполняет конкатенацию (соединение) двух строк.
5. Вывод
Может показаться странным, что речь о выводе пойдет прежде, чем о вводе, но программа, которая не выводит какую-либо информацию, не имеет смысла. Вывод обычно принимает форму, которая зависит от выходного устройства: на экран (слова и изображения), на запоминающие устройства (дискеты и винчестер), на печать.
5.1. Процедура WriteLn
Вы уже использовали наиболее распространенную функцию Паскаля – подпрограмму WriteLn. Назначение ее – запись (вывод) информации на экран. Ее формат прост и гибок при использовании:
WriteLn(элемент, элемент, …);
Каждый элемент – это то, что Вы хотите вывести на экран и может быть: значением, таким как целое или вещественное число (3, 42, -1732.3), символом (‘a’, ‘Z’), строкой (‘Здравствуй мир’), булевским значением (True). Кроме того, может быть именованная константа (имя константы), переменная, вызов функции, если она возвращает значение целого типа, вещественное число, символ, строку или булевский тип. Все элементы печатаются в строку в заданном порядке. После вывода курсор устанавливается на начало следующей строки. Если есть необходимость оставить курсор в этой же строке после последнего элемента, то используйте
Write(элемент, элемент, …);
При выводе элементов WriteLnмежду ними автоматически пробелы между ними не вставляются. При желании иметь их, необходимо их учесть самим:
WriteLn(элемент,’ ‘, элемент,’ ‘, …);
Следующими операторами описывается вывод:
A := 1; B := 2; C := 3;
Name := ‘Frank’;
WriteLn(A, B, C); 123
WriteLn(A, ‘ ‘, B, ‘ ‘, C); 1 2 3
WriteLn(‘Hi’, Name); HiFrank
WriteLn((‘Hi’,’, ‘, Name, ‘.’); Hi, Frank.
Так же можно использовать параметры определения ширины поля для данного элемента. В этом случае оператор имеет формат:
WriteLn(элемент: длина, …);
Где длина – целое выражение (литерал, константа, переменная, вызов функции), определяющее общий размер поля для вывода элемента.
Рассмотрим следующую программу и полученный в результате вывод:
A := 10; B := 2; C := 100;
WriteLn(A, B, C); 102100
WriteLn(A:2, B:2, C:2); 10 2100
WriteLn(A:3, B:3, C:3); 10 2100
WriteLn(A, B:2, C:4); 10 2 100
Заметим, что элемент дополняется начальными пробелами слева в соответствии с указанной длиной. Само значение выравнивается справа.
Что, если размер поля меньше, чем необходимо? Во втором операторе WriteLnвышеприведенного примера для С=100, длина поля меньше, чем нужно, т.е. задано 2, нужно 3. При выводе Паскаль увеличивает размер до минимально необходимого.
Этот метод применим для всех допустимых элементов: целого типа, вещественных чисел, символов, строк и булевских типов. Однако, при указании ширины (размера) поля для вещественных чисел выравнивание происходит слева и выводится в экспоненциальной форме.
X := 421.53;
WriteLn(x); 4.2153000000E+02
WriteLn(x:8); 4.2E+02
Поэтому, Паскаль позволяет добавить второй операнд длины:
Элемент: длина: количество цифр
Вторая цифра указывает, сколько цифр выводить для числа с фиксированной точкой после точки:
X := 421.53;
WriteLn(x:6:2); 421.53
WriteLn(x:8:2); 421.53
WriteLn(x:8:4); 421.5300