Пример 1. Составить программу, которая определит большее из двух введенных чисел.
Программа:
Program maximum;
Uses Crt;
Var A, B: Integer;
Begin
Clrscr;
Write (‘Введите два числа ’);
Readln (A, B);
If A>B
Then Writeln (‘Большее число ’, A)
Else If B>A
Then Writeln (‘Большее число ’, B)
Else Writeln (‘Числа равны’);
Readln
End.
Пример 2. Составить программу, которая вводит число, обозначающее количество лет, и выводит для этого числа наименование «год», «года» или «лет». Например, «14 лет», «183 года», «31 год».
Составим модель данной задачи. Исходным данным является целое число A. Результат: наименование. Наименование зависит от последней цифры введенного числа: 1 - «год»; 2,3,4 – «года», 0,5,6,7,8,9 – «лет». Исключением являются числа, две последних цифры которых составляют число от 11 до 14 – в этом случае требуемым наименованием будет «лет» («12 лет»).
Алгоритм решения:
ввод числа А;
вычисление числа В из двух последних цифр числа А;
если В лежит в интервале от 11 до 14,
то писать наименование «лет»
иначе
выделить последнюю цифру числа А (обозначим С);
если С=1, то вывести наименование «год»;
если С=2 или С=3 или С=4, то вывести наименование «года»;
если С=0 или С в интервале от 5 до 9, то вывести наименование «лет».
Программа:
Program Years;
Uses Crt;
Var A, B, C: Integer;
Begin
Clrscr;
Write (‘Введите число ’);
Readln (A);
B:= A mod 100;
If (B>=11) And (B<=14)
Then Writeln (A, ‘ лет’)
Else Begin
C:= A mod 10;
Case C Of
1: Writeln (A, ‘ год’);
2, 3, 4: Writeln (A, ‘ года’);
0, 5..9: Writeln (A, ‘ лет’)
End
End;
Readln
End.
Контрольные задания
2.1. Составить программу, которая определит, в какой координатной четверти лежит точка с координатами (X,Y).
2.2. Составить программу, которая вычислит корни квадратного уравнения ax2+bx+c=0.
2.3. Составить программу, которая определит, поместится ли квадрат со стороной А в круг радиуса R, или круг в квадрат.
2.4. «Вид треугольника». Треугольник задан координатами своих вершин на плоскости. Составить программу, которая определит, является ли он прямо-, остро- или тупоугольным.
2.5. «Посылка». Составить программу, которая определит, можно ли коробку размером a x b x c упаковать в посылку размером r x s x t? «Углом» укладывать нельзя.
2.6. «Кирпич». Составить программу, которая определит, пройдет ли кирпич со сторонами a, b и c сквозь прямоугольное отверстие со сторонами r и s? Стороны отверстия должны быть параллельны граням кирпича.
2.7. «Треугольник и точка». Составить программу, которая определит, лежит ли точка М(x,y) внутри треугольника, заданного координатами своих вершин A, B и C?
2.8. Составить программу, которая определит, является ли введенное шестизначное число номером «счастливого» билета (т.е. сумма первых трех цифр равна сумме последних трех цифр). Указание: используйте тип LongInt.
2.9. Три шахматиста играют в шахматы. Известно количество очков, набранных каждым из них. Составить программу, которая определит, на сколько очков победитель оторвался от самого слабого игрока.
2.10. Составить программу, которая вводит текущую дату (число, номер месяца и год) и выводит следующую дату. Например, 31 12 2005 ® 1 января 2006.
2.11. Составить программу, которая вводит текущую дату (число, номер месяца и год) и выводит предыдущую дату. Например, 1 05 2005 ® 30 апреля 2005.
2.12. Составить программу, которая вводит число, обозначающее количество килограммов, и выводит для этого числа наименование «килограмм», «килограмма» или «килограммов». Например, «14 килограммов», «73 килограмма», «151 килограмм».
2.13. Составить программу, которая вводит целое число (с произвольным количеством цифр – от одной до пяти) и выводит число-перевертыш. Например, 21 ® 12; 358 ® 853.