Write(«Ведите число лет, которое было бы Сереже «); readln(a)

b := a + 17;

c := b div 3;

writeln(«Сереже было «, c, » лет»)

Если эту программу ввести в компьютер и выполнить, то на экране появится вначале запрос для пользователя:

Введите число лет, которое было бы Сереже

После ввода числа 16, компьютер выдаст на экран:

Сереже было 11 лет

Рассмотрим более детально построение программы.

Она начинается со слова program. Слово program зарезервировано в Паскале, т. е. не может использоваться ни в каких других целях, лишь для начала программы.

После служебного слова program записывается имя программы. В нашей программе именем является serg. Имя программы записывается на английском языке по усмотрению и фантазии автора программы. (В некоторых версиях Паскаля допускается запись имени программы на русском языке). Конечно, желательным является, чтобы имя программы выражало ее содержание, но как вы сами понимаете, это не всегда возможно.

Имя программы никак в дальнейшем не используется, поэтому требование обязательности объявления имени программы можно считать излишним. Программу можно выполнять и без имени. С другой стороны, — программа без имени неудобна, а иногда непонятна для пользователей и программистов.

Количество символов в имени программы не ограничивается, но значащими считаются первые 63 символа.

Имя программы должно начинаться с буквы. В нем не должно быть пробелов, запятых, точек .

В конце первой строки, после имени программы стоит «;» — точка с запятой. Этот знак указывает на то, что некоторая инструкция закончена и за ней будет записана следующая инструкция. Правда, первая «инструкция » является именем программы и не походит на инструкцию в смысле «делай то и делай так «, но термин «инструкция » мы употребляем в более широком смысле, как одно логически завершенное предложение или его часть. Точка с запятой является обязательным разделительным знаком в языке Паскаль.

В некоторых версиях языка Паскаль, вы можете встретить такое начало программы:

Program Serg (input, output);

Как видите, в скобках записаны служебные слова input (ввод ) и output (вывод ). Они указывают, что в программе будет вводиться и выводиться информация. Для большинства современных версий языка Паскаль и для Турбо Паскаля эти служебные слова являются необязательными. Хотя, надо заметить, их запись в программе не приведет к ошибке. В дальнейшем мы не будем использовать их в программах.

Следующая строка программы:

a, b, c. integer;

В этой строке обязательно указываются все переменные. участвующие в программе и их типы .

Слово var — это сокращение от слова variable (переменная) и является так же, как и слово program. зарезервированным словом.

После него записываются имена переменных — идентификаторы. в нашем примере: a, b, c. Они записываются через запятую.

После имен переменных стоит «:» — двоеточие. а затем записано служебное, зарезервированное, слово integer. Integer (целый) указывает тип значений, которые принимают переменные — целые числа (. -4, -3, -2, -1, 0, 1, 2, 3, 4, 5. ). Эта строка программы, также как и предыдущая, заканчивается «;» — точкой с запятой .

Далее в программе следует служебное, зарезервированное, слово begin (начать), которым начинается новый раздел программы — раздел операторов .

В этом разделе последовательно записываются команды, операторы, которые разделяются «;» — точкой с запятой. Они будут выполняться компьютером.

Программа заканчивается служебным словом end. после которого стоит точка. Она является обязательной во всех паскалевских программах. Точка оповещает о конце текста программы.

Заметьте, последняя строка из раздела операторов перед служебным словом end не заканчивается точкой с запятой. Но, если вы ее поставите, то ошибки не будет.

1. Итак, КОНСТРУКЦИЯ ПРОГРАММЫ на языке

РАЗДЕЛ ОПИСАНИЙ

Под переменной в языке Паскаль, как и в других языках программирования, понимают программный объект (число, слово, часть слова, несколько слов, символы), имеющий имя и значение, которое может быть получено и изменено программой.

Если «заглянуть » в компьютер, то переменную можно определить так.

Переменная — это имя физического участка в памяти, в котором в каждый момент времени может быть только одно значение.

Само название «переменная » подразумевает, что содержимое этого участка может изменяться.

В качестве имен переменных в Паскале могут быть латинские буквы с индексами. Причем может быть не одна буква, а несколько.

В качестве числового индекса может быть любое целое число. Всего в обозначении переменных может быть произвольное число символов, но значащими считаются первые 63 символа. В некоторых версиях Паскаля допускаются имена переменных, содержащие до 8 символов.

Примеры обозначений переменных: a, b, e, vert, trenin, d, f1, g23, p564, red18 и т. п.

Не имеет значение в обозначении переменных маленькими или большими (строчными или прописными) буквами они написаны!

Имя переменной должно удовлетворять следующим требованиям:

1) всегда начинаться с буквы, после которой при необходимости может следовать некоторое целое число (индекс);

2) в идентификаторе (имени) не должно быть пробелов, запятых или других непредусмотренных знаков, например недопустимы следующие имена переменных: jan.2 (есть точка); 3x (начинается с цифры); a 2 (имеется пробел); чн (русские буквы);

3. Команда присваивания

В программе, которая была приведена выше, есть следующие записи: Что означает знак «:=»?

Так на языке Паскаль обозначается команда присваивания . В чем ее сущность?

Команда присваивания «стирает» предыдущее значение переменной и «придает » ей новое значение. На языке Паскаль команда присваивания обозначается. = двоеточие и знак равно.

В нашей программе, переменной b присваивается значение a + 17, что равно 33, переменной c присваивается значение частного от деления переменной b на 3,

Чтобы понять значение терминов «стирает » и «придает » в определении команды присваивания, надо немного глубже рассмотреть «компьютерную физиологию «, т. е. что происходит в компьютере при выполнении команды присваивания.

Для каждой переменной в оперативной памяти компьютера отводится место — ячейка памяти, куда компьютер заносит значение этой переменной. Каждая ячейка имеет свое имя по имени переменной в программе. В нашей программе под переменные отведено 3 ячейки с именами a, b, c.

При выполнении команды присваивания в ячейки с этими именами будут занесены соответствующие числа. Если в них была записана какая-то информация, то она уничтожится. Происходит процесс похожий на запись на магнитофонную ленту. При записи новой информации прежняя стирается.

4. Операторы write и writeln. Процедуры вывода информации

Вы обратили внимание, что в программе были использованы операторы write и writeln. Английское слово write переводится — писать, а слово writeln происходит как сокращение от двух английских слов write — писать и line — строка.

Кроме операторов write и writeln мы говорим о процедурах вывода информации.

Процедура — это некоторая последовательность операторов языка Паскаль, имеющая имя и к которой можно обратиться из любого места основной программы, указав ее имя.

Выше мы говорили об операторах вывода информации, хотя в Паскале, в отличие от Бейсика нет операторов вывода информации, а через служебные слова write и writeln происходит обращение к стандартной или встроенной процедуре вывода информации. Стандартная процедура не нуждается в предварительном описании, она доступна любой программе, в которой содержится обращение к ней. Вот почему обращение к write или writeln напоминает оператор PRINT — вывода информации на языке Бейсик.

Разница между оператором вывода и обращением к процедуре вывода состоит в том, что имя процедуры вывода, как и любой другой процедуры Паскаля не является зарезервированным словом, а, следовательно, пользователь может написать свою собственную процедуру с именем write или writeln. Но это очень редко используется на практике.

Таким образом, операторы write и writeln являются операторами обращения к встроенным процедурам вывода информации.

Обе эти процедуры выводят информацию на экран, если эта информация содержится в виде значений переменных, тогда достаточно в скобках в операторах write или writeln записать имена этих переменных, например: write(a), writeln(f). Если таких переменных несколько, то их записывают через запятую, например: write(a, b, c, d), writeln(e, f, g, h).

Если информацией являются слова, предложения, части слов или символы, тогда она заключается между знаками » » » — апостроф. например:

write(«Введите длину пути»),

writeln(«Значение скорости равно»

Возможен одновременный вывод и символьной информации и значений переменных, тогда в операторе write или writeln они разделяются запятыми, например:

write(«Значение температуры равно «, t),

writeln(«Скорость равна «, v, » при времени движения «, t).

Заметьте, в конце слов, перед апострофом оставлен пробел.

Для чего это сделано. Конечно, чтобы следующая числовая информация была разделена со словами пробелом.

В чем состоит отличие в работе процедур write и writeln?

Процедура write требует от следующих процедур ввода или вывода, информацию вводить или выводить ее на ту же строку (в одну строку ).

Если в программе указан оператор write и за ним следуют еще операторы write или writeln, то выводимая ими информация будет присоединяться к строке информации первого оператора write.

Например: write(«Сегодня и завтра будут «);

write(«выходные дни «);

На экран выводится:

Сегодня и завтра будут выходные дни

Пробел между словом «будут» и «выходные» обеспечивается за счет пробела в конце первой строки. Если его не будет, то вывод произойдет слитно :

write(«Сегодня и завтра будут»);

write(«выходные дни»);

Сегодня и завтра будутвыходные дни

Еще некоторые примеры: t:=20;