Таких скидок больше не будет!

осталось мест 57
Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Посмотреть все тесты нейросети

Тест на тему Найди ошибку в программе на Python

07 июня 2025 21:36

{Другой предмет}
11 Класс

Этот тест сгенерирован искусственным интеллектом. Возможны ошибки.

Сгенерировать свой тест

Конечно! Ниже представлен тест по теме «Найди ошибку в программе на Python» для учеников 11 класса по предмету Информатика. В тесте представлены открытые вопросы, каждый вопрос включает пример программы с ошибкой. Также указаны правильные ответы и объяснения.


Тест по Информатике

Тема: Найди ошибку в программе на Python
Класс: 11
Тип вопросов: Открытый
Количество вопросов: 10
Ответы предоставлены


Вопрос 1:
Рассмотрите следующий код:

x = 10
if x = 5:
    print("x равно 5")

Что не так в этом коде? Найдите и объясните ошибку.

Ответ:
Ошибка в использовании оператора присваивания = вместо оператора сравнения ==. В условии должно быть:

if x == 5:

Вопрос 2:
Рассмотрите следующий код:

def sum(a, b):
    return a + b

print(sum(3))

Что не так в этом коде?

Ответ:
Функция sum вызывается с одним аргументом, хотя она ожидает два. Это вызовет ошибку TypeError. Нужно передать оба аргумента, например:

print(sum(3, 4))

Вопрос 3:
Рассмотрите программу:

list1 = [1, 2, 3]
for i in range(len(list1)):
    list1.append(i)
print(list1)

Что в этом коде не так и почему?

Ответ:
Цикл модифицирует список во время итерации, что может привести к бесконечному циклу или нежелательным результатам. Лучше сначала определить длину списка или использовать другой подход. Например, так:

for i in range(len(list1)):
    list1.append(i)

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


Вопрос 4:
Рассмотрите следующий кусок кода:

a = 0
while a < 5:
    print(a)
    a = a + 1
else:
    print("Завершено")

Что неправильно или можно улучшить?

Ответ:
Код работает корректно и выполняет цикл с выводом чисел от 0 до 4, после чего выводит "Завершено". Ошибок нет, можно оставить так.


Вопрос 5:
Рассмотрите программу:

name = input("Введите ваше имя: ")
print("Привет, " + name)

Что произойдет при вводе? Есть ли ошибки?

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


Вопрос 6:
Рассмотрите код:

try:
    num = int(input("Введите число: "))
except:
    print("Ошибка ввода")
print("Ваша цифра: " + num)

Что не так?

Ответ:
Здесь переменная num определяется внутри блока try, а в случае ошибки будет вызвано исключение, и потом код попытается вывести num, которая не определена. Следует разместить вывод внутри блока try, или определить num заранее. Исправленный вариант:

try:
    num = int(input("Введите число: "))
    print("Ваша цифра: " + str(num))
except:
    print("Ошибка ввода")

Вопрос 7:
Рассмотрите следующую программу:

def factorial(n):
    if n == 0:
        return 1
    else:
        return n * factorial(n - 1)

print(factorial("5"))

Что не так?

Ответ:
Функция ожидает числовой аргумент, а передано строковое значение "5". Это вызовет ошибку TypeError. Нужно передать число, например:

print(factorial(5))

Вопрос 8:
Рассмотрите код:

a = 10
b = 0
print(a / b)

Что произойдет и почему?

Ответ:
Произойдет ошибка деления на ноль (ZeroDivisionError). В Python деление на ноль недопустимо.


Вопрос 9:
Программа:

numbers = [1, 2, 3, 4, 5]
for i in range(len(numbers)):
    if numbers[i] % 2 == 0:
        print("Четное число:", numbers[i])

Может ли в этой программе быть ошибка?

Ответ:
Нет, программа корректно выводит четные числа из списка.


Вопрос 10:
Рассмотрите код:

x = 5
if x > 0:
print("Положительное число")

Что не так?

Ответ:
Отсутствие отступа перед строкой print вызовет синтаксическую ошибку. Нужно исправить отступ:

if x > 0:
    print("Положительное число")

Если нужен файл с тестом в текстовом или PDF-формате — скажите, я подготовлю его!


Сгенерировать свой тест

Популярные тесты

{Другой предмет}
7 Класс
{Другой предмет}
8 Класс

Саша — ассистент в телеграмме