Top.Mail.Ru
Ответы

Прогромирование пайтон помогите решить

решть задачу спомощью if и elif
А Вы знаете, как работает светофор? Пожалуй, что каждый школьник знаком с этим устройством, но не каждый точно может описать алгоритм его работы. Если сомневаетесь, то спросите себя: «Сколько раз мигает зеленый сигнал светофора?».

Рассмотрим самый обычный вертикальный автомобильный светофор, состоящий из трех секций для индикации (сверху вниз) красного, желтого и зеленого сигналов. Напомним его функционал. Каждая секция может отражать два цвета: соответствующий ей цвет во включенном состоянии и черный цвет в выключенном состоянии. Когда светофор исправен, то ему доступно 6 возможных состояний. В обычном рабочем режиме мы имеем следующий алгоритм работы:

горит только зеленый сигнал;
зеленый сигнал мигает;
гаснет зеленый, загорается желтый;
гаснет желтый, загорается красный;
загорается желтый и горит вместе с красным;
гаснут желтый и красный и все повторяется с пункта 1.
Еще следует не забывать о том, что светофор может работать в режиме нерегулируемого перекрестка, когда присутствует только желтый мигающий сигнал.

По текущей индикации сигналов светофора следует определить его следующее состояние, в которое он должен перейти, либо определить, что светофор неисправен.

Входные данные
Входной файл INPUT.TXT содержит в трех строках описание текущего состояния светофора. Первая строка описывает верхнюю секцию, вторая – среднюю, третья – нижнюю. Состояние каждой из секций определяется ее цветом: black (черный), red (красный), yellow (желтый) и green (зеленый). Если некоторый цвет мигает, то его название записывается в верхнем регистре, иначе – в нижнем.

Выходные данные
В выходной файл OUTPUT.TXT выведите ответ на задачу в том же формате, если светофор исправен. В случае неисправности светофора выведите «error».
я сделал такой код:
top = input()
middle = input()
bottom = input() # Using the correct variable name

if top == "black" and middle == "black" and bottom == "green":
bottom = "GREEN"
print(top)
print(middle)
print(bottom)
elif top == "black" and middle == "black" and bottom == "GREEN":
middle = "yellow"
bottom = "black"
print(top)
print(middle)
print(bottom)
elif top == "black" and middle == "yellow" and bottom == "black":
top = "red"
print(top)
print(middle)
print(bottom)
elif top == "red" and middle == "black" and bottom == "black":
middle = "YELLOW"
print(top)
print(middle)
print(bottom)
elif top == "red" and middle == "yellow" and bottom == "black":
top = "black"
middle = "black"
bottom = "green"
print(top)
print(middle)
print(bottom)
else:
print("error")
когда я пишу
black
YELLOW
black пишется ошибка кто может понять почему

Дополнен

top=input()
middle=input()
bottom=input()
if (top=="black" and middle=="black" and bottom=="green"):
bottom="GREEN"
print(top)
print(middle)
print(bottom)
elif(top=="black" and middle=="black" and bottom=="GREEN"):
middle="yellow"
bottom=="black"
print(top)
print(middle)
print(bottom)
elif(top=="black" and middle=="yellow" and bottom=="black"):
top=="red"
middle="black"
print(top)
print(middle)
print(bottom)
elif(top=="red" and middle=="black" and bottom=="black" ):
middle=="yellow
print(top)
print(middle)
print(bottom)
elif(top=="red" and middle=="yellow" and bottom=="black"):
top = "black"
middle = "black"
bottom=="green"
print(top)
print(middle)
print(bottom)
else:
print("error")

По дате
По Рейтингу
Аватар пользователя
Мастер
6мес

Пробуй

top = input()
middle = input()
bottom = input() # Using the correct variable name

if top == "black" and middle == "black" and bottom == "green":
middle = "yellow"
bottom = "black"
print('--------')
print(top)
print(middle)
print(bottom)
elif top == "black" and middle == "yellow" and bottom == "black":
top = "red"
middle = "black"
print('--------')
print(top)
print(middle)
print(bottom)
elif top == "red" and middle == "black" and bottom == "black":
middle = "yellow"
print('--------')
print(top)
print(middle)
print(bottom)
elif top == "red" and middle == "yellow" and bottom == "black":
top = "black"
middle = "black"
bottom = "green"
print('--------')
print(top)
print(middle)
print(bottom)
else:
print('--------')
print("error")

Аватар пользователя
Ученик
6мес

Ого, больше 0 букв
Читать не буду