Почему правильно работающий код не проходит тест?

Есть 3, почти 4 работающих в pycharm кода, которые не проходят тест. Все на одну тему: Реализуйте функцию print_table_of_squares(from, to), которая считает квадраты чисел от from до to и печатает на экран строки square of <число> is <результат>. Примеры вызова:
print_table_of_squares(1, 3)
# => square of 1 is 1
# => square of 2 is 4
# => square of 3 is 9

Код в lambda:
print_table_of_square = lambda s, e: '\n'.join(f'square of {i} is {i*i}' for i in range(s, e + 1))
print(print_table_of_square(s=1, e=3))

Ну здесь тест не видит name функции, нужно начало с def
А вот в других 3 ошибка одна:
AssertionError: assert '' == 'square of 1 ... of 10 is 100'

Код с range:
def print_table_of_squares(start, end):
    end = end + 1
    result = ''

    for i in range(start, end):
        count = i ** 2
        result += f'square of {i} is {count}\n'

    return result
print(print_table_of_squares(start=1, end=3))

Код с while:
def print_table_of_squares(start, end):
    i = start -1
    result = ''
    while i < end:
        i += 1
        count = i ** 2
        result += f'square of {i} is {count}\n'
    return result
print(print_table_of_squares(start=1, end=3))

И код с list(не до конца сделан, но результат тот же):
def print_table_of_squares(start, end):
    result = ''
    for i in range(start, end + 1):
        list = [f'square of {i} is {i*i} ']
        result += '\n'.join(list)

    return result
print(print_table_of_squares(start=1, end=3))
  • Вопрос задан
  • 205 просмотров
Решения вопроса 2
0xD34F
@0xD34F
Откуда вы взяли, что функция должна что-то возвращать? Судя по названию - не должна. Вместо собирания и возврата строки сразу печатайте отдельные результаты. Ну или оставьте собирание строки и вместо return сделайте print.
Ответ написан
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Реализуйте функцию ..., которая ... печатает на экран
Ваша функция ничего на экран не печатает.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы