
- •Часть I
- •1.1 Простейшее консольное приложение. Основные понятия
- •Задачи.
- •1.2 Простые типы
- •Целые типы.
- •Задачи.
- •Символьные типы.
- •Логические типы
- •Задачи.
- •Перечислимый тип
- •Вещественные типы
- •Тип дата-время
- •1.3 Операторы Оператор присваивания
- •Составной оператор
- •Условный оператор if
- •Задачи.
- •Оператор выбора case
- •Задачи.
- •Операторы цикла
- •Задачи.
- •Задачи.
- •Задачи.
- •1.4 Процедуры и функции.
- •Процедуры.
- •Функции.
- •Вызов подпрограмм.
- •Локализация имён.
- •Параметры.
- •Задачи.
- •Перегрузка функций.
- •Процедурные типы.
- •1.5 Динамическая память и указатели
- •1.6 Массивы
- •Статические массивы
- •Задачи.
- •Задачи.
- •Задачи.
- •Задачи.
- •Динамические массивы
- •Параметры-массивы
- •1.7 Строки Строковые типы
- •Стандартные подпрограммы для строк.
- •Строковые выражения
- •Задачи.
- •Преобразование строк в числовые типы и обратно.
- •1.8 Множества
- •Задачи.
- •1.9 Записи
- •Задачи.
- •Литература.
- •Оглавление
1.3 Операторы Оператор присваивания
Оператор присваивания обозначается символом := . Действие его заключается в том, что вычисляется значение выражения, стоящего справа от знака присваивания , и это значение присваивается переменной, стоящей слева от знака присваивания.
Пусть, например, переменной x присвоено значение 13, а переменной y – значение 25. Чтобы x и y поменялись значениями, можно, используя вспомогательную (буферную) переменную t, записать следующую последовательность операторов присваивания:
x:=13; y:=25; t:=x; x:=y; y:=t;
В результате получим x=25 y=13.
Составной оператор
Составным оператором называется группа операторов, заключённая в операторные скобки begin … end. Составной оператор используется в тех случаях, когда по правилам языка Object Pascal разрешается использовать один оператор, а программисту для решения задачи необходимо выполнить группу операторов. Для разделения операторов предназначена точка с запятой.
Условный оператор if
Оператор if предназначен для реализации разветвляющегося вычислительного процесса. В общем виде условный оператор записывается следующим образом:
if <логическое выражение> then <оператор1> else <оператор2>;
Вначале оператор if вычисляет значение логического выражения. Если значение логического выражения равно true, то выполняется оператор1, в противном случае – оператор2. В качестве оператора1 и оператора2 может быть использован составной оператор (группа операторов, заключённых в операторные скобки begin end) или другой условный оператор (вложенный условный оператор).
Оператор if может быть записан в сокращённой форме:
if <логическое выражение> then <оператор> ;
Пример 8. Даны два различных вещественных числа. Вывести на экран большее из них.
var x, y : real;
begin
readln(x, y);
if x>y then writeln(x:7:2) else writeln(y:7:2);
readln
end.
Пример 9. Даны два действительных числа x, y. Если x и y отрицательны, то каждое из чисел заменить его квадратом; если отрицательно только одно из них, то каждое из чисел увеличить в 10 раз; если оба числа неотрицательны, то каждое из них заменить корнем квадратным.
var x, y : real;
begin
readln(x, y);
if (x<0) and (y<0) then begin x:=sqr(x); y:=sqr(y) end
else
if (x<0) xor (y<0) then begin x:=x*10; y:=y*10 end
else begin x:=sqrt(x); y:=sqrt(y) end;
writeln('x=', x:6:2,' y=', y:6:2); readln
end.
да
нет
x10x
y10y
нет
Пример 10. Даны три различных вещественных числа a, b, c. Найти максимальное из этих чисел.
var a, b, c, max : real;
begin
readln(a, b, c);
if (a>b) and (a>c) then max:=a
else
if b>c then max:=b
else max:=c;
writeln('max= ', max:7:2); readln
end.
да
нет
да
нет