Урок 9 (Решенные задачи)

Урок 9 (Решенные задачи)

1) Сравните два числа, если первое больше второго, то выведите на экран "12". (здесь нужно использовать неполную форму условного оператора)

program u9z9;
begin
  if (7 > 5) then
     writeln(12);
end.
2) Сравните два числа, если первое больше второго, то выведите на экран "12", а если нет, то выведите на экран "888".
begin
  if (55 > 88) then
     writeln(12)
  else
     writeln(888);
end.
3) Даны три целых числа: A, B, C. Проверить истинность высказывания: «Число A находится между числами B и C» -- выведите "да", если истинно и "нет" если ложно.

ПРИМЕЧАНИЕ: эта следующая задача базируются на том, что мы уже решали (см. задачи в конце урока).

var A,B,C: integer;
begin
  writeln('vvedite 3 selih hisla');
  readln(A,B,C);
  if (A > B) and (A < C) then
     writeln('da')
  else
     writeln('net');
end.
4)Даны три целых числа: A, B, C. Проверить истинность высказывания: « Число A и число B больше 17, а C > 7». -- выведите "да", если истинно и "нет" если ложно.
 
var A,B,C: integer;

begin
  writeln('vvedite 3 celih hisla');
  readln(A,B,C);
  if (A > 17) and (B > 17) and (C > 7) then
     writeln('da')
  else
     writeln('net');
end.
5)Пользователь вводит два числа, найдите из них максимальное. (тут всё просто)
var A,B: integer;
begin
  writeln('vvedite 2 hisla: A and B');
  readln(A,B);
  if (A > B) then
     writeln('A - samoe bolsoe')
  else
     writeln('B - samoe bolsoe');
end. 
6) Пользователь вводит три числа, найдите из них максимальное.

Решите тремя способами:

С использованием логической операции and.
С вложенными блоками (без and).
Без вложенных блоков (без and) -- запомнив максимум из двух в специальной переменной.

var A,B,C: integer;
begin
  writeln('vvedite 3 hisla A,B,C');
  readln(A,B,C);
  if (A > B) and (A > C) then
     writeln('A - samoe bolsoe')
  else
  if (B > A) and (B > C) then
     writeln('B - samoe bolsoe')
  else
  if (C > A) and (C > B) then
     writeln('C - samoe bolsoe');
end.

Второй способ

var A,B,C: integer;

begin
  writeln('vvedite hisla A,B,C');
  readln(A,B,C);
  if (A > B) then
    if (A > C) then
      writeln('A - bolse vseh')
      else
      writeln('C - bolse vseh')
  else
      if (B > C) then
      writeln('B - bolse vseh')
      else
      writeln('C - bolse vseh');
end.

Третий способ

var A,B,C, max: integer;

begin
     writeln('vvedite A,B,C');
     readln(A,B,C);
     if (A > B) then
       max := A
     else max := B;
     if (C > max) then
       max := C;
     writeln('Samoe bolsoe chislo - ', max);
end. 
7)Пользователь вводит четыре числа, найдите из них максимальное.
var A,B,C,D: integer;

begin
  writeln('vvedite 4 chisla');
  readln(A,B,C,D);
  if (A > B) and (A > C) and (A > D) then
     writeln(' A - samoe bolsoe = ', A)
  else
     if (B > C) and (B > D) then
     writeln(' B - samoe bolsoe =', B)
     else
       if (C > D) then
           writeln('C - samoe bolsoe =',C)
       else writeln('D - samoe bolsoe =', D);
end.
8)Коля набрал k баллов, Миша n баллов, а Петя d баллов в ходе соревнований. Если:

сумма баллов Коли и Миши больше 20

или произведение баллов Пети и Миши меньше 55

--то тогда вывести в консоль сообщение о том, что ничья, в противном случае вывести сообщение, что победил Коля.

var k,n,d: integer;

begin
  writeln('vvedite k,n,d');
  readln(k,n,d);
  if ((k + n) > 20) and ((n * d) < 55) then
      writeln('pobedila drujba')
  else writeln('Pobedil Kolya');
end.
vedro-compota's picture

переделать форматирование

_____________
матфак вгу и остальная классика =)