УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ЛЕСОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И МОДЕЛИРОВАНИЯ
Л.Ю.Мельник
Информатика
Методические указания по выполнению
лабораторно-практического цикла по Turbo Pascal
для студентов всех специальностей
ЕКАТЕРИНБУРГ
ОБЩИЕ ПОЛОЖЕНИЯ
Среда / Язык программирования Турбо-Паскаль
Для того чтобы запустить /вызвать среду Турбо-Паскаль следует:
¨ или выбрать Пуск, Программы, Turbo Pascal;
¨ или воспользоваться ярлыком Turbo;
Для завершения работы выполните команду File, Exit или закройте окно редактора щелчком на кнопке «´».
Окно Турбо-Паскаль
Меню
Перейти в меню Турбо-Паскаль можно нажав клавишу < F10> или воспользоваться мышкой. Для удобства работы в среде Windows, можно использовать горячие клавиша < Alt > + < Enter >, чтобы работать с окном Турбо-Паскаль в оконном режиме.
Ø File. Пункт содержит команды, задающие действия над файлами. С помощью этой команды можно создать, открыть, сохранить, распечатать программу, закончить работу с программой (New, Open, Save, Save As, Exit).
Ø Edit. Позволяет редактировать документ: отмечать, копировать, удалять.
Ø Run. Этот пункт меню позволяет использовать идентичную команду Run для запуска программы и дальнейшего выполнения ее.
Ø Compile. Этот пункт меню позволяет компилировать написанную программу, т.е. проверить на ошибки.
Ø Debug. Пункт меню позволяет посмотреть результаты выполнения программы, выполнить команду User Screen.
ПЛАН РАБОТЫ
Выполните следующие действия:
1. Запустите программу Turbo Pascal.
2. Выберите пункт меню File - New, как показано на рисунке рис.1
3. Наберите текст программы.
4. Сохраните текст программы в файл с именем labNN.pas где NN – номер лабораторной работы.
5. Проверьте программу на синтаксические ошибки (пункт меню Compile – Compile или воспользуйтесь горячими клавишами <Alt+F9>)
6. Если нет ошибок, запустите программу на выполнение (пункт меню Run\Run или горячими клавишами <Ctrl+F9>), в противном случае повторите пункты с 4 по 6. с ошибками.
7. Результаты выполнения программы можно посмотреть (пункт меню Debug\User screen или горячими клавишами <Alt+F5>)
8. Проверить программу на правильность выполнения с контрольным примером, если результат не верен, исправить ошибки и повторить пункты с 4 по 7.
Рис. 1
ЛАБОРАТОРНАЯ РАБОТА № 1
ТЕМА. Программирование линейных алгоритмов.
Программы с линейной структурой составляются из процедур присваивания, ввода, обращения к процедурам. Оператор присваивания можно назвать основным в любом языке программирования. Оператор присваивания:
<переменная>:= <выражение>
Оператор выполняется следующим образом. Вычисляется значение <выражения>, после чего <переменная> получает вычисленное значение. При этом тип выражения должен быть совместим с типом переменной.
Примеры оператора присваивания:
X:=(Y+Z)/(2+Z*10)-1/3;
LogPer:=(A>B) and (C<=D).
Выражение может включать в себя константы, переменные, знаки операций, функции, скобки. В результате вычисления выражения получается значение определенного типа.
Тип выражения определяется типом полученного значения.
Арифметическое выражение — выражение числового типа (целого или вещественного). Идентификатор целого типа: integer, вещественного типа: real.
Арифметические операции бывают унарными и бинарными. К унарным относится операция изменения знака. Ее формат: — <величина>.
В следующей таблице представлены бинарные арифметические операции Паскаль. А и В обозначают операнды, для типов величин использованы обозначения: I — целый, R — вещественный.
Выражение | Типы операндов | Тип рез-та | Операция |
А + В | R, R | R | Сложение |
I, I | I | ||
I, R R, I | R | ||
А - В | R, R | R | Вычитание |
I, I | I | ||
I, R R, I | R | ||
А * В | R, R | R | Умножение |
I, I | I | ||
I, R R, I | R | ||
А/В | R, R | R | Вещественное |
I, I | R | деление | |
I, R R, I | R | ||
A div В | I, I | I | Целое деление |
A mod В | I, I | I | Остаток от целого деления |
Стандартные математические функции Паскаль представлены в следующей таблице:
Обращение | Тип аргумента | Тип рез-та | Функция |
abs (х) | I, R | I, R | Модуль аргумента |
arctan(х) | I, R | R | Арктангенс(радианы) |
cos (х) | I, R | R | Косинус (х в радианах) |
ехр (х) | I, R | R | ех— экспонента |
fгас(х) | I, R | R | Дробная часть х |
int(x) | I, R | R | Целая часть х |
1п(х) | I, R | R | Натуральный логарифм |
random | R | Псевдослучайное число в интервале [0,1] | |
random (х) | I | I | Псевдослучайное число в интервале [0,х] |
round(х) | R | I | Округление до ближайшего целого |
sin(х) | I, R | R | Синус (х — в радианах) |
sqr (х) | I, R | R | Квадрат х |
sqrt(x) | I, R | R | Корень квадратный |
trunk(x) | R | I | Ближайшее целое, не превышающее х по модулю |
Старшинство операций (в порядке убывания приоритета):
=> вычисление функции;
=> унарный минус;
=> *, /, div, mod;
=> +, -
Возведение положительного числа в вещественную степень следует производить, используя следующее математическое тождество: xy=ey ln x На Паскале это записывается так: ехр(у*ln(х))
Пример 1. Записать математические выражения в виде арифметических выражений на Паскале.
Математическое выражение Выражение на Паскале
х2 - 7х + 6 |
Sqr(x) - 7*х+6
Ввод данных с клавиатуры производится путем обращения к стандартным процедурам:
rеаd (<список ввода>) readln (<список ввода>)
Элементы списка ввода — идентификаторы переменных. Вводимые значения отражаются на экране. При выполнении оператора пользователь набирает на клавиатуре соответствующую последовательность значений, разделяя их пробелами.
Вывод данных на экран производится путем обращения к стандартным процедурам:
write (<cписок вывода>) writeln (<cписок вывода>)
Элементы списка вывода — константы, переменные, выражения, форматы вывода.
Структура программы на Паскале:
Program <Имя программы>;
Label <раздел описания меток>;
Const <раздел описания констант>;
Uses <раздел описания стандартных модулей>;
Туре <раздел описания типов>;
Var <раздел описания переменных>;
Procedure (Function) <раздел описания подпрограмм>;
Begin
<раздел операторов>
End.
Заключенный текст в {..} является комментариями к программе.
Для любой программы обязательным является лишь раздел операторов. Все программные объекты (константы, переменные, типы и пр.) должны быть описаны в соответствующих разделах описаний.
Здесь и в дальнейшем служебные слова Паскаль будут выделяться полужирным шрифтом. Служебными называются слова, значения которых в языке однозначно определены.
Пример 2. Скорость первого автомобиля v1 км/ч, второго — v 2 км/ч, расстояние между ними s км. Какое расстояние будет между ними через t ч, если автомобили движутся в разные стороны?
Решение.Согласно условию задачи искомое расстояние s1 = s + ( v1 + v 2 )t (если автомобили изначально двигались в противоположные стороны) или s2 = | ( v1 + v 2 )t- s|(если автомобили первоначально двигались навстречу друг другу).
Программа организует ввод исходных данных, вычисление искомых величин по формулам и вывод их на экран. Все величины в программе — вещественного типа.
Program Car;
Uses Crt; { раздел описания модулей }
Var VI,V2, T, S, SI, S2: Real;
Begin
Clrscr; {Очистка экрана}
Write ('Введите скорости автомобилей, расстояние между ними и время движения: ');
ReadLn (VI, V2, S, Т);
SI := S+(V1+V2)*Т;
S2:=Abs((VI + V2)*T-S);
WriteLn( 'Расстояние будет равно ',S1:7:4,'км или ',S2:7:4, ' км')
End.
Тестовый пример. VI=50 км/ч, V2=70 км/ч, S=1000 км, Т=1час
S1=1120 км
S2=880 км
Логические выражения в результате вычисления принимают логические значения true или false. Операндами логического выражения могут быть логические константы, переменные логического типа, отношения. Идентификатор логического типа в Паскале: boolean.
Логические операции. В Паскале имеются 4 логические операции: отрицание — NOT, логическое умножение — AND, логическое сложение — OR, исключающее «или» — XOR. Результаты логических операций для различных значений операндов приведены в таблице. Использованы обозначения: Т — true, F — false.
А | В | not А | A and В | A or В | А хог В |
Т | T | F | Т | Т | F |
Т | F | F | F | T | T |
F | F | T | F | F | F |
F | T | T | F | T | T |
Приоритеты логических операций: