Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
osnovy_programmirovanija_v_srede_lazarus.pdf
Скачиваний:
182
Добавлен:
18.03.2015
Размер:
6.53 Mб
Скачать

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

____________________________________________________________________

writeln(UTF8ToConsole('Нажмите любую клавишу'));

readkey;

end.

3. Установите необходимые свойства проекта, т.е. включите в проект пакет

LCL, в Linux настройте параметры запуска.

4. Сохраните проект в папке "Типовой пустой проект для консольных при-

ложений". Не забывайте, что в Linux в названиях папок не допускаются пробе-

лы, поэтому присвойте этой папке имя без пробелов, например такое: "Типовой_пустой_проект_для_консольных_приложений".

Теперь, если вам необходимо создать новый проект, откройте этот пустой проект и тут же сохраните его в другой папке с помощью меню Файл-> Сохранить как… При этом можно и нужно сохранить проект под дру-

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

2.1.14 Операции с целыми числами

До сих пор мы рассматривали лишь одну операцию с целыми числами – сложение. Естественно в Паскале разрешены и другие операции. Рассмотрим программу, показывающую все возможные операции с целыми числами:

Пример.

program int_operations;

uses Crt, FileUtil;

var

A, B, C: integer;

begin

writeln(UTF8ToConsole('Введите два числа'));

95

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

____________________________________________________________________

readln(A, B);

writeln('A= ',A,' B= ',B);

C:=A + B;

writeln(UTF8ToConsole('Демонстрация сложения, C= '),C);

C:=A * B;

writeln(UTF8ToConsole('Демонстрация умножения, C= '),C);

C:=A div B;

writeln(UTF8ToConsole('Демонстрация деления нацело, C= '),C);

C:=A mod B;

writeln(UTF8ToConsole('Остаток от деления, C= '),C);

C:=A - B;

writeln(UTF8ToConsole('Демонстрация вычитания, C= '),C); writeln(UTF8ToConsole('Нажмите любую клавишу'));

readkey;

end.

Из этой программы видно, что знак умножения * (а не буква х). Тем самым избегают возможности спутать его с буквой х.

Далее с целыми числами определены операции:

div (от английского divide – делить) – деление нацело.

Пусть А = 17, В = 3, отсюда 17:3 = 5*3+2 и

A div B

дает результат 5

mod (от английского modulo – определить остаток) – определение остатка от деления нацело.

A mod B дает результат 2

Откомпилируйте и выполните свою программу (клавиша F9).

Все нормально? Программа работает? У вас еще не выходило такое? (рис.

2.47, 2.48)

96

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

____________________________________________________________________

Рис. 2.47. Сообщение об ошибке

Рис. 2.48. Оператор, при выполнении которого произошла ошибка

В Linux окно вывода будет таким:

Рис. 2.49. Сообщение об ошибке в терминале

97

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

____________________________________________________________________

Или, если вы запускаете программу в консоли, то окно будет иметь вид:

Рис. 2.50. Сообщение об ошибке в консоли

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

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

рого числа ввести ноль. Но делить на ноль, как известно, нельзя!

Здесь мне бы хотелось снова отступить от конкретики и порассуждать на

"общие" темы.

2.1.15Вместо лирического отступления 2

Впроцессе разработки программы многие начинающие программисты со-

вершенно не обращают внимания на такие, казалось бы, мелочи. А зря! Ваши программы должны быть защищены от любых мыслимых и немыслимых оши-

бок или непреднамеренных действий пользователя. Казалось бы, в совершенно очевидных ситуациях, когда пользователь ни при каких обстоятельствах не должен был бы ввести число ноль, из тысячи пользователей найдется хотя бы один, который обязательно введет 0! Даже если вы выведете яркое, написанное крупным шрифтом предупреждение, что нельзя вводить здесь число 0. Тому есть миллион причин. Пользователь мог в это время задуматься о чем-то дру-

98

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]