Задание 6 Урок 9

Задание 6 Урок 9

Пользователь вводит три числа, найдите из них максимальное.
Решите тремя способами:

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

С использованием логической операции and.

var
    a,b,c : real;

begin
  write('Введите три числа через пробел и нажмите ENTER: ');
  readln(a,b,c);// запрашиваем у пользователя числа и переходим на след. строку

  if (a > b) and (a > c){решаем логическое выражение, (true) and (true) = true
  - переходим к then. При значение какого-либо из опереандов false условие
  конъюкции не выполняются, в этом случае переходим к следующему if стр.16 }
     then
         write('Максимальное число - ',a:0:1);//выводим сообщение в консоль

  if (b > a) and (b > c){решаем логическое выражение, (true) and (true) = true
  - переходим к then. При значение какого-либо из опереандов false условие
  конъюкции не выполняются, в этом случае переходим к следующему if стр.21 }
     then
         write('Максимальное число - ',b:0:1);//выводим сообщение в консоль
  if (c > a) and (c > b){решаем логическое выражение, (true) and (true) = true
  - переходим к then. При значение какого-либо из опереандов false условие
  конъюкции не выполняются, в этом случае переходим к следующему if стр.16 }
     then
        write('Максимальное число - ',c:0:1);//выводим сообщение в консоль

  readln();
end.                   

С вложенными блоками (без and).

  var
    a,b,c : real;

begin
  write('Введите три числа через пробел и нажмите ENTER: ');
  readln(a,b,c);

  if (a > b) then
         if (a > c) then
            write('Максимальное число - ', a)
          else
             write('Максимальное число - ', c)
  else
    if (b > c) then
      write('Максимальное число -', b)
     else
       write('Максимальное число -', c);

  readln();
end.

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

var
    a,b,c,max : real;

begin
  write('Введите три числа через пробел и нажмите ENTER: ');
  readln(a,b,c);

  if (a > b) then
       max := a
  else
       max := b;
  if (c > max) then
       max := c;

  write('Максимальное число - ',max:0:1);
  readln();
end.

Исправленные врианты

С логическим оператором and

var a,b,c : real;

begin
  write('Введите три числа через пробел и нажмите ENTER: ');
  readln(a,b,c);// запрашиваем у пользователя числа и переходим на след. строку

  if (a > b) and (a > c) then
    write('Максимальное число - ',a:0:1)
  else
    if (b > a) and (b > c) then
     write('Максимальное число - ',b:0:1)
    else
     write('Максимальное число - ',c:0:1);//выводим сообщение в консоль

  readln();
end.

C Вложенными блоками без and

  var a,b,c : real;

begin
  write('Введите три числа через пробел и нажмите ENTER: ');
  readln(a,b,c);

  if (a > b) then
    if (a > c) then
      write('Максимальное число - ', a)
    else
      write('Максимальное число - ', c)
  else
    if (b > c) then
      write('Максимальное число -', b)
    else
      write('Максимальное число -', c);

  readln();
end. 

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

var a,b,c,max : real;

begin
  write('Введите три числа через пробел и нажмите ENTER: ');
  readln(a,b,c);

  if (a > b) then
    max := a
  else
    max := b;
  if (c > max) then
    max := c;

  write('Максимальное число - ',max:0:1);
  readln();
end.

Key Words for FKN + antitotal forum (CS VSU):

vedro-compota's picture

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

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