Подготовка к школе
1 класс
2 класс
3 класс
4 класс
5 класс
6 класс
7 класс
8 класс
9 класс
10 класс
11 класс
ОГЭ
ЕГЭ
Для всех
Назад

6. Программа с условным оператором: #293071

Сообщить о проблеме
Задание #293071
Задание было решено верно
Задание было решено неверно

Ниже приведена программа, записанная на пяти языках программирования.

Алгоритмический язык:

алг
нач
цел s, t, A
ввод s
ввод t
ввод A
если s > A или t > 12
 то вывод «YES»
 иначе вывод «NO»
все
кон

Паскаль:

var s, t, A: integer;
begin
 readln(s);
 readln(t);
 readln(A);
 if (s > A) or (t > 12)
  then
   writeln(‘YES’)
  else
   writeln(‘NO’)
end.

Бейсик:

DIM s, t, A AS INTEGER
INPUT s
INPUT t
INPUT A
IF s > A OR t > 12 THEN
 PRINT «YES»
ELSE
 PRINT «NO»
ENDIF

Python:

s = int(input())
t = int(input())
A = int(input())
if (s > A) or (t > 12):
 print(«YES»)
else:
 print(«NO»)

C++:

#include
using namespace std;
int main() {
 int s, t, A;
 cin >> s;
 cin >> t;
 cin >> A;
 if (s > A || t > 12)
  cout << «YES» << endl;
 else
  cout << «NO» << endl;
 return 0;
}

Было проведено $9$ запусков программы, при которых в качестве значений переменных $s$ и $t$ вводились следующие пары чисел:

$(13;2)$; $(11;12)$; $(-12;12)$; $(2;-2)$; $(-10;-10)$; $(6;-5)$; $(2;8)$; $(9;10)$; $(1;13)$.

Укажите наибольшее целое значение параметра $A$, при котором для указанных входных данных программа напечатает «YES» три раза.

Программа печатает «YES», если выполняется хотя бы одно из условий: $s>A$ или $t>12$.

Условие $t>12$ выполняется только для пары $(1;13)$. Поэтому один раз программа напечатает «YES» при любом значении параметра $A$.

Чтобы всего было $3$ ответа «YES», условие $s>A$ должно выполняться ещё для $2$ пар.

Рассмотрим значения $s$ остальных восьми пар и расположим их в порядке убывания:

$13,\ 11,\ 9,\ 6,\ 2,\ 2,\ -10,\ -12.$

Чтобы условие $s>A$ выполнялось только для значений $13$ и $11$, необходимо: $11>A,$ $9\leqslant A.$

Следовательно: $9\leqslant A<11.$

Целые значения параметра, удовлетворяющие этому условию: $A=9$ и $A=10$.

Наибольшее из них: $A=10$.

Проверим при $A=10$:

  • $(13;2)$: $13>10$ — «YES»;
  • $(11;12)$: $11>10$ — «YES»;
  • $(-12;12)$: оба условия ложны — «NO»;
  • $(2;-2)$: оба условия ложны — «NO»;
  • $(-10;-10)$: оба условия ложны — «NO»;
  • $(6;-5)$: оба условия ложны — «NO»;
  • $(2;8)$: оба условия ложны — «NO»;
  • $(9;10)$: оба условия ложны — «NO»;
  • $(1;13)$: $13>12$ — «YES».

Программа напечатала «YES» ровно $3$ раза.

Показать
Очки опыта 20
Спросить Зави
0 заданий сегодня

Предложить улучшение