- •Министерство образования Российской Федерации
- •Информатика
- •Самара 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.1. Целые числа
В стандартном Паскале целочисленный тип определяется в пределах от –32768 до 32767, которые являются предельно допустимыми для процессора.
В Turbo Pascal, кроме того , поддерживаются четыре других целочисленных типа данных, каждый из которых имеет свой диапазон значений.
Целочисленные типы данных
Таблица 2.1.
Тип |
Диапазон |
Размер в байтах |
Byte(целое длиной в байт) |
0 .. 255 |
1 |
Shortint(короткое целое) |
-128 .. 127 |
1 |
Integer(целое) |
-32768 .. 32767 |
2 |
Word(длиной в слово) |
0 .. 65535 |
2 |
Longint(длинное целое) |
-2147483648 .. 21474833647 |
4 |
2.2. Вещественный тип данных
В стандартном Паскале тип Realпредставляет значение с плавающей точкой, содержащее мантиссу и экспоненту – степень числа 10.
Количество значащих цифр в мантиссе и диапазон значений экспоненты зависит от компьютере. В Turbo Pascalданные вещественного типа имеют размер в 6 байт, с 11 значащими цифрами мантиссы и экспоненты от 10**-38 до 10**38.
Кроме того, в Turbo Pascalдобавляются типы данныхSingle,Double,ExtendedиComp.
Вещественные типы данных
Таблица 2.2.
Тип |
Диапазон |
Значащие цифры |
Размер в байтах |
Real(вещественный) |
2.9х10**-39 .. 1.7х10**38 |
11-12 |
6 |
Single(с одинарной точностью) |
1.5х10**-45 .. 3.4х10**38 |
7-8 |
4 |
Double(с двойной точностью) |
5.0х10**-342 .. 1.7х10**308 |
15-16 |
8 |
Extended(повышенной точности) |
1.9х10**-4951 .. 1.1х10**4932 |
19-20 |
10 |
Comp(сложный, только целые значения) |
(-2**63)+1 .. (2**63)-1 |
19-20 |
8 |
Вызовем редактор Turbo Pascalи введем программу:
Program DoRatio;
Var
A, B: Integer;
Ratio: Real;
Begin
Write(‘Enter two numbers: ‘);
ReadLn(A, B);
Ratio := A div B;
WriteLn(‘The ratio is ‘, Ratio);
End.
Сохраним ее в файле DORATIO.PASс помощью функции основного менюFile/Save As. НажмитеAlt-Rдля компиляции и запуска программы. Введем два значения, 10 и 3, и получим результат 3.000000.
Ожидая ответа 3.333333, мы получили результат 3. Получили такой результат, потому что был использован оператор “div” для деления целых чисел.
Исправим Ratio := A div B на
Ratio := A / B;
сохраним код (F2), откомпилируем и выполним. Новый результат – 3.3333333333, как и ожидали. Оператор деления «/» обеспечивает более точный результат.
2.3. Символьные и строковые типы данных
Научившись записывать числовые данные, познакомимся с записью и использованием символьных и строковых данных. Паскаль позволяет определять тип Char, имеющий размер в один байт и содержащий один символ. Символьные константы содержат один символ, заключенный в апострофы (‘A’, ‘e’, ‘r’, ‘2’). Заметим, что ‘2’ означает символ 2, а 2 означает целое число 2 (и 2.0 – вещественное число).
Program DoRatio;
Var
A, B: Integer;
Ratio: Real;
Ans: Char;
Begin
Repeat
Write(‘Enter two numbers: ‘);
ReadLn(A, B);
Ratio := A / B;
WriteLn(‘The ratio is ‘, Ratio);
Wrie(‘Do it again? (Y/N) ‘);
ReadLn(Ans);
Until UpCase(Ans) = ‘N’;
End.
После вычисления коэффициента, выдается сообщение:
Do it again? (Y/N).
(Повторить? (Да/Нет)).
Программа находится в состоянии ожидания одного из указанных символов и нажатия клавиши “Enter”. Если Вы нажмете “n” или заглавную “N”, то условие “until” будет выполнено и цикл закончится. В случае, если Вы ответите “Y” (“y”), то выполнение цикла будет продолжено.
“N” и “n” не одно и то же, потому, что они имеют различные значения в кодеASCII. Каждый символ имеет свой кодASCII, представленный 8-битным значением (символ занимает 1 байт).
В большинстве случаев используются строки символов. В стандартном Паскале не поддерживается тип строк символов. В Turbo Pascalреализована эта возможность. Рассмотрим программу
ProgramHello;
Var
Name: String(30);
Begin
Write(‘What is your name? ‘);
ReadLn(Name);
WriteLn(‘Hello, ‘, Name);
End.
Переменная Nameобъявлена какstring(строка), и под нее резервируется 30 байт (для 30 символов). Кроме того,Turbo Pascalотводит еще один байт, в котором содержится текущая длина строки. В этом случае, независимо от того, какой длины будет введено имя, операторWriteLnраспечатает имя указанной длины. Если будет введено имя больше 30 символов, то будут использоваться только первые 30 символов, а остальные будут проигнорированы.
При описании строковой переменной можно указывать ее размер, но не более 255. По умолчанию длина строковой переменной – 255 символов.