Программирование условий на Паскале Пример. Составить программу, после выполнения которой меньшее из двух неравных чисел будет увеличено вдвое, а большее оставлено без изменения. Program Problem2; { Увеличения меньшего из двух целых чисел вдвое } var a, b, c : integer; begin write('Введите первое целое число '); readln(a); write('Введите второе целое число '); readln(b); if a < b then c := 2*a else c := 2*b; writeln('Меньшее число ', c div 2); writeln('Оно же увеличенное вдвое ', c) end.
Программа имеет один недостаток. В ней не учитывается то, когда введенные числа будут равны. В этом случае на экран надо выдать сообщение: "Числа равны". Program Problem2a; {Программа удвоения меньшего из двух чисел} var a, b, c : integer; begin write('Введите первое число '); readln(a); write('Введите второе число '); readln(b); if a = b then writeln('Числа равны') else begin if a < b then c := 2*a else c := 2*b; writeln('Меньшее число ', c div 2); writeln('Удвоенное меньшее число ', c) end; end.
В операторе else записано несколько команд, поэтому в нём установлены операторные скобки: begin end; Такие же операторные скобки могут быть использованы и в операторе then. Пример 3. Составить программу решения квадратного уравнения ax2 + bx + c = Начало. Описание переменных и их типов. 2. Ввод значений коэффициентов. 3. Вычисление значения дискриминанта (d). Если d < 0, тогда уравнение не имеет корней, иначе, если d = 0, тогда уравнение имеет один корень, вычислить значение этого корня и выдать его на экран, иначе, уравнение имеет два корня, вычислить их и выдать на экран. 4. Конец.
Program Problem3; { Программа решения квадратного уравнения } var a, b, c, d, x1, x2 : real; begin write('Введите коэффициенты уравнения '); readln(a, b, c); d := b*b - 4*a*c; if d < 0 then writeln('Уравнение не имеет корней') else if d=0 then writeln('Уравнение имеет один корень ',-b/(2*a)) else begin x1 := (-b - sqrt(d))/(2*a); x2 := (-b + sqrt(d))/(2*a); write('Уравнение имеет два различных корня '); writeln('x1 = ', x1, ' x2 = ', x2) end; end.
Пример 4. Два прямоугольника заданы длинами сторон. Написать программу, после выполнения которой выясняется, можно ли первый прямоугольник целиком разместить во втором. (Рассмотреть только случай, когда соответствующие стороны прямоугольников параллельны.)
Program Problem4; var a1, b1, a2, b2 : real; begin write('Введите длину и ширину первого прямоугольника '); readln(a1, b1); write('Введите длину и ширину второго прямоугольника '); readln(a2, b2); if ((a1 < a2) and (b1 < b2)) or ((b1 < a2) and (a1 < b2)) then writeln(1 прямоугольник размещается во 2') else writeln(1 прямоугольник не размещается во 2'); end.