Функции, определенные только для порядковых типов
Функция odd(x) — определяет, является ли аргумент х типа longint четным или нечетным. Тип результата — логический (true — если проверяемое число нечетное и false — если проверяемое число четное).
Функция pred(x) — получает предшествующее значение для аргумента порядкового типа. Тип результата совпадает с типом аргумента. Если предшествующего значения нет, то возникает аварийная ситуация.
Функция succ(x) — получает последующее значение для аргумента порядкового типа. Тип результата совпадает с типом аргумента. Если последующего значения нет, то возникает аварийная ситуация.
Функция upcase(c) — преобразует букву латинского алфавита с (тип char) в соответствующую ей заглавную букву (с может быть как строчной, так и заглавной буквой). Тип результата — char. К сожалению, стандартную функцию upcase нельзя использовать для букв русского алфавита, но можно написать собственную функцию с таким же именем.
Чтобы воспользоваться той или иной функцией, необходимо указать ее в правой части оператора присваивания. При обращении к функции необходимо в круглых скобках указать ее аргументы. Например, оператор
y := sin(x)
присваивает переменной у значение синуса аргумента х.
В одном выражении могут присутствовать обращения к нескольким функциям, например:
tn:=sin(x)/cos(x)
Стандартные процедуры
Стандартные процедуры отличаются от функций тем, что не возвращают никакого значения, но, в отличие от функции, могут изменять значения переданных им параметров.
Процедура dec(x, n) или dec(x) — уменьшает значение переменной х любого порядкового типа на значение n типа longint. Если параметр n опущен, то процедура уменьшает значение переменной х на 1.
Процедура inc(x, n) или inc(x) — увеличивает значение переменной х любого порядкового типа на значение n типа longint. Если параметр n опущен, то процедура увеличивает значение переменной х на 1.
Процедура randomize — инициализирует генератор случайных чисел.
Методические материалы для лабораторного занятия №12
Тема СРСП: Среда программирования Turbo Pascal . Стандартные процедуры и функции.
Количество часов: 2.
Знакомство со средой
- Перед тем как начать работать в системе программирования Turbo Pascal 7.0, вам желательно создать папку, в которой будут храниться файлы с исходными текстами ваших программ. Папку создайте в каталоге C:\TP7. Имя папки введите в английской раскладке клавиатуры.
- Если на Рабочем столе нет ярлыка программы Turbo Pascal, то для удобства работы вам желательно создать ее ярлык (исполнимый файл turbo . exe расположен по адресу: C:\TP7\BIN). Для создания ярлыка щелкните правой кнопкой по значку файла turbo . exe и выберите следующие пункты из контекстного меню
Отправить Þ Рабочий стол (создать ярлык).
- Загрузите Turbo Pascal (TP). Если программа открывается в оконном режиме, то для того чтобы перевести ее в полноэкранный режим, нажмите комбинацию клавиш Alt+Enter.
- Установите в качестве рабочего каталога вашу папку. Для этого выполните: File Þ Change Dir … Появится окно Change Directory. В области Directory Tree дважды щелкните по каталогу TP7, затем в появившейся ветке выделите ваш каталог (например, MASHA) и щелкните по кнопке Chdir. Для закрытия окна щелкните по кнопке OK.
Рис. 4. Среда Turbo Pascal 7.0
- Под строкой меню отображается имя исходного файла. Название NONAME00.PAS говорит о том, что документ еще ни разу не был сохранен. Сохраните его, выполнив команды меню File Þ Save или нажав клавишу F2.
- При первом сохранении файла появится окно Save File As.
Рис. 5. Окно сохранения файла
- Введите имя файла: lab 1. pas.
- Щелкните по кнопке ОК.
Примечание.
1. Всем файлам, созданным в программе TP, автоматически присоединятся расширение . pas.
2. Рабочий каталог станет «каталогом по умолчанию» при открытии или сохранении файлов, но только на время сеанса работы с программой. В следующем сеансе работы, «каталогом по умолчанию» снова станет C:\TP7\BIN.
- Введите текст простой программы, которая выводит текст «Hello, my friend!» на экран.
program Hello;
begin
write(’Hello, my friend!’);
end.
- Сохраните файл (нажмите клавишу F2).
- Произведите компиляцию программы: нажмите Alt+F9. Если вы сделали синтаксические ошибки, то курсор будет установлен в соответствующей строке, а внизу сообщение с указанием кода ошибки. Если ошибок нет, то появится сообщение о том, что компиляция произведена успешно (Рис. 6). Нажмите любую клавишу.
Рис. 6. Сообщение об успешной компиляции
- Запустите программу на выполнение: нажмите Ctrl+F9.
- Программа выполнена. Для того, чтобы открыть окно с результатом выполнения нажмите Alt+F5. Вы увидите надпись «Hello, my friend!» на черном экране.
- Нажмите любую клавишу для возврата в основное окно.
- Выйдите из программы ТР: выполните File Þ Exit или нажмите Alt+X.
ЗНАЧЕНИЯ НЕКОТОРЫХ КЛАВИШ И СОЧЕТАНИЙ КЛАВИШ В СРЕДЕ ТР 7.0
Клавиша (сочетание клавиш) | Назначение |
Alt+F9 | Компиляция |
CTRL+F9 | Запуск программы на выполнение |
ALT+F5 | Просмотр результата работы программы |
F2 | Сохранение файла |
F3 | Открытие файла |
F6 | Переход между открытыми файлами |
Alt+F3 | Закрытие файла |
Alt+X | Выход из программы |
Напишите и выполните следующие готовые программы на языке Паскаль.
Упражнение 1. Задача. Написать программу, производящую арифметические действия над целыми числами. PROGRAM arif_int; uses crt;{подключение модуля CRT} var a, b, sum, difference, product : integer;{описание переменных} begin clrscr; {процедура очистки экрана} write('a='); {вывод на экран подсказки} readln(a); {ввод значения переменной а} write('b='); {вывод на экран подсказки} readln(b); {ввод значения переменной b} {вычисление} sum:=a+b; difference:=a-b; product:=a*b; {вывод результатов на экран} writeln(a,’+’,b,’=’,sum); writeln(a,’-’,b,’=’,difference); writeln(a,’*’,b,’=’,product); readln; {Задержка экрана} end. | Упражнение 2. Задача. Написать программу, производящую арифметические действия над вещественными числами. PROGRAM arif_real; uses crt;{подключение модуля CRT} const m=6;{общее количество знаков, отводимых на запись числа} n=2;{количество знаков в дробной части} var a, b, c, d, e, f:real; begin clrscr; {процедура очистки экрана} write('a=');readln(a); write('b=');readln(b); c:=a+b; d:=a-b; e:=a*b; f:=a/b; writeln('summa =',c:m:n); writeln('raznost =',d:m:n); writeln('proizved=',e:m:n); writeln('chastnoe=',f:m:n); readln; end. |
Упражнение 3. Задача. Дано трехзначное целое число. Найти сумму его цифр. PROGRAM digits_summa; uses crt;{подключение модуля CRT} var x,d1,d2,d3,s : integer; begin clrscr; write('Enter 3-digital number: '); readln(x); d1:=x div 100; d2:=x mod 100 div 10; d3:=x mod 10; s:=d1+d2+d3; writeln(d1,’+’,d2,’+’,d3,’=’,s); readln; end. | Упражнение 4. Задача. Известны катеты прямоугольного треугольника. Найти гипотенузу. PROGRAM hyp; uses crt;{подключение модуля CRT} const m=6;{общее количество знаков, отводимых на запись числа} n=2;{количество знаков в дробной части} var a,b,c:real; begin clrscr; {процедура очистки экрана} write('a=');readln(a); write('b=');readln(b); c:=sqrt(sqr(a)+sqr(b)); writeln('hypotenuza =',c:m:n); readln; end. |
Методические рекомендации по СРСП №12