Участник:Саркис Даниелян
Материал из Letopisi.Ru — «Время вернуться домой»
Структура программы на языке Turbo Pascal
Приведём простейший пример программы, единственная цель которой вывести на экран какое-нибудь приветствие:
program Hello; begin writeln('Hello, world!'); readln; end.
Первая строка ничего не делает, она просто содержит название программы. Затем, после слова begin начинаются собственно действия. В нашей программе их два: первое ( это вывод строчки «Hello, world» на экран, а второе ( ожидание нажатия клавиши «Enter», оно нужно для того, чтобы можно было увидеть результат программы, а затем уже нажать «Enter» и вернуться в Турбо- Паскаль. И, наконец, слово end с точкой в последней строке говорит о том, что программа закончилась. Действия, из которых состоит программа, называются операторами, они отделяются друг от друга точкой с запятой. А теперь приведём пример, в котором программа уже не «глухая», то есть может запрашивать какие-либо данные у пользователя. Пусть требуется спросить у пользователя два числа, после этого вывести на экран их произведение:
program AxB; var a,b: integer; begin writeln('Введите a и b'); readln(a,b); writeln('Произведение равно ',a*b); readln; end;
В этой программе перед словом begin появляется новая строчка, начинающаяся словом var. В ней мы указываем, что программе понадобится две переменные (a и b), в которых можно хранить целые числа (слово integer). О том, что делает первый оператор, нам известно: он выводит на экран строчку 'Введите a и b'. При выполнении второго оператора программа будет ждать, пока пользователь не введет число с клавиатуры и не нажмёт «Enter»; это число программа запишет в переменную a, затем то же самое делается для переменной b. Третьим оператором выводим на экран сначала надпись «Произведение равно », а потом значение выражения a(b («*» ( знак умножения). Четвёртый оператор пояснений не требует. А теперь рассмотрим структуру программы в общем виде. Любая программа на Турбо-Паскале состоит из трех блоков: блока объявлений, блока описания процедур и функций и блока основной программы. Ниже эти блоки расписаны более подробно. Блок объявлений: program ... (название программы) uses ... (используемые программой внешние модули) const ... (объявления констант) type ... (объявления типов) var ... (объявления переменных) Блок описания процедур и функций: procedure (function) begin ... end; ... Блок основной программы: begin ... (операторы основной программы) ... end; Рассмотрим наиболее важные части вышеописанных блоков. Под заголовком программы понимается имя, помогающее определить её назначение. Имя, или идентификатор, строится по следующим правилам: оно может начинаться с большой или малой буквы латинского алфавита или знака «_», далее могут следовать буквы, цифры или знак «_»; внутри идентификатора не может стоять пробел. После имени программы следует поставить «;», этот знак служит в Паскале для разделения последовательных инструкций. Заметим, что имя программы может не совпадать с именем соответствующего файла на диске. После слова const помещаются описания постоянных, которые будут использованы в программе, например:
const Zero = 0; pi = 3.1415926; my_const = -1.5; Hello = 'Привет !';
За словом var следуют объявления переменных, которые понадобятся нам при написании программы. Переменные Паскаля могут хранить данные различной природы: числа, строки текста, отдельные символы и т. п. Ниже приводится часть типов переменных, которые можно применять. |Название типа |Возможные значения |Примеры значений | |integer |целые: -32768 ... 32767 |12, -10000 | |real |действительные (по модулю):|-9.81, 6.02e-23 | | |2,9x10-39... 1,7x1038 | | |string[n] |строка до n символов |‘abcde’, ‘привет’ | | |длиной, если [n] не | | | |указано, то до 255 | | |char |одиночный символ |‘F’, ‘!’, ’_’,’ю’ | Объявления переменных записываются в следующей форме: var <переменная> : <тип>; Если описываются несколько переменных одного типа, то достаточно записать их имена через запятую, а после двоеточия поставить общий тип. Примеры объявления:
var Number: integer; d,l: real; Name: string[20]; Line: string; Key1,Key2: char;
Блок основной программы. Здесь, между словами begin и end. располагаются команды (точнее, операторы), которые будут выполняться один за другим при запуске программы. Рассмотрим простейшие типы операторов на следующем примере:
program First; const a2 = 3; a1 = -2; a0 = 5; var x,f: real; begin write(‘Введите значение х ’); readln(x); f := a2*x*x+a1*x+a0; writeln(‘Значение квадратного трехчлена: ’,f); end.
Первая строка исполняемой (основной) части программы выводит на экран надпись «Введите значение х », для этого используется процедура write написанная разработчиками Турбо Паскаля, то есть набор команд, невидимый для нас, но существующий реально в недрах системы Турбо Паскаль. В качестве параметра этой процедуры используется наша строчка. Параметры всегда записываются в круглых скобках, апострофы означают, что параметр имеет строковый тип. Итак, в первой строке мы видим так называемый оператор вызова процедуры. Каждый оператор отделяется от следующего знаком «;». Во второй строке вызывается процедура ввода readln(x), которая ждет, пока пользователь наберет значение x с клавиатуры и нажмет клавишу «Enter», а затем переводит курсор на следующую строку (ln ( Line ( строка). В третьей строке вычисляется значение трехчлена и записывается в переменную f; этот оператор называется оператором присваивания, и обозначается символом ":=". В последней строке на экран выводится строка «Значение квадратного трехчлена: » и значение переменной f. Несложно заметить, что здесь процедуре writeln передается уже не один, а два параметра, причем они могут иметь разные типы. Вообще, процедуры ввода и вывода (т.е. write, writeln, read, readln) могут иметь любое число параметров различных типов, параметрами могут являться переменные, литералы (т.е. непосредственно записанные числа, строки; в нашем примере дважды были использованы строковые литералы), а также выражения. Используя выражение при выводе, можно заменить две последние строчки нашей программы одной: writeln('Значение квадратного трехчлена: ', a2*x*x+a1*x+a0); В арифметических выражениях на Паскале используются следующие знаки для обозначения операций: +, -, *, /. Для определения порядка действий используются круглые скобки согласно общепризнанным математическим правилам. Замечание об именах. Для обозначения переменных запрещается использование ряда слов, называемых зарезервированными, они играют в языке особую роль. Нам уже встречался ряд зарезервированных слов: program, begin, end, string, const, var, и т.п.
Задания для самостоятельной работы
1) Нужно написать программу, в которой с клавиатуры вводится неизвестное число X. Затем программа решает и выводит на экран решение уравнения: (несколько вариантов) а) y = x + 3^x б) у = х^2 + x + 20*x c) y = 34*x^3 + 48*x^4 + 35*x+ 28
2) Найти и изучить историю языка Паскаль. Пример
Автор
Даниелян Саркис Сагомонович Учеба МехМат ЮФУ 4 курс пед. отделение Телефон 89281623456 Работа -