- •Запись выражений и операторов план
- •Запись выражений
- •Использование функций и операторов
- •Литература
- •Введение
- •1. Запись выражений
- •Задание № 1. Запись выражений
- •Задание № 2. Арифметические операции с целыми числами
- •2. Использование функций и операторов
- •If Условие then Оператор_1 else Оператор_2;
- •If Условие then Оператор;
- •Задание № 3. Использование стандартных функций
- •Задание № 4. Использование условных операторов
- •Задание № 5. Использование операторов цикла
- •Контрольные вопросы
- •Задание на самостоятельную работу
Задание № 2. Арифметические операции с целыми числами
Разработайте консольную программу, демонстрирующую выполнение арифметических операций над целыми величинами. Для этого:
Введите целочисленные переменные i, n и объявите их Integer.
Введите целочисленные переменные A, B и объявите их Byte.
Организуйте ввод с клавиатуры значений i, n, A, B.
Организуйте вывод на экран результатов целочисленного деления i div n и i mod n.
Организуйте вывод на экран результатов поразрядных булевских и сдвиговых операций с числами A и B.
Листинг программы должен иметь примерно следующий вид:
Program Operation_Integer;
{$APPTYPE CONSOLE}
uses
SysUtils;
Var
i,n: integer;
A,B: byte;
Begin
writeln('Vvedite znachenia i, n, A, B');
readln(i,n,A,B); // Введите произвольные целые числа
// из допустимого диапазона
writeln('Isxodni danny: i=',i:5,' n=',n:5,' A=',A:5,' B=',B:5);
writeln(i:5,' div',n:5,' = ',i div n:5);
writeln(i:5,' mod',n:5,' = ',i mod n:5);
writeln;
writeln('not ',A,' = ',not A);
writeln(A,' and ',B,' = ',A and B);
writeln(A,' or ',B,' = ',A or B);
writeln(A,' xor ',B,' = ',A xor B);
writeln(A,' shl ',B,' = ',A shl B);
writeln(A,' shr ',B,' = ',A shr B);
readln
End.
Откомпилируйте и выполните программу. При наличии ошибок, исправьте их.
П ри отсутствии ошибок вы должны получить результат, представленный на рис. 1.
Сохраните проект программы в папке \Мои документы\ЛЗ-21\Задание-02 под именем Operation_Integer.
2. Использование функций и операторов
Операторы языка разделяются на две группы: простые и структурные.
Операторы отделяются друг от друга символом точка с запятой (;).
Простые операторы — это такие операторы, которые не содержат в себе других операторов. К ним относятся операторы присваивания, вызова процедуры, безусловного перехода и пустой.
Оператор присваивания состоит из идентификатора переменной или пользовательской функции, символа присваивания «:=» и выражения:
Идентификатор := Выражение;
Допускается присваивание значений не только простых, но и структурированных типов, таких как массивы, записи и множества.
Оператор вызова процедуры служит для активизации стандартной или предварительно определенной пользователем процедуры. Состоит из идентификатора и списка фактических параметров, располагаемых в круглых скобках. Оператор процедуры без параметров состоит только из идентификатора процедуры.
Имя_процедуры(Список_фактических_параметров);
Указанные в операторе фактические параметры должны соответствовать описанным в заголовке процедуры формальным параметрам по типу, количеству и взаиморасположению.
Примерами стандартных процедур являются процедуры ввода-вывода: read, readln, write и writeln.
Процедура чтения read обеспечивает ввод числовых данных, символов, строк и т.д. для последующей их обработки программой:
read(X1, X2, ... , Xn);
где X1, X2, ... , Xn – переменные допустимых типов данных.
Процедура чтения readln аналогична процедуре read, единственное отличие заключается в том, что после считывания последнего в списке значения для одного оператора readln данные для следующего оператора readln будут считываться с начала новой строки.
Процедура записи write производит вывод числовых данных, символов, строк и булевских значений. Формат ее вызова следующий:
write(Y1, Y2, ..., Yn);
где Y1, Y2, ..., Yn - выражения типа integer, real, char, boolean и т.п.
После записи каждого выражения можно задать целочисленное выражение, определяющее ширину поля вывода: :p:q, где p – ширина поля вывода, а q – количество цифр в дробной части при представлении вещественного числа в формате с фиксированной точкой.
Процедура записи writeln аналогична процедуре write, но после вывода последнего в списке значения для текущей процедуры writeln происходит перевод курсора к началу следующей строки. Процедура writeln, записанная без параметров, вызывает перевод строки.
Оператор безусловного перехода используется в тех случаях, когда после выполнения некоторого оператора надо выполнить не следующий по порядку оператор, а какой либо другой, отмеченный меткой:
Goto Метка;
Пустой оператор не содержит никаких символов и не выполняет никаких действий. Он может быть расположен в любом месте программы. Пустой оператор может быть помечен меткой.
Структурные операторы включают в себя другие операторы и управляют последовательностью их выполнения. К ним относятся: составной оператор; условные операторы; операторы цикла; оператор присоединения.
Составной оператор объединяет группу операторов в единое целое, после чего они могут считаться одним оператором. Составной оператор состоит из последовательности объединяемых операторов, разделяемых точкой с запятой, которые располагаются между ключевыми словами begin и end:
Begin
Оператор_1;
Оператор_2;
...
Оператор_n
end;
Условные операторы обеспечивают выполнение или невыполнение некоторого оператора, группы операторов или блока в зависимости от заданных условий.
Оператор условия if может быть записан в полном и неполном форматах:
Полный формат: