Функции, определенные только для порядковых типов

Функция 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.

 

Знакомство со средой

  1. Перед тем как начать работать в системе программирования Turbo Pascal 7.0, вам желательно создать папку, в которой будут храниться файлы с исходными текстами ваших программ. Папку создайте в каталоге C:\TP7. Имя папки введите в английской раскладке клавиатуры.
  2. Если на Рабочем столе нет ярлыка программы Turbo Pascal, то для удобства работы вам желательно создать ее ярлык (исполнимый файл turbo . exe расположен по адресу: C:\TP7\BIN). Для создания ярлыка щелкните правой кнопкой по значку файла turbo . exe и выберите следующие пункты из контекстного меню

Отправить Þ Рабочий стол (создать ярлык).

  1. Загрузите Turbo Pascal (TP). Если программа открывается в оконном режиме, то для того чтобы перевести ее в полноэкранный режим, нажмите комбинацию клавиш Alt+Enter.
  2. Установите в качестве рабочего каталога вашу папку. Для этого выполните: File Þ Change Dir … Появится окно Change Directory. В области Directory Tree дважды щелкните по каталогу TP7, затем в появившейся ветке выделите ваш каталог (например, MASHA) и щелкните по кнопке Chdir. Для закрытия окна щелкните по кнопке OK.

 

Рис. 4. Среда Turbo Pascal 7.0

  1. Под строкой меню отображается имя исходного файла. Название NONAME00.PAS говорит о том, что документ еще ни разу не был сохранен. Сохраните его, выполнив команды меню File Þ Save или нажав клавишу F2.
  2. При первом сохранении файла появится окно Save File As.

Рис. 5. Окно сохранения файла

  1. Введите имя файла: lab 1. pas.
  2. Щелкните по кнопке ОК.

 

Примечание.

1. Всем файлам, созданным в программе TP, автоматически присоединятся расширение . pas.

2. Рабочий каталог станет «каталогом по умолчанию» при открытии или сохранении файлов, но только на время сеанса работы с программой. В следующем сеансе работы, «каталогом по умолчанию» снова станет C:\TP7\BIN.

 

  1. Введите текст простой программы, которая выводит текст «Hello, my friend!» на экран.

 

program Hello;

begin

write(’Hello, my friend!’);

end.

 

  1. Сохраните файл (нажмите клавишу F2).
  2. Произведите компиляцию программы: нажмите Alt+F9. Если вы сделали синтаксические ошибки, то курсор будет установлен в соответствующей строке, а внизу сообщение с указанием кода ошибки. Если ошибок нет, то появится сообщение о том, что компиляция произведена успешно (Рис. 6). Нажмите любую клавишу.

 

Рис. 6. Сообщение об успешной компиляции

  1. Запустите программу на выполнение: нажмите Ctrl+F9.
  2. Программа выполнена. Для того, чтобы открыть окно с результатом выполнения нажмите Alt+F5. Вы увидите надпись «Hello, my friend!» на черном экране.
  3. Нажмите любую клавишу для возврата в основное окно.
  4. Выйдите из программы ТР: выполните 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