СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до 23.07.2025

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Разбор задания ОГЭ по информатике. Январь 2025. Программа с условным оператором. Задания для подготовки

Категория: Информатика

Нажмите, чтобы узнать подробности

Тип 6 № 36851  

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

 

 

Алгоритмический язык Python Паскаль
 

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

 

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

 

 

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

 

 

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

 

(13, 2); (11, 12); (−12, 12); (2, −2); (–10, –10); (6, −5); (2, 8); (9, 10); (1, 13).

 

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

 

Решение.

Заметим, что программа напечатает «YES», если переменная t будет больше 12, а переменная s будет больше А.

Из первой части условия получаем, что при вводе значений s и t (1, 13) программа напечатает «YES» вне зависимости от значения A. При отрицательных значениях A программа будет выводить «YES» больше четырех раз.

Заметим, что при A  =  1 программа напечатает «YES» семь раз, при 2 ≤ A ≤ 5 программа напечатает «YES» пять раз, а при A  =  6 программа будет печатать «YES» четыре раза. Таким образом, ответ  — 6.

 

Ответ: 6.

 

Приведем другое решение на языке Python.

 

 

def f(s, t, A): if (s > A) or (t > 12): return 1 else: return 0 a = ((13, 2), (11, 12), (-12, 12), (2, -2), (-10, -10), (6, -5), (2, 8), (9, 10), (1, 13)) 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 == 4: print(A) break

Примечание.

Логический оператор «OR» в процессе выполнения принимает значение «true», если x или y равен true; в противном случае  —  «false».

Источники: ОГЭ по информатике 03.05.2024. Досрочная волна; ОГЭ по информатике 10.06.2024. Основная волна. Вариант Умскул.
Показать полностью

Просмотр содержимого документа
«Разбор задания ОГЭ по информатике. Январь 2025. Программа с условным оператором. Задания для подготовки»

Тип 6 № 36851

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

 

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

Python

Паскаль

алг нач цел s, t, A ввод s ввод t ввод A если s A или t 12     то вывод "YES"     иначе вывод "NO" все кон s = int(input()) t = int(input()) A = int(input()) if (sA) or t 12:     print("YES") else:     print("NO") var A, s, t: integer; begin     readln(s);     readln(t);     readln(A);     if (s A) or (t 12)         then writeln('YES')         else writeln('NO') end.

 

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

(13, 2); (11, 12); (−12, 12); (2, −2); (–10, –10); (6, −5); (2, 8); (9, 10); (1, 13).

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

Решение.

Заметим, что программа напечатает «YES», если переменная t будет больше 12, а переменная s будет больше А.

Из первой части условия получаем, что при вводе значений s и t (1, 13) программа напечатает «YES» вне зависимости от значения A. При отрицательных значениях A программа будет выводить «YES» больше четырех раз.

Заметим, что при A  =  1 программа напечатает «YES» семь раз, при 2 ≤ A ≤ 5 программа напечатает «YES» пять раз, а при A  =  6 программа будет печатать «YES» четыре раза. Таким образом, ответ  — 6.

 

Ответ: 6.

 

Приведем другое решение на языке Python.

def f(s, t, A): if (s A) or (t 12): return 1 else: return 0 a = ((13, 2), (11, 12), (-12, 12), (2, -2), (-10, -10), (6, -5), (2, 8), (9, 10), (1, 13)) 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 == 4: print(A) break

Примечание.

Логический оператор «OR» в процессе выполнения принимает значение «true», если x или y равен true; в противном случае  —  «false».

Источники:

ОГЭ по информатике 03.05.2024. Досрочная волна;

ОГЭ по информатике 10.06.2024. Основная волна. Вариант Умскул.


Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!