Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник.docx
Скачиваний:
36
Добавлен:
21.12.2018
Размер:
2.15 Mб
Скачать

Найти максимальное число из трех

Задача:

Определить какое из трех, введенных пользователем, чисел максимальное и вывести его на экран.

Описание переменных:

В программе будет три переменные для чисел, вводимых пользователем: n1, n2, n3. Также для упрощения алгоритма введем четвертую переменную, в которую по ходу выполнения кода будет помещено максимальное значение: max.

Алгоритм решения задачи:

  1. Сравнить первое и второе число (n1 и n2). Переменной max присвоить значение переменной, содержащей большее значение.

  2. Сравнить значение переменной max с третьим числом, введенным пользователем (n3). Если значение n3 окажется больше, чем max, то присвоить max значение третьего числа. Если же значение max окажется больше, то ничего не делать.

Программа на языке Паскаль:

var

a1, a2, a3, max: integer;

begin

write ('Введите три числа: ');

readln (a1, a2, a3);

if a1 >= a2 then

max := a1

else

max := a2;

if a3 > max then

max := a3;

writeln ('Максимальное из них: ', max);

readln

end.

Примечания:

Три числа не обязательно могут быть разными. Достаточно предусмотреть вариант равенства значений только в первом операторе if.

Вычисление площадей геометрических фигур

Задача:

Пример программы, позволяющей вычислять площади трех геометрических фигур: прямоугольника, треугольника и круга.

Алгоритм решения задачи:

Площадь прямоугольника: area = a * b

Площадь треугольника: area = sqrt(s * (s – a) * (s – b) * (s – c)), где s = (a + b + c) / 2 Площадь круга: area = pi * sqr(d) / 4

Пользователь осуществляет выбор фигуры, площадь которой он хочет получить, путем ввода цифр 1, 2 или 3.

Для выбора ветви вычисления используется конструкция if-else, которая включает вторую конструкцию if-else, а та, в свою очередь, - третью:

if 1 then

вычисление площади прямоугольника

else

if 2 then

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

else

if 3 then

вычисление площади круга

else

ошибка

Программа на языке Паскаль:

const

pi = 3.14;

var figure: byte;

area, s, a, b, c, d: real;

ok: boolean;

begin ok := true;

write('Фигура (1 - прямоугольник, 2 - треугольник', ', 3 - круг): ');

readln(figure);

if figure = 1 then begin

write('Длины сторон: ');

readln(a, b);

area := a * b

end

else

if figure = 2 then begin

write('Длины сторон: ');

readln(a, b, c);

s := 0.5 * (a + b + c);

area := sqrt(s * (s - a) * (s - b) * (s - c))

end

else

if figure = 3 then begin

write('Диаметр: ');

readln(d);

area := pi * sqr(d) / 4

end

else ok := false;

if ok then

writeln('Площадь: ', area:8:2)

else

writeln('Ошибка ввода');

readln

end.

Примечания:

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

Вычисление значения функции

Задача:

Требуется написать программу, вычисляющую значение какой-нибудь функции (у = f(x)). Допустим, такой:

у = x – 2, если x > 0,

y = 0, если x = 0,

y = |x|, если x < 0.

Алгоритм решения задачи:

Задача решается очень просто.

Программа на языке Паскаль:

var

x, y: integer;

begin

write ('x = ');

readln (x);

if x > 0 then

y := x - 2

else

if x = 0 then

y := 0

else

y := abs (x);

writeln ('y = ', y);

readln

end.

Примечания:

В языке программирования Паскаль желательно вложенные конструкции if-else помещать в ветку else, а не if. Так проще не запутаться.