Блог учителя Информатики

Комментарии отключены

 Решение задач блока If 11-20

Решение задач из задачника по программированию М. Э. Абрамяна. Задачи из блока If: «Условный оператор».

Задача If11

Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной большее из этих значений, а если равны, то присвоить переменным нулевые значения. Вывести новые значения переменных A и B.

uses PT4;

var
  a, b: integer;

begin
  Task('If11');
  Read(a, b);
  if a <> b then 
    if a > b then b := a
    else a := b
  else begin
    a := 0; b := 0;
  end;
  Write(a, b);
end.
Pascal
uses PT4;

var
  a, b, res: integer;

begin
  Task('If11');
  Read(a, b);
  if a <> b then 
    if a > b then res := a
    else res := b
  else begin
    res := 0;
  end;
  Write(res, res);
end.
Pascal

Задача If12

Даны три числа. Найти наименьшее из них.

uses PT4;

var
  a, b, c: real;

begin
  Task('If12');
  Read(a, b, c);
  if (a < b) and (a < c) then Write(a);
  if (b < a) and (b < c) then Write(b);
  if (c < a) and (c < b) then Write(c);
end.
Pascal

Задача If13

Даны три числа. Найти среднее из них (т. е. число, расположенное между наименьшим и наибольшим).

uses PT4;

var
  a, b, c: real;

begin
  Task('If13');
  Read(a, b, c);
  if ((a > b) and (a < c)) or ((a < b) and (a > c)) then Write(a);
  if ((b > a) and (b < c)) or ((b < a) and (b > c)) then Write(b);
  if ((c > a) and (c < b)) or ((c < a) and (c > b)) then Write(c);
end.
Pascal
uses PT4;

var
  a, b, c: real;

begin
  Task('If13');
  Read(a, b, c);
  if (a > b) and (a > c) then
    if b > c then Write(b)
    else Write(c);
  if (b > a) and (b > c) then
    if a > c then Write(a)
    else Write(c);
  if (c > a) and (c > b) then
    if a > b then Write(a)
    else Write(b);
end.
Pascal

Задача If14

Даны три числа. Вывести вначале наименьшее, а затем наибольшее из данных чисел.

uses PT4;

var
  a, b, c: real;

begin
  Task('If14');
  Read(a, b, c);
  if (a < b) and (a < c) then write(a);
  if (b < a) and (b < c) then write(b);
  if (c < a) and (c < b) then write(c);
  if (a > b) and (a > c) then write(a);
  if (b > a) and (b > c) then write(b);
  if (c > a) and (c > b) then write(c);
end.
Pascal

Задача If15

Даны три числа. Найти сумму двух наибольших из них.

uses PT4;

var
  a, b, c: real;

begin
  Task('If15');
  Read(a, b, c);
  if (a > b) and (a > c) then
    if b > c then Write(a + b)
    else Write(a + c);
  if (b > a) and (b > c) then
    if a > c then Write(b + a)
    else Write(b + c);
  if (c > a) and (c > b) then
    if a > b then Write(c + a)
    else Write(c + b);
end.
Pascal

Задача If16

Даны три переменные вещественного типа: ABC. Если их значения упорядочены по возрастанию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное. Вывести новые значения переменных ABC.

uses PT4;

var
  a, b, c: real;

begin
  Task('If16');
  Read(a, b, c);
  if (a < b) and (b < c) then 
  begin
    a := 2 * a;
    b := 2 * b;
    c := 2 * c;
  end else begin
    a := -1 * a;
    b := -1 * b;
    c := -1 * c;
  end;
  Write(a, b, c);
end.
Pascal

Задача If17

Даны три переменные вещественного типа: ABC. Если их значения упорядочены по возрастанию или убыванию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное. Вывести новые значения переменных ABC.

uses PT4;

var
  a, b, c: real;

begin
  Task('If17');
  Read(a, b, c);
  if ((a < b) and (b < c)) or ((a > b) and (b > c)) then 
  begin
    a := 2 * a;
    b := 2 * b;
    c := 2 * c;
  end else begin
    a := -1 * a;
    b := -1 * b;
    c := -1 * c;
  end;
  Write(a, b, c);
end.
Pascal

Задача If18

Даны три целых числа, одно из которых отлично от двух других, равных между собой. Определить порядковый номер числа, отличного от остальных.

uses PT4;

var
  a, b, c: integer;

begin
  Task('If18');
  Read(a, b, c);
  if a = b then Write(3);
  if a = c then Write(2);
  if b = c then Write(1);
end.
Pascal

Задача If19

Даны четыре целых числа, одно из которых отлично от трех других, равных между собой. Определить порядковый номер числа, отличного от остальных.

uses PT4;

var
  a, b, c, d: integer;

begin
  Task('If19');
  Read(a, b, c, d);
  if (a = b) and (b = c) then Write(4);
  if (a = b) and (b = d) then Write(3);
  if (a = c) and (c = d) then Write(2);
  if (b = c) and (c = d) then Write(1);
end.
Pascal

Задача If20

На числовой оси расположены три точки: ABC. Определить, какая из двух последних точек (B или C) расположена ближе к A, и вывести эту точку и ее расстояние от точки A.

uses PT4;

var
  a, b, c: real;

begin
  Task('If20');
  Read(a, b, c);
  if abs(a - b) < abs(a - c) then Write(b, abs(a - b))
  else Write(c, abs(a - c));
end.
Pascal

Поделиться:
Вам также может понравится
Округление чисел в Python
Обмен значений двух переменных
Перевод чисел в Python
Снегопад из снежинок на Python с помощью Черепашки