Материал: Мансуров. Основы программирования в среде Lazarus. 2010

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

2.1 Основные элементы языка

____________________________________________________________________

2.1.7.2. Операторы ввода/вывода

Во время исполнения программы она обменивается информацией с "внеш-

ним миром". Например, она может выдавать информацию на экран или полу-

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

Оператор вывода имеет вид:

write(выражение);

или

writeln(выражение);

В результате выполнения этого оператора значение соответствующего вы-

ражения будет выведено на экран. Выражение может быть любым из указанных выше типов.

Пример.

write(2 + 2); будет выведено на экран 4

write(x = y); будет выведено true или false в зависимости от значений x, y

Оператор writeln отличается от оператора write тем, что выведет зна-

чение выражения с начала новой строки, а оператор write с той позиции стро-

ки, где находится курсор.

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

Пусть значение А=5. Тогда при выполнении оператора

writeln('Значение А=', А);

будет выведено на экран с новой строки

Значение А=5

56

Глава 2 Введение в язык программирования Pascal

____________________________________________________________________

Оператор ввода имеет вид:

read(имя переменной 1, имя переменной 2,…, имя переменной n); readln(имя переменной 1, имя переменной 2,…, имя переменной n);

В результате его выполнения переменной (переменным) присваивается считанное с клавиатуры значение. Вводимое значение должно записываться при вводе так, как описана переменная, т.е. если, например, переменная целого типа, то вводимое число должно быть целым. При этом если используется read, то значение вводится в то место на экране, где в данный момент нахо-

дится курсор, если же используется readln, то с новой строки и с первой ко-

лонки экрана. Если в одном операторе readln или read вводятся значения нескольких переменных, то при выполнении программы значения, водимые с клавиатуры можно разделять пробелом или символом табуляции (клавиша

Tab). После ввода значения последней переменной необходимо нажать клави-

шу Enter.

На практике предпочтительнее использовать оператор readln т.к. во-

первых, курсор будет располагаться всегда в начале строки, что позволит поль-

зователю легче ориентироваться при вводе большого числа значений. Во-

вторых, при этом после окончания ввода буфер ввода с клавиатуры полностью очищается. Дело в том, что все вводимые с клавиатуры символы сначала нака-

пливаются в специальной временной области памяти – буфере и лишь после нажатия клавиши Enter присваиваются соответствующим переменным. При ис-

пользовании оператора read в буфере остается код клавиши Enter. В некото-

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

Вы, конечно, должны понимать, что при вводе чисел с клавиатуры они вводятся в виде строки символов. После нажатия клавиши Enter они переводят-

57

2.1 Основные элементы языка

____________________________________________________________________

ся во внутреннее представление числа.

2.1.7.3. Операторы инкремента и декремента

Кроме оператора присваивания существуют оператор инкремента и декре-

мента, которые также позволяют изменять значения переменных целого типа.

Оператор inc(x, n) увеличивает значение переменной x целого типа на n. Параметр n может быть опущен, тогда значение x увеличится на единицу.

Пример.

inc(x, 10);

увеличит значение x на 10, а оператор

inc(x);

увеличит значение x на 1. Записи

x:= x + 10;

и

inc(x, 10);

совершенно идентичны по своему результату.

Оператор dec(x, n) уменьшает значение переменной x на n, а оператор dec(x)уменьшает x на единицу.

Программисты чаще всего используют короткие формы операторов ин-

кремента и декремента для увеличения или уменьшения значений целочислен-

ных переменных на единицу, т.е. могут использовать

inc(i) вместо i:= i + 1 и dec(i) вместо i:= i - 1

2.1.8 Среда разработки Lazarus

Уже этих полученных знаний нам достаточно, чтобы написать простей-

шую программу. Для того чтобы писать и выполнять программы, нам понадо-

бится компилятор и среда разработки. Существует довольно много компилято-

ров для языка Pascal. Мы с вами будем использовать компилятор Free Pascal

58

Глава 2 Введение в язык программирования Pascal

____________________________________________________________________

Compiler версии 2.2.4.

Free Pascal Compiler (часто применяется сокращение FPC) это свободно распространяемый компилятор языка Паскаль с открытыми исходными кодами,

распространяется на условиях GNU General Public License (GNU GPL). Он со-

вместим с Borland Pascal 7 и Object Pascal – Delphi, но при этом обладает ря-

дом дополнительных возможностей, например, поддерживает перегрузку опе-

раторов. FPC — кроссплатформенный инструмент, поддерживающий огромное количество платформ. Среди них — AmigaOS, DOS, Linux, *BSD, OS/2,

MacOS(X) и Win32.

Free Pascal поддерживает компиляцию в нескольких режимах, обеспе-

чивающих совместимость с различными диалектами и реализациями языка:

TP — режим совместимости с Turbo Pascal: совместимость практически полная, за исключением нескольких моментов, связанных с тем, что FPC ком-

пилирует программы для защищѐнного режима процессора, где невозможно прямое обращение к памяти, портам и т. д.

FPC — собственный диалект: соответствует предыдущему, расширенному дополнительными возможностями, такими как, например, перегрузка операто-

ров.

DELPHI — режим совместимости с Delphi: включает поддержку классов и интерфейсов.

OBJFPC — совмещает объектно-ориентированные возможности Delphi и

собственные расширения языка.

MACPAS — режим совместимости с Mac Pascal.

GNU — режим частичной совместимости с GNU Pascal.

Free Pascal Compiler имеет свою собственную интегрированную среду разработки. Применяется также аббревиатура IDE (Integrated Development Environment). Среда имеет текстовый интерфейс очень похожий на ин-

59

2.1 Основные элементы языка

____________________________________________________________________

терфейс Turbo Pascal 7.0.

Но времена изменились! Текстовые интерфейсы практически полностью вытеснены так называемыми графическими интерфейсами, работать в которых значительно удобнее и приятнее.

В 1999 г. три человека - Cliff Baeseman, Shane Miller и Michael A. Hess.

предприняли попытку написать бесплатную графическую среду для бесплатно-

го компилятора FPC. Проект получает название Lazarus. На сегодняшний день следует признать, что идея оказалась весьма плодотворной потому, что среда существует и развивается и поныне.

Lazarus это бесплатный инструмент разработки с открытым кодом. IDE

Lazarus представляет собой среду с графическим интерфейсом для быстрой разработки программ, аналогичную Delphi, и базируется на оригинальной кроссплатформенной библиотеке визуальных компонентов LCL (Lazarus

Component Library), совместимых с VCL Delphi. В состав IDE входят и не визу-

альные компоненты. В принципе такого набора достаточно для создания про-

грамм с графическим интерфейсом и приложений, работающих с базами дан-

ных и Интернетом.

В среде Lazarus используются собственный формат управления пакетами и свои файлы проектов.

Lazarus это стабильная богатая возможностями среда разработки для соз-

дания самостоятельных графических и консольных приложений. В настоящее время она работает на Linux, FreeBSD и Windows и предоставляет настраивае-

мый редактор кода и визуальную среду создания форм вместе с менеджером пакетов, отладчиком и графическим интерфейсом, полностью интегрирован-

ным с компилятором FreePascal.

Почему для этой книги был выбран именно этот компилятор и его среда быстрой разработки? Потому что они бесплатны и распространяются по сво-

бодной лицензии GNU GPL. Кроме того, компилятор Free Pascal позволяет соз-

давать кроссплатформенные приложения, т.е. приложения, которые могут вы-

60

Смотрите также:

11 Горм +
113
14
1433
1511
1632
199
204
2N4264RE
3773