Учимся вместе

Бесплатные Уроки Python для Детей. Python на экзамене по информатике

Михаил 16 минут на чтение
Читать публикацию
Бесплатные Уроки Python для Детей. Python на экзамене по информатике

Перед началом занятий на нашем Бесплатном Курсе Python для детей и подростков, вам потребуется установить Интерпретатор языка и любой специализированный текстовый редактор, например: visual studio code или встроенный IDLE* (Integrated Development Environment - Встроенная Среда для Разработки):

Подробнее о том, что такое интерпретатор языка, зачем нужны текстовые редакторы и многие другие темы мы раскрываем на наших курсах программирования:

На прошлых занятиях мы уже научились сохранять значения в Переменных, читать Пользовательский Ввод через input и принимать решения с помощью if (Если). Сегодня применим эти же инструменты не к игре «Приключение», а к формату, в котором компьютер проверяет программы на экзамене по информатике.

Зачем Python нужен на экзамене по информатике

На ОГЭ и ЕГЭ по информатике часть заданий — это не тест с вариантами, а написание программы. Компьютер запускает ваш код, передаёт в него числа и сравнивает то, что программа напечатала, с правильным ответом.

Важно понять одну идею: экзамен — это тот же самый Командно-Строчный Интерфейс (CLI), с которым мы работали на уроке 2. Только «пользователь» здесь — не вы за клавиатурой, а проверяющая система. Она не видит картинки, не нажимает кнопки и не читает подсказки вида «Введите число:». Она умеет только одно:

  1. Передать в программу текст (как будто кто-то нажал Enter в input)
  2. Прочитать то, что программа отправила в print

Поэтому на экзамене Python — не «другой язык», а тот же Python, только с очень строгими правилами общения.

Схема: ввод, программа, вывод

Как выглядит задание, которое проверяет компьютер

Представим типовую формулировку (это учебный пример, не фрагмент реального КИМ):

Вводится целое число N, затем N целых чисел. Определите, сколько среди них положительных чисел. Программа должна вывести одно число — количество.

Разберём формулировку так же, как мы разбирали знак @ в игре — по смыслу, а не «заучить наизусть»:

  • Вводится — значит, данные придут через input (ввод)
  • Целое число — значит, после ввода нужна операция преобразования Строки в Число: int
  • Затем N целых чисел — значит, дальше будет Повтор (Цикл), ровно N раз
  • Сколько среди них положительных — значит, понадобится Сравнение > 0 и Ветвление if
  • Вывести одно число — значит, в конце ровно один print и больше никакого текста

Читаем данные так, как этого хочет экзамен

Вспомним правило с урока 2: функция input всегда возвращает Строку. Даже если вы ввели 5, для Python это текст "5", а не число пять. Чтобы сравнивать «больше нуля», строку нужно превратить в Целое Число.

Создайте новый файл, например exam_count.py, и запишите первые инструкции:

n = int(input())

Преобразование строки в число

Разберём слева направо, как на занятии про индексы:

  1. input() — вызвать ожидание ввода. Проверяющая система подставит сюда первое число, например 4
  2. Круглые скобки пустые — на экзамене не пишем текст внутри input("Введите N:"). Этот текст тоже уйдёт в вывод и ответ станет неверным
  3. int(...) — встроенная функция Преобразования Типа. Она берёт Строку и пытается прочитать её как Целое Число
  4. n =Оператор Присваивания. Имя n становится указателем на количество чисел, которые ещё предстоит прочитать

Если сейчас запустить программу и ввести 4, она просто завершится: мы сохранили N, но ещё ничего не прочитали и не напечатали. Это нормально — как пустой список world в начале игры.

Цикл: повторяем действие ровно N раз

В Scratch на уроке 4 цикл был блоком «повторять всегда» или «повторить N раз». В Python ту же идею записывают так:

count = 0
for i in range(n):
    value = int(input())

Цикл считает положительные числа

Новые слова:

  • countПеременная-счётчик. Сначала в ней 0, потому что положительных чисел мы ещё не встретили. Это как пустая клетка _ до появления героя
  • for i in range(n):Повтор. range(n) создаёт последовательность длиной N: если N равно 4, тело цикла исполнится четыре раза. Имя i — это номер повтора, сегодня оно нам почти не понадобится, но Python просит его указать
  • Двоеточие : и отступ справа — граница блока, как «внутренности» жёлтого блока в Scratch. Все строки с отступом принадлежат циклу
  • value = int(input()) — на каждом повторе читаем следующее число

Ветвление: считаем только положительные

На уроке 3 мы уже сравнивали ввод со знаком >. Сейчас сравнение ещё короче: число больше нуля или нет.

Добавьте внутрь цикла:

if value > 0:
    count += 1

  • if value > 0: — вопрос компьютеру. Результат СравненияБулев Тип (True или False)
  • count += 1 — увеличить счётчик на единицу. Это тот же приём, что hero_position += 1 при шаге героя вправо
  • Если число ноль или отрицательное, ветвление не срабатывает, и мы просто переходим к следующему вводу

После цикла остаётся отдать ответ проверяющей системе:

print(count)

Итоговый вид программы текущего урока:

n = int(input())
count = 0
for i in range(n):
    value = int(input())
    if value > 0:
        count += 1
print(count)

Запустите программу и введите, например:

4
-1
0
7
3

Если всё сделано верно, в консоли появится одно число: 2. Положительных здесь два: 7 и 3. Никаких фраз «Ответ:», никаких пустых строк после print.

Проблемы и их Решение

Неверный и верный вывод программы
Давайте сломаем программу специально — так мы делали с героем, который оставлял за собой второй знак @.

Проблема 1. Написали input("Сколько чисел? "). На своём компьютере всё выглядит вежливо, на экзамене программа получает «не тот» вывод: вместе с ответом уехала подсказка. Решение: только input() без текста.

Проблема 2. Забыли int и написали value = input(). Тогда сравнение value > 0 либо выдаст ошибку, либо будет сравнивать Строки, а не Числа. Для Python "7" и 7 — разные Типы Данных. Решение: каждое экзаменационное число проводить через int.

Проблема 3. Поставили print внутрь цикла. Тогда программа напечатает несколько чисел, а проверяющая система ждёт одно. Решение: сначала закончить все повторы, потом один print(count).

Проблема 4. Перепутали = и ==. Знак =Присваивание (сохранить). Знак ==Сравнение (задать вопрос). В условии if нужен именно ==, если сравниваете на равенство, и > / <, если сравниваете величину.

Заключение

Сегодня мы увидели, что экзаменационная программа — это не отдельный «школьный Python», а знакомые инструменты: Ввод, Преобразование Типа, Цикл, Ветвление и один аккуратный Вывод.

В качестве домашнего задания:

  1. Измените программу так, чтобы она считала отрицательные числа, а не положительные
  2. Измените программу так, чтобы она считала числа, равные нулю
  3. Повторите по официальной документации операции int, range и цикл forвстроенные функции Python

На следующем занятии можно будет разобрать, как читать несколько чисел из одной строки через split — этот приём часто встречается в заданиях, где данные даны в одну линию.

Ждем вас с нетерпением на следующем нашем уроке, а чтобы не пропустить важные события нашего центра подписывайтесь на нас в социальных сетях:
← Все статьи
Поделиться постом в социальных сетях
Обучение в Нашем Центре
python для начинающих
python для начинающих
36 занятий
от 12 лет

Начинаем программировать на Python (Пайтон/Питон) - одном из самых популярных языков на данный момент времени. Вы сможете освоить создание проектов любой сложности - от простых Игр, до комплексных Веб Приложений.

Цена: 8400 в месяц
scratch разработчик игр
scratch разработчик игр
36 занятий
от 9 лет

Этот курс специально разработан для создания игр на Scratch. Дети узнают как строится процесс формирования виртуальных миров, параллельно развивая такие навыки как: Абстрактное Мышление, Логику и Дизайн

Цена: 8400 в месяц
Веб дизайн для детей
Веб дизайн для детей
36 занятий
от 11 лет

В данный курс включено изучение основ web-дизайна, знакомство с html, css и javascript. В течение занятий ребенок сможет создать собственную страничку и разместить ее в интернете.

Цена: 8400 в месяц
Индивидуальные занятия
Индивидуальные занятия
от 4 занятий
от 6 лет

Заниматься в своем темпе выбранным предметом, учитывая интересы и возможности можно индивидуально. Составим программу обучения под ваш запрос, навыки и возраст. Математика, программирование, физика, информатика, английский и русский язык.

Цена: от 2600 за занятие
Будем рады встрече

Наша школа

Найдите нас на карте или свяжитесь с нами — поможем сориентироваться.

Начнём знакомство

Попробуйте учиться с нами

Поможем выбрать направление и пригласим на бесплатное пробное занятие.

Оставьте заявку — перезвоним в течение дня

Заявка принята!
Где проходят занятия

Выберите школу для занятий

  1. У нас современное оборудование
  2. Просторные и светлые аудитории
  3. Эпидемиологическая безопасность вашего ребенка