Условный оператор. b: real; (*длина верхнего основания*)

End

Begin

B) var

End.

Var

b: real; (* длина верхнего основания* )

a: real; (* длина верхнего основания*)

h: real; (* высота трапеции*)

s: real; (* площадь трапеции*)

begin

writeln (‘ введите значения b, a, h: ‘);

read (b,a,h);

s:= (b+a)*h /2;

writeln;

write (‘ площадь трапеции= ‘, s:7: 2)

Вопросы. Найдите ошибки в тексте следующих программ:

а) i: integer;

begin

write (‘ Задайте целое число.’);

readln (i)

write (i);

end.

i: real;

i=1;

writeln (‘ i =’, j);

Ответы. а) Отсутствует слово var в начале раздела описания переменных; после оператора readln не стоит символ «точки с запятой»ж в операторе write используется имя необъявленной переменной j;

б) вместо writeln набрано wirteln; нет точки после слова end в конце текста программы.

Упражнения. Составьте программы:

а) вычисления расстояния по известным значениям

скорости.

б) вычислить объем параллелепипеда

в) вычислить площадь круга

Часто возникает необходимость выполнять различные команды в зависимости от выполнения какого-то условия (например надо найти наибольшее из двух чисел и вывести на экран).

Для таких целей в Паскале введен условный оператор:

if условие then

begin

операторы, выполняемые, если условие истинно

end

begin

операторы, выполняемые, если условие ложно

end

оператор 1, else оператор 2

Пример 1. Рассмотрим задачу о нахождении наибольшего из двух чисел. Программа должна выполнять следующие действия:

- ввести с клавиатуры два числа

- сравнить два значения

n вывести на экран наибольшее из них

ПРОГРАММА

program SR (input, output);

var

a,b: real;

begin

writeln (‘введите первое число’);

readln (a);

writeln (‘введите второе число’);

readln (b);

if a < b then

writeln (‘наименьшим является первое число’)

else

if a = b then

writeln (‘введенные значения равны’)

else

writeln (‘наименьшим является второе число’)

end.

На дом: Составить программу решения линейного уравнения

ах2 + в = 0.

Напомним, что если а ¹ 0, то х = -b / a

а если а = 0, то просто проверить значение в.

при в = 0, решением является любое число,

а при в ¹ 0 уравнение не имеет решения.

Program linear equation;

var

a, b: real;

begin

write (‘введите коэффициенты а и в ‘);

readln (a, b);

if

a < > 0. 0 then

write (‘x =’, - b/a)

else

if b = 0.0 then

write (‘корень любое число’)

else write (‘ корней нет’)

end.

Пример 3 Решим задачу на определение Палидрома.

Определение Палидром -это когда число или слово читается одинаково слева направо или справа налево

шалаш,

наган

Задача. Требуется определить, является ли заданное трехзначное число палидромом.

Для решения такой задачи можно использовать простое условие - первая цифра должна равняться последней.

ПРОГРАММА

program palidrom (input, output);

var

x: integer;

begin

write (‘ введите целое число:’);

readln (x);

if x mod 10 = x div 100 then

write (‘ введенное число является палидромом’)

else

write (‘ введенное число не является палидромом ‘)

end.

В этой программе используется стандартная операция mod, которая дает остаток от деления нацело (деление по модулю). Например:

если х = 128 то х mod 10 будет число 8, т.к. 128/10=12 в остатке 8

Другая стандартная операция div - делит нацело (отбрасывается дробная часть).

Например:

если х=128 то div 100 будет число 1, т.к. 128/100=1,28 а дробная часть отбрасывается.

Пример 4. Следующая программа должна проверять, делиться ли введенное с клавиатуры число нацело на 4. Числа а и b делятся нацело, если остаток от деления a / b = 0

ПРОГРАММА

program divide (input, output);


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow