Обсуждение участника:Саркис Даниелян
Материал из Letopisi.Ru — «Время вернуться домой»
(Различия между версиями)
(Полностью удалено содержимое страницы) |
(→Главная: новая тема) |
||
Строка 1: | Строка 1: | ||
+ | == Главная == | ||
+ | <h1> Структура программы на языке Turbo Pascal</h1> | ||
+ | |||
+ | <pre> Приведём простейший пример программы, единственная цель которой ( | ||
+ | вывести на экран какое-нибудь приветствие: | ||
+ | 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, и т.п.</pre> |
Версия 17:43, 20 октября 2014
Главная
Структура программы на языке 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, и т.п.