Открыть тренажёр →
💻 Информатика

Анализ программ

Теория, разобранные примеры и практика по теме «Анализ программ» для подготовки к ОГЭ по информатике в 2027 году.

Выверено под ФИПИ · обновлено 29 сентября 2026

Эта тема встречается в задании №6.

🎯 Сразу к практике: реши задачу по этой теме — проверю мгновенно →

Теория

Понятия

Ключевая идея

Приём (алгоритм)

  1. Для каждой пары найди k = большее из двух чисел.
  2. Выпиши все k и отсортируй по возрастанию.
  3. Нужно n ответов YES → ровно n наибольших значений k должны быть больше A, остальные ≤ A.
  4. Порог = n-е с конца значение k. Предыдущее = следующее за ним к началу.
  5. Подбери целое A: предыдущее k ≤ A < порог.

Проверка

Термины темы

Понятия из теории выше — нажми, чтобы разобрать определение, признаки и пример:

Попробуй решить

Реши задачу этого типа прямо здесь — проверю сразу и покажу разбор:

  1. Ниже на двух языках записана одна и та же программа. Программа получает на вход два целых числа s и t и при некотором значении параметра A выводит «YES» или «NO».

    Python:

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

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

    алг
    нач
      цел s, t
      ввод s, t
      если (s > A) или (t > A)
        то вывод "YES"
        иначе вывод "NO"
      все
    кон

    Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
    (25, 17); (15, -4); (-12, 6); (10, -14); (5, -4); (-18, 1); (-11, 4); (-7, 2); (-19, -3).

    Укажите наибольшее целое значение параметра A, при котором программа напечатает «YES» ровно 5 раз.

  2. Ниже на двух языках записана одна и та же программа. Программа получает на вход два целых числа s и t и при некотором значении параметра A выводит «YES» или «NO».

    Python:

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

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

    алг
    нач
      цел s, t
      ввод s, t
      если (s > A) или (t > A)
        то вывод "YES"
        иначе вывод "NO"
      все
    кон

    Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
    (-13, 6); (0, -1); (3, 11); (-11, 19); (19, -17); (-19, 19); (-21, 4); (-10, 23); (2, 8).

    Укажите наибольшее целое значение параметра A, при котором программа напечатает «YES» ровно 5 раз.

  3. Ниже на двух языках записана одна и та же программа. Программа получает на вход два целых числа s и t и при некотором значении параметра A выводит «YES» или «NO».

    Python:

    s = int(input())
    t = int(input())
    if (s < A) or (t < A):
        print("YES")
    else:
        print("NO")

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

    алг
    нач
      цел s, t
      ввод s, t
      если (s < A) или (t < A)
        то вывод "YES"
        иначе вывод "NO"
      все
    кон

    Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
    (9, 6); (2, 11); (24, -17); (-3, 23); (6, 24); (2, -9); (-24, 1); (-15, -25); (17, 6).

    Укажите наименьшее целое значение параметра A, при котором программа напечатает «YES» ровно 3 раза.

  4. Ниже на двух языках записана одна и та же программа. Программа получает на вход два целых числа s и t и при некотором значении параметра A выводит «YES» или «NO».

    Python:

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

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

    алг
    нач
      цел s, t
      ввод s, t
      если (s > A) или (t > A)
        то вывод "YES"
        иначе вывод "NO"
      все
    кон

    Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
    (9, 22); (-14, 16); (-16, 2); (-1, -25); (-18, -19); (-3, -21); (-5, -13); (-16, -16); (1, 18).

    Укажите наименьшее целое значение параметра A, при котором программа напечатает «NO» ровно 8 раз.

  5. Ниже на двух языках записана одна и та же программа. Программа получает на вход два целых числа s и t и при некотором значении параметра A выводит «YES» или «NO».

    Python:

    s = int(input())
    t = int(input())
    if (s < A) or (t < A):
        print("YES")
    else:
        print("NO")

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

    алг
    нач
      цел s, t
      ввод s, t
      если (s < A) или (t < A)
        то вывод "YES"
        иначе вывод "NO"
      все
    кон

    Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
    (-6, 21); (-20, 25); (-3, 21); (1, -15); (-18, -22); (12, -25); (6, -9); (-8, -19); (-8, 24).

    Укажите наибольшее целое значение параметра A, при котором программа напечатает «YES» ровно 8 раз.

  6. Ниже на двух языках записана одна и та же программа. Программа получает на вход два целых числа s и t и при некотором значении параметра A выводит «YES» или «NO».

    Python:

    s = int(input())
    t = int(input())
    if (s > A) and (t > A):
        print("YES")
    else:
        print("NO")

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

    алг
    нач
      цел s, t
      ввод s, t
      если (s > A) и (t > A)
        то вывод "YES"
        иначе вывод "NO"
      все
    кон

    Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
    (-21, 11); (1, 16); (-7, 12); (-5, -19); (9, -17); (18, 7); (-1, -25); (-12, 22); (0, -5).

    Укажите наибольшее целое значение параметра A, при котором программа напечатает «NO» ровно 4 раза.

Разбор заданий

Разобранный пример

Ниже на двух языках записана одна и та же программа. Программа получает на вход два целых числа s и t и при некотором значении параметра A выводит «YES» или «NO».

Python:

s = int(input())
t = int(input())
if (s < A) or (t < A):
    print("YES")
else:
    print("NO")

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

алг
нач
  цел s, t
  ввод s, t
  если (s < A) или (t < A)
    то вывод "YES"
    иначе вывод "NO"
  все
кон

Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(14, -24); (-4, -11); (-19, -17); (-15, 17); (-20, 1); (-6, -24); (18, -23); (-14, 14); (-14, 17).

Укажите наименьшее целое значение параметра A, при котором программа напечатает «YES» ровно 4 раза.

Показать решение

Программа печатает «YES», когда (s < A) или (t < A); иначе «NO».
Это равносильно условию A > k, где k — наименьшее из двух чисел пары.
Значения k для девяти пар (по возрастанию): -24, -24, -23, -20, -19, -15, -14, -14, -11.
«YES» выходит для пар с k < A, «NO» — для остальных (k ≥ A). Чтобы «YES» вышло ровно 4 раза, меньше A должны быть ровно 4 значений k из девяти: 4-е по возрастанию (-20) меньше A, а 5-е (-19) — уже нет. Значит -20 < A ≤ -19, то есть A от -19 до -19.
Наименьшее целое из этого промежутка: -19.
Ответ: -19.

Разобранный пример

Ниже на двух языках записана одна и та же программа. Программа получает на вход два целых числа s и t и при некотором значении параметра A выводит «YES» или «NO».

Python:

s = int(input())
t = int(input())
if (s < A) and (t < A):
    print("YES")
else:
    print("NO")

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

алг
нач
  цел s, t
  ввод s, t
  если (s < A) и (t < A)
    то вывод "YES"
    иначе вывод "NO"
  все
кон

Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(12, -22); (1, -22); (25, 2); (4, 12); (-14, 3); (-7, 22); (18, -18); (-25, 12); (-20, 8).

Укажите наименьшее целое значение параметра A, при котором программа напечатает «YES» ровно 8 раз.

Показать решение

Программа печатает «YES», когда (s < A) и (t < A); иначе «NO».
Это равносильно условию A > k, где k — наибольшее из двух чисел пары.
Значения k для девяти пар (по возрастанию): 1, 3, 8, 12, 12, 12, 18, 22, 25.
«YES» выходит для пар с k < A, «NO» — для остальных (k ≥ A). Чтобы «YES» вышло ровно 8 раз, меньше A должны быть ровно 8 значений k из девяти: 8-е по возрастанию (22) меньше A, а 9-е (25) — уже нет. Значит 22 < A ≤ 25, то есть A от 23 до 25.
Наименьшее целое из этого промежутка: 23.
Ответ: 23.

Реши задачи по этой теме в тренажёре →Мгновенная проверка, подсказки и разбор именно твоей ошибки. Бесплатно и без регистрации.

Частые вопросы

Что нужно знать по теме «Анализ программ» для ОГЭ по информатике?

YES выводится, когда s > A или t > A — то есть хотя бы одно число пары больше A. Пусть k = max(s, t) — большее в паре. Тогда YES ⇔ A < k , то есть k > A. Ключевая идея Число ответов YES = сколько пар имеют k > A. Зависимость монотонна : чем больше A, тем меньше YES. Приём (алгоритм) 1. Для каждой… Полный разбор с примерами — выше на этой странице.

В каких заданиях ОГЭ по информатике встречается тема «Анализ программ»?

Тема «Анализ программ» встречается в задании №6 — по действующим спецификации и демоверсии ФИПИ.

Где потренироваться в заданиях по теме «Анализ программ»?

В тренажёре Совелия — задачи этого типа с мгновенной проверкой, подсказками и разбором именно твоей ошибки. Бесплатно, без рекламы, прогресс сохраняется.