• Предмет: Информатика
  • Автор: ihoretpipenko
  • Вопрос задан 3 месяца назад

def ranger(speed_sheep: int = 0) -> dict:
for star in stars:
range_time = star[1]/speed_sheep
print(star[0], range_time)

if range_time > 10:
print("no")

else: range_time < 9;
print("yes")

ranger(5000000)



naidi osibky

Ответы

Ответ дал: antonkovalkin5
1

Ответ:

1. Отсутствует объявление переменной `stars`, которую используется в цикле `for`. Необходимо предварительно определить или инициализировать переменную `stars`.

2. Отсутствуют отступы для блоков кода внутри функции `ranger`. В Python отступы являются важным синтаксическим элементом и определяют блоки кода. Необходимо добавить отступы для строк, находящихся внутри функции `ranger`.

3. В условии `else` присутствует некорректное выражение `range_time < 9;`. Вместо точки с запятой `;` следует использовать двоеточие `:` для обозначения начала блока кода. Кроме того, условие `range_time < 9` в данном случае излишне, так как предыдущее условие `range_time > 10` уже проверяет все остальные случаи. Можно просто использовать `else:` без условия.

Исправленный вариант кода:

def ranger(speed_sheep: int = 0) -> None:

stars = [("Star A", 100), ("Star B", 200), ("Star C", 300)] # Пример инициализации переменной stars

for star in stars:

range_time = star[1] / speed_sheep

print(star[0], range_time)

if range_time > 10:

print("no")

else:

print("yes")

ranger(5000000).


ihoretpipenko: no ja rabotay v Jupitere
ihoretpipenko: stars koroche v drugom bloke
Вас заинтересует