Было проведено 9 запусков программы при которых в качестве значений переменных s и t вводились следу
Ниже приведена программа, записанная на пяти языках программирования.

Было проведено 9 запусков программы, при которых в качестве значений переменных «s» и «t» вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Укажите количество целых значений параметра А, при которых для указанных входных данных программа напечатает «NO» три раза.
НЕМНОГО ТЕОРИИ:
Конъюнкция («И») — это сложное логическое выражение, которое считается «ИСТИННЫМ» в том и только том случае, когда все простые выражения, входящие в него являются «ИСТИННЫМИ«, во всех остальных случаях данное сложенное выражение «ЛОЖНО«.
Дизъюнкция («ИЛИ») — это сложное логическое выражение, которое считается «ЛОЖНЫМ» в том и только том случае, когда все простые выражения, входящие в него являются «ЛОЖНЫМИ«, во всех остальных случаях данное сложенное выражение «ИСТИННО«.
Инверсия («НЕ») — это сложное логическое выражение. Если исходное логическое выражение «ИСТИННО«, то результат отрицания будет «ЛОЖНЫМ«, и наоборот, если исходное логическое выражение «ЛОЖНО«, то результат отрицания будет «ИСТИННЫМ«.
Решение:
В сложном логическом выражении, данном по условию, используется логическая операция «ИЛИ«.
Таким образом, оно будет «ЛОЖНЫМ» в том случае, если оба простых логических выражений, входящих в него, будет «ЛОЖНЫМИ«.
Составим таблицу истинности для решения задачи по известным данным:
Как видим, условие «s > 10» будет «ЛОЖНЫМ» в четырех случаях.
Подберем значение параметра «А«, при котором выражение «t > A» исключит один лишний «ЛОЖНЫЙ» результат.
Рассмотрим ключевые значения паметра «А = 2, 5, 10, 12«:
Как видим, при А = 5 получаем три результата «NO«, а при А = 10 уже четыре.
Таким образом, A принадлежит промежутку [5; 10).
Т.е. таких чисел «5» — 5, 6, 7, 8 и 9.
Было проведено 9 запусков программы при которых в качестве значений переменных s и t вводились следу
Программа с условным оператором.
Рассмотрим основные типы задач:
Ниже приведена программа, записанная на пяти языках программирования.

Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Сколько было запусков, при которых программа напечатала «ДА»?
Заметим, что программа напечатает «ДА», если одна из введённых переменных s или t будет больше 10. Значит, было 5 запусков, при которых программа напечатала «ДА». В качестве значений переменных s и t в этих случаях вводились следующие пары чисел:
(11, 2); (1, 12); (11, 12); (–11, 12); (–12, 11).
Ответ: 5
Ниже приведена программа, записанная на пяти языках программирования.

Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Сколько было запусков, при которых программа напечатала «YES»?
Заметим, что программа напечатает «YES», если одна из введённых переменных s или t будет больше 10. Значит, было 5 запусков, при которых программа напечатала «YES». В качестве значений переменных s и t в этих случаях вводились следующие пары чисел:
ОГЭ по информатике — Задание 6 (Анализируем программу)

Пришло время 6 задания из ОГЭ по информатике 2023.
В этом задании нужно проанализировать программу на одном из языков программирования и ответить на поставленный вопрос.
Перейдём к примерным задачам из ОГЭ по информатике.
Ниже приведена программа, записанная на 5 языках программирования.
| Бейсик | Паскаль |
|---|---|
| C++ | Алгоритмический язык |
| Python | |
Было проведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t): (5, 6); (9, 5); (6, 8); (10, 9); (–9, –10); (–9, 10); (–10, 9); (8, 8); (8, 6).
Сколько было запусков, при которых программа напечатала «YES»?
Разберём программы на Питоне и на Паскале.
Чтобы программа напечатала «YES», нужно, чтобы в паре было хотя бы одно число, которое больше 8, т.к. в условии стоит союз ИЛИ (or).
Подходят пары: (9, 5); (10, 9); (-9, 10); (–10, 9); . Всего получается 4 запуска.
Задача (Союз ИЛИ, закрепление)
Ниже приведена программа, записанная на 5 языках программирования.
| Бейсик | Паскаль |
|---|---|
| C++ | Алгоритмический язык |
| Python | |
Было проведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t): (2, 5); (5, 2); (4, 4); (2, -2); (3, 1); (8, 3); (9, -7); (7, 7); (4, 6).
Сколько было запусков, при которых программа напечатала «YES»?
Чтобы программа напечатала «YES», нужно, чтобы в паре первое число s было меньше 5 ИЛИ второе число t было больше 5, или оба условия выполнились одновременно.
Подходят пары: (2, 5); (4, 4); (2, -2); (3, 1); (7, 7); (4, 6); Всего получается 6 запусков.
Ниже приведена программа, записанная на 5 языках программирования.
| Бейсик | Паскаль |
|---|---|
| C++ | Алгоритмический язык |
| Python | |
Было проведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t): (6, 8); (9, 10); (9, 5); (-10, 9); (5, 6); (9, -10); (10, 9); (8, 10); (17, 10).
Сколько было запусков, при которых программа напечатала «YES»?
В этот раз в условии стоит союз И (and). В этом случае, чтобы распечаталось YES, нужно, чтобы два условия одновременно сработали. Т.е. первое число должно быть s >= 8, а второе t >= 10, тогда мы пару будем засчитывать.
Подходят пары: (9, 10); (8, 10); (17, 10); Всего получается 3 запуска.
Задача (Союз И, закрепление)
Ниже приведена программа, записанная на 5 языках программирования.
| Бейсик | Паскаль |
|---|---|
| C++ | Алгоритмический язык |
| Python | |
Было проведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t): (7, 3); (2, 7); (6, 10); (5, 3); (5, 4); (-11, 4); (-8, 9); (7, 3); (9, 1).
Сколько было запусков, при которых программа напечатала «NO»?
Здесь нужно определить сколько раз распечатается «NO». В подобных случаях удобно всё равно считать сколько раз распечатается «YES», а потом вычислить сколько раз будет распечатано «NO».
В условии стоит союз И. Значит, первое число должно s быть больше 6 и одновременно с этим второе число t должно быть меньше 7.
Подходят пары: (7, 3); (7, 3); (9, 1); Всего получается 3 запуска.
Но нам нужно было найти, сколько раз выведется «NO». Поэтому ответ будет 9-3=6.
Задача (Целочисленное деление)
Ниже приведена программа, записанная на 5 языках программирования.
| Бейсик | Паскаль |
|---|---|
| C++ | Алгоритмический язык |
| Python | |
Было проведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t): (1, 1); (8, 4); (14, 10); (20, 1); (7, 3); (10, 5); (10, 2); (4, 1); (1, 0).
Сколько было запусков, при которых программа напечатала «NO»?
Команда div в Паскале или двойной слеш в Питоне обозначает целочисленное деление!
Как это работает ? Например 5:2 = 2,5, но если мы сделаем 5 // 2 = 2. Т.е. дробная часть просто отбрасывается. Не округляется, а просто отбрасывается. Или другими словами происходит округление в меньшую сторону.
В нашей программе будет печататься «YES», когда применяется целочисленное деление на 2 к первому числу, и получается второе число. Посмотрим в каких парах будет выведено «YES».
Это пары: (8, 4); (7, 3); (10, 5); (1, 0). Четыре запуска. Значит, «NO» распечатается в 5 (9-4) случаях.
Ниже приведена программа, записанная на 5 языках программирования.
| Бейсик | Паскаль |
|---|---|
| C++ | Алгоритмический язык |
| Python | |
Было проведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t): (13, 2); (11, 12); (-12, 12); (2, -2); (-10, -10); (6, -5); (2, 8); (9, 10); (1, 13).
Укажите наименьшее целое значение параметра A, при котором при указанных входных данных программа напечатает «YES» 3 раза.
В условии стоит союз ИЛИ. Посмотрим, сколько пар подойдёт, если обращать внимание только на переменную t. Она должна быть больше 12. Тогда получается одна пара: (1, 13).
Ещё нужно набрать 2 пары. Это сделаем с помощью переменной s. Понимаем, что A должно быть равно 10, тогда ещё две пары подойдут по первому числу (13, 2) и (11, 12).
Но нас просили A найти как можно меньше. При значении 9 так же останутся три пары, но A будет ещё меньше. Значит, ответ будет 9. Ели попробовать взять A=8, то подойдёт ещё одна пара (9, 10), и их будет уже 4.
Задача (С параметром, закрепление)
Ниже приведена программа, записанная на 5 языках программирования.
| Бейсик | Паскаль |
|---|---|
| C++ | Алгоритмический язык |
| Python | |
Было проведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t): (13, 2); (11, 12); (-12, 12); (2, -2); (-10, -10); (6, -5); (2, 8); (9, 10); (1, 13).
Укажите количество целых значений параметра A, при которых при указанных входных данных программа напечатает «NO» 5 раз.
Будем отталкиваться от количества «YES»ов.
Вновь найдём количество пар, которые печатают «YES» по второму числу, в независимости от параметра A. Получается одна пара (1, 13).
Нужно выбрать параметр A таким, чтобы распечатали «YES» ещё три пары. Здесь уже ориентируемся на первое число s.
Выберем A = 8. Тогда распечатают «YES» ещё три пары: (13, 2) ; (11, 12) ; (9, 10). Это наибольшее значение A, при котором распечатается 5 «NO». Но так же 5 «NO» будет напечатано и при A = 7, 6. При A = 5 добавляется ещё одна пара (6, -5), при которой будет напечатано «YES», и уже условие задачи не выполняется.
Таким образом, ответ получается 3 (А = 8, 7, 6).
Ниже приведена программа, записанная на 5 языках программирования.
| Бейсик | Паскаль |
|---|---|
| C++ | Алгоритмический язык |
| Python | |
Было проведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t): (1, 2); (11, 2); (1, 12); (11, 12); (-11, -12); (-11, 12); (-12, 11); (10, 10); (10, 5).
Укажите наименьшее целое значение параметра A, при котором при указанных входных данных программа напечатает «NO» 3 раза.
Найдём сколько раз программа напечатает «YES», исходя из первого числа s. Получается только две пары: (11, 2) и (11, 12). Значит, 7 раз «NO». Нужно увеличивать количество «YES»ов.
Попробуем взять A=6. В группу «YES» передут ещё 4 пары: (1, 12); (-11; 12); (-12; 11); (10; 10).
В группе «NO» как раз останутся три пары: (1, 2); (-11, -12); (10, 5).
Проверим, является ли число 6 для переменной A минимальным.
Попробуем A=5. Оказывается, три вышеперечисленные пары остаются в группе «NO». Последняя пара тоже не распечатает «YES», ведь неравенство строгое.
Если будет A=4, то последняя пара уже будет печатать «YES», и условие задачи перестанет выполняться.
На этом всё, пусть у вас получится решить 6 задание из ОГЭ по информатике без сучка без задоринки.
Было проведено 9 запусков программы при которых в качестве значений переменных s и t вводились следу
Шестое задание. Начало у всех одинаковое: «Ниже приведена программа, записанная на пяти языках программирования.» Выясняем, что выдает программа, и отвечаем на поставленный вопрос.
КЭС на ФИПИ: 1.3.1 Алгоритм, свойства алгоритмов, способы записи алгоритмов: блок-схемы. Представление о программировании
Это одно из заданий, вызывающих наибольшие затруднения на ОГЭ. Так что отнеситесь к подготовке со всей серьезностью.
На реальном ОГЭ могут быть следующие варианты шестого задания от ФИПИ.
Варианты задания 6 ОГЭ по информатике с ФИПИ
Алгоритмический язык
Паскаль
var s, t, A: integer;
begin
readln(s);
readln(t);
readln(A);
if (s > 10) or (t > А)
then writeln(«YES»)
else writeln(«NO»)
end.
Бейсик
Python
DIM s, t, A AS INTEGER
INPUT s
INPUT t
INPUT A
IF s > 10 OR t > А THEN
PRINT «YES»
ELSE
PRINT «NO»
ENDIF
s = int(input())
t = int(input())
A = int(input())
if (s > 10) or (t > А):
print(«YES»)
else:
print(«NO»)
C++
#include <iostream>
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Укажите целое значение параметра А, при котором для указанных входных данных программа напечатает «NO» пять раз.
Решение :
Заметим, что программа напечатает «NO», если переменная s будет меньше или равна 10, И переменная t будет меньше или равна А.
Из первой части условия получаем, что при вводе значений s и t (11, 2) и (11, 12) программа напечатает «YES» вне зависимости от значения A.
(1, 2 ); (11, 2) ; (1, 12); (11, 12) ; (–11, –12 ); (–11, 12); (–12, 11 ); (10, 10 ); (10, 5 ).
Заметим, что при A = 1 программа напечатает «NO» один раз (–11, –12),
при 2 ≤ A ≤ 4 программа напечатает «NO» два раза (–11, –12)(1, 2),
при 5 ≤ A ≤ 9 программа напечатает «NO» три раза (–11, –12)(1, 2)(10, 5),
при А=10 программа напечатает «NO» 4 раза (–11, –12)(1, 2)(10, 10) (10, 5),
а при A =11 программа будет печатать «NO» 5 раз (1, 2) (–11, –12) (–12, 11) (10, 10) (10, 5).
Алгоритмический язык
Паскаль
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.
Бейсик
Python
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
s = int(input())
t = int(input())
A = int(input())
if (s > A) or (t > 12):
print(«YES»)
else:
print(«NO»)
C++
#include <iostream>
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(13, 2); (11, 12); (–12, 12); (2, –2); (–10, –10); (6, –5); (2, 8); (9, 10); (1, 13).
Укажите наименьшее целое значение параметра А, при котором для указанных входных данных программа напечатает «NO» пять раз.
Решение :
Условие (s > A) или (t > 12) — программа напечатает «YES», значит
(s ≤ A) и (t ≤ 12) — «NO»
t ≤ 12 во всех кроме (1, 13), эту пару вычеркиваем.
Должно быть s ≤ A для значений (-12, -10, 2, 2, 6, 9, 11, 13), чтобы получить NO. Теперь отсчитываем 5 значений, начиная с самого маленького, значения при которых программа будет выдавать «NO». Получается до значения 6.
Ответ: 6
Алгоритмический язык
Паскаль
var s, t, A: integer;
if (s > 10) or (t > A)
Бейсик
Python
DIM s, t, A AS INTEGER
IF s > 10 OR t > A THEN
if (s > 10) or (t > A):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Укажите наименьшее целое значение параметра А, при котором для указанных входных данных программа напечатает «YES» два раза.
Решение :
s > 10 или t > A — «YES», значит программа напечатает «YES», если переменная s будет больше 10 или переменная t будет больше А.
Получаем:
(11, 2); (11, 12) — YES вне зависимости от А, так как 11 > 10. У нас уже есть два раза. Дальше надо получать NO.
Для остальных вводимых данных составим массив ввода t по увеличению их значений (-12, 2, 5, 10, 11, 12, 12 ). То есть если A будет больше или равно максимальному в массиве, то получим во всех случаях «NO», что нам и надо. Значит А=12
Ответ: 12
Алгоритмический язык
Паскаль
var s, k: integer;
Бейсик
Python
DIM k, s AS INTEGER
IF s MOD 5 = k THEN
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и k вводились следующие пары чисел:
(1, 2); (5, 0); (18, 3); (21, 1); (10, 2); (12, 1); (9, 4); (5, 5); (3, 3).
Сколько было запусков, при которых программа напечатала «YES»?
Решение :
Если число s делится на 5 и получается остаток k, программа печатает «YES».
% в Пайтоне, mod в алгоритмическом языке возвращает значение остатка.
Рассмотрим варианты:
(1, 2) 1/5= ост.1
(5, 0) 5/5=ост.0 «YES»
(18, 3) 18/5=ост.3 «YES»
(21, 1) 21/5=ост.1 «YES»
(10, 2) 10/5=ост.0
(12, 1) 12/5=ост.2
(9, 4) 9/5 =ост.4 «YES»
(5, 5) 5/5=ост.0
(3, 3) 3/5=ост.3 «YES»
Ответ: 5
Алгоритмический язык
Паскаль
var s, t: integer;
if not((s >= 2) and (t < 5))
Бейсик
Python
DIM s, t AS INTEGER
IF NOT (s >= 2 AND t < 5) THEN
if not ((s >= 2) and (t < 5)):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(12, 5); (5, 3); (–4, 1); (2, –5); (5, –7); (10, 3); (18, 6); (3, 0); (2, 5).
Сколько было запусков, при которых программа напечатала «YES»?
Решение :
не (s >= 2 и t < 5) — «YES», избавимся от не:
s < 2 или t ≥ 5 — «YES»
Чтобы программа напечатала «YES», первое значение меньше 2х или второе условие 5 и больше, можно оба условия сразу, а можно и по одному.
Тогда:
( 12, 5 ) «YES»
(5, 3)
( –4 , 1) «YES»
(2, –5)
(5, –7)
(10, 3)
(18, 6 ) «YES»
(3, 0)
(2, 5 ) «YES»
Ответ: 4
Алгоритмический язык
Паскаль
var s, t, A: integer;
if (s > A) or (t > 12)
Бейсик
Python
DIM s, t, A AS INTEGER
IF s > A OR t > 12 THEN
if (s > A) or (t > 12):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(13, 2); (11, 12); (–12, 12); (2, –2); (–10, –10); (6, –5); (2, 8); (9, 10); (1, 13).
Укажите наименьшее целое значение параметра А, при котором для указанных входных данных программа напечатает «YES» три раза.
Решение :
s > A или t > 12 — программа печатает «YES».
Найдем случаи t > 12: это — (1, 13) То есть один «YES» уже есть.
Теперь второе условие: s > A.
Выводим значения s в виде массива по возрастанию, исключая уже разобранный случай (-12, -10, 2, 2, 6, 9, 11, 13). То есть если s будет больше этих значений, то будет YES. Но нам надо еще лишь два раза YES. Значит отсчитываем два числа в массиве справа и видим третьей цифру 9, при А меньше 9 уже должно быть «NO».
Ответ: 9
Алгоритмический язык
Паскаль
var s, t: integer;
if (s < 5) and not (t > 3)
Бейсик
Python
DIM s, t AS INTEGER
IF s < 5 AND NOT t > 3 THEN
if (s < 5) and not (t > 3):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(2, –2); (–2, 4); (4, 1); (–12, 5); (0, –7); (1, 3); (8, 2); (3, 0); (23, 1).
Сколько было запусков, при которых программа напечатала «NO»?
Решение :
При s < 5 и не t > 3 программа печатает «YES», значит при
s ≥ 5 или t > 3 — «NO»
(2, –2) YES
(–2, 4) NO
(4, 1) YES
(–12, 5) NO
(0, –7) YES
(1, 3) YES
(8, 2) NO
(3, 0) YES
(23, 1) NO
Ответ: 4
Алгоритмический язык
Паскаль
var s, t, А: integer;
if (s > 10) or (t > А)
Бейсик
Python
DIM s, t, А AS INTEGER
IF s > 10 OR t > А THEN
if (s > 10) or (t > А):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Укажите наименьшее целое значение параметра А, при котором для указанных входных данных программа напечатает «NO» семь раз.
Решение :
При s > 10 или t > А программа печатает YES, значит
s ≤ 10 и t ≤ А — NO
Для s > 10 получаем: (11, 2), (11, 12) — то есть для этих вводных будет точно YES.
Все остальные у нас должны быть NO т.к. 9 вводов — 2 = 7 вводов оставшихся.
Для t ≤ А должно соблюдаться требование, то есть A должно быть больше, либо равно t, чтобы получить NO. t у нас второе число, а максимальное из вводимых — это 12. Оно и будет наименьшим целым А для наших условий. Значит А=12
Ответ: 12
Алгоритмический язык
Паскаль
var s, t, A: integer;
if (s > A) or (t > 12)
Бейсик
Python
DIM s, t, A AS INTEGER
IF s > A OR t > 12 THEN
if (s > A) or (t > 12):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(13, 2); (11, 12); (–12, 12); (2, –2); (–10, –10); (6, –5); (2, 8); (9, 10); (1, 13).
Укажите наименьшее целое значение параметра А, при котором для указанных входных данных программа напечатает «YES» два раза.
Решение :
При (s > A) или (t > 12) программа печатает «YES»
Для t > 12 значение (1, 13) выдаст «YES». Надо еще одно «YES».
(13, 2); (11, 12); (–12, 12); (2, –2); (–10, –10); (6, –5); (2, 8); (9, 10); (1, 13) .
Для s > A берем максимальное первое число в вводах, за исключением рассмотренного. Это 13. И снижаем его до следующего числа, чтобы оно было ему равно — это 11.
При s > 11 программа напечатает «YES» 2 раза — при вводе (13, 2) и (1, 13).
11 и будет наименьшим целым А.
Ответ: 11
Алгоритмический язык
Паскаль
var s, t, A: integer;
if (s > 10) or (t > А)
Бейсик
Python
DIM s, t, A AS INTEGER
IF s > 10 OR t > А THEN
if (s > 10) or (t > А):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Укажите наименьшее целое значение параметра А, при котором для указанных входных данных программа напечатает «YES» семь раз.
Решение :
Условие: (s > 10) or (t > А):
Для s > 10 выполняются (11, 2); (11, 12), то есть уже есть два «YES», надо еще 5.
(1, 2); (11, 2) ; (1, 12); (11, 12) ; (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Для t > А собираем массив по возрастанию для ввода t, за исключением рассмотренных (-12, 2, 5, 10, 11, 12, 12 ). При А = 2 будет пять случаев, где будет «YES» и A при этом минимальное.
Ответ: 2
Алгоритмический язык
Паскаль
var s, k: integer;
if (s < 6) and (k > 6)
Бейсик
Python
DIM k, s AS INTEGER
IF s < 6 AND k > 6 THEN
if s < 6 and k > 6:
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и k вводились следующие пары чисел:
(1, 11); (5, 9); (8, –12); (6, 6); (3, 11); (–10, –12); (–10, 11); (7, 1); (–12, 7).
Сколько было запусков, при которых программа напечатала «YES»?
Решение :
При s < 6 и k > 6 программа напечатает «YES»
(1, 11) YES
(5, 9) YES
(8, –12)
(6, 6)
(3, 11) YES
(–10, –12)
(–10, 11) YES
(7, 1)
(–12, 7) YES
Алгоритмический язык
Паскаль
var s, t, A: integer;
if (s > A) or (t > 12)
Бейсик
Python
DIM s, t, A AS INTEGER
IF s > A OR t > 12 THEN
if (s > A) or (t > 12):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(13, 2); (11, 12); (–12, 12); (2, –2); (–10, –10); (6, –5); (2, 8); (9, 10); (1, 13).
Укажите количество целых значений параметра А, при которых для указанных входных данных программа напечатает «YES» четыре раза.
Решение:
Условие (s > A) or (t > 12)
Для t > 12 и ввода (1, 13) будет один YES, надо еще 3 до 4 раз.
Для s > A рассмотрим массив во возрастанию первых чисел в вводе за исключением рассмотренного (-12, -10, 2, 6, 9, 11, 13). В нашем случае 3 раза YES будет выводиться при А = 6, 7, 8. Если А будет меньше 6, то YES выведется 4 раза, если больше 8, то 2. В итоге у нас 3 числа возможных А при которых YES будет выведено 3 раза и 1 у нас есть.
Ответ: 3
Алгоритмический язык
Паскаль
var s, t, A: integer;
if (s > 10) or (t > А)
Бейсик
Python
DIM s, t, A AS INTEGER
IF s > 10 OR t > А THEN
if (s > 10) or (t > А):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Укажите наибольшее целое значение параметра А, при котором для указанных входных данных программа напечатает «YES» шесть раз.
Решение:
Условие (s > 10) or (t > А).
Для s > 10 и ввода (11, 2); (11, 12) будет два YES, надо еще 4 раза до 6.
(1, 2); (11, 2) ; (1, 12); (11, 12) ; (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Для t > A рассмотрим массив по возрастанию вторых чисел в вводе за исключением рассмотренных (-12, 2, 5, 10, 11, 12, 12). В итоге отсчитываем 4 числа от большего значения (это 10) и берем максимально близкое меньшее к 10, то есть 9. В итоге у нас будет 4 вывода YES.
Ответ: 9
Алгоритмический язык
Паскаль
var s, t, A: integer;
if (s > 10) or (t > А)
Бейсик
Python
DIM s, t, A AS INTEGER
IF s > 10 OR t > А THEN
if (s > 10) or (t > А):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Укажите наибольшее целое значение параметра А, при котором для указанных входных данных программа напечатает «YES» восемь раз.
Решение:
Условие (s > 10) or (t > А)
Для s > 10 и ввода (11, 2); (11, 12) будет два YES, надо еще 6 раза до 8.
(1, 2); (11, 2) ; (1, 12); (11, 12) ; (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Для t > A рассмотрим массив по возрастанию вторых чисел в вводе за исключением рассмотренных (-12, 2, 5, 10, 11, 12, 12). В итоге отсчитываем 6 чисел от большего значения (это будет 2) и берем максимально близкое меньшее к 2, то есть 1. В итоге у нас будет 6 выводов YES.
Ответ: 1
Алгоритмический язык
Паскаль
var s, t, A: integer;
if (s > A) or (t > 12)
Бейсик
Python
DIM s, t, A AS INTEGER
IF s > A OR t > 12 THEN
if (s > A) or (t > 12):
C++
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(13, 2); (11, 12); (–12, 12); (2, –2); (–10, –10); (6, –5); (2, 8); (9, 10); (1, 13).
Укажите наименьшее целое значение параметра А, при котором для указанных входных данных программа напечатает «NO» четыре раза.
Решение:
Условие (s > A) or (t > 12)
Для t > 12 есть одно значение, при котором будет YES.
13, 2); (11, 12); (–12, 12); (2, –2); (–10, –10); (6, –5); (2, 8); (9, 10); (1, 13) .
Для s > A выберем массив по возрастанию первых чисел ввода (-12, -10, 2, 2, 6, 9, 11, 13). Нам надо, чтобы s=<A, чтобы получить NO, то есть отсчитываем 4 числа от минимального значения. Получается 2.
Ответ: 2
Алгоритмический язык
Паскаль
var s, t, A: integer;
begin
readln(s);
readln(t);
readln(A);
if (s > 10) or (t > А)
then writeln(«YES»)
else writeln(«NO»)
end.
Бейсик
Python
DIM s, t, A AS INTEGER
INPUT s
INPUT t
INPUT A
IF s > 10 OR t > А THEN
PRINT «YES»
ELSE
PRINT «NO»
ENDIF
s = int(input())
t = int(input())
A = int(input())
if (s > 10) or (t > А):
print(«YES»)
else:
print(«NO»)
C++
#include <iostream>
using namespace std;
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).
Укажите количество целых значений параметра А, при которых для указанных входных данных программа напечатает «NO» три раза.
Решение :
Заметим, что программа напечатает «NO», если переменная s будет меньше или равна 10, а переменная t будет меньше или равна А.
Из первой части условия получаем, что при вводе значений s и t (11, 2) и (11, 12) программа напечатает «YES» вне зависимости от значения A.
Заметим, что при A = 1 программа напечатает «NO» один раз, при 2 ≤ A ≤ 4 программа напечатает «NO» два раза, при 5 ≤ A ≤ 9 программа напечатает «NO» три раза, а при A > 9 программа будет печатать «NO» четыре и более раз. Таким образом, существует 5 значений параметра A, при которых «NO» будет напечатано три раза, а именно 5, 6, 7, 8, 9, следовательно, ответ — 5.
Ответ: 5.
Примечание.
Заметим, что в С++ для || — оператора логического ИЛИ может быть использовано альтернативное обозначение or.
Решение на языке Python.
def f(s, t, A):
if (s > 10) or (t > A):
return 0
else:
return 1
a = ((1, 2), (11, 2), (1, 12), (11, 12), (-11, -12), (-11, 12), (-12, 11), (10, 10), (10, 5))
kol = 0
for A in range(100):
count = 0
for i in range(9):
count += f(a[i][0], a[i][1], A)
if count == 3:
kol += 1
print(kol)