Почему я не знал об этой песочнице раньше, я бы понял else if сразу же!
У нас было похожее задание тут: по аналогии при запуске в случайном моменте появятся либо свитчер, либо кристалл. Мы не можем написать просто действие собратьКристалл() или переключить(). Нам нужна условная конструкция Если ... также если ...
moveForward()
if isOnClosedSwitch {
toggleSwitch()
} else if isOnGem {
collectGem()
}
moveForward()
if isOnClosedSwitch {
toggleSwitch()
} else if isOnGem {
collectGem()
}
По традиции перевожу буквально для понимания:
вперед()
if свитчерВыключен {
переключить()
} else if естьКристалл {
собрать()
}
вперед()
if свитчерВыключен {
переключить()
} else if естьКристалл {
собрать()
}
Конструкция работает так:
ЕСЛИ свитчерВыключен {
переключить()
} ТАКЖЕ ЕСЛИ естьКристалл {
собрать()
}
〰️Если под ногами нет переключателя, то он не будет выполнять команду переключить() т.к. условие не выполнилось, и программа выполнения сразу пойдет в секцию ТАКЖЕ ЕСЛИ. Может быть и так, что нет ни кристалла ни переключателя или наоборот будет всё вместе, но в нашей задаче такого условия нет :)
🔴 Напишите в комментариях код выполнения внутри цикла for i in 1 ... 2 {}, чтобы сократить написание кода. Например таких действий будет 10, 20, 30 вместо 2. Подсказка тут...