Помогите с алгоритмом открытия и закрытия шкафчиков
Всем привет!!
Я изучаю программирование и пытаюсь решить следующее упражнение:
В школьном коридоре есть 11 шкафчиков с номерами от 0 до 10, все они закрыты. Следуйте инструкциям в следующем алгоритме псевдокода, а затем ответьте на следующий вопрос.
Алгоритм:
1. Количество шкафчиков для перемещения ("шаг") равна 1.
2. Перейдите к первому шкафчику.
3. Если вы находитесь в конце шкафчиков или позади них, добавьте 1 к размеру шага, а затем перейдите к шагу 2.
Если размер шага больше 10, перейдите к шагу 7.
4. Откройте или закройте шкафчик. Например: если шкафчик, перед которым вы стоите, находится
закрыто, открой его. Если шкафчик уже открыт, закройте его.
5. переместите шкафчики "размер шага" вниз (то есть, если размер шага равен 1, Перейдите к следующему шкафчику. Если это
это 2, переместить 2 шкафчика вниз, пропуская 1 и т. д.).
6. Перейдите к шагу 3.
7. Конец.
Какие номера шкафчиков открыты?
Правильные ответы-1,4,9 ; но мои ответы-1,4,9,10 . Любой может объяснить мне , в чем моя ошибка?
Большое спасибо.
Что я уже пробовал:
subprocess fillinguparray(name,size) for i<--0 to size with step 1 do Write "CLOSE" Read name[i] endfor EndSubProcess subprocess showscreen(name,size) For i<--0 to size with step 1 do Print name[i] endfor EndSubProcess Algorithm no_title stepsize=1 Dimension lockers[11] fillinguparray(lockers,10); While stepsize<10 do For i<--0 to 10 with step stepsize do if lockers[i] = "CLOSE" then lockers[i] = "OPEN" ; if not if lockers[i] = "OPEN" then lockers[i] = "CLOSE" ; endif Endif EndFor stepsize=stepsize+1; EndWhile showscreen(lockers,10) EndAlgorithm
CHill60
Вы опубликовали алгоритм, но не вопрос. Нам также нужна ваша работа на английском языке пожалуйста
Patrice T
Из вопроса: "правильные ответы-1,4,9 ; но мои ответы-1,4,9,10 . Любой может объяснить мне , в чем моя ошибка?"
CHill60
Это вопрос ОП - смысл учения не ясен. Это те шкафчики, которые надо открывать, закрывать, не трогать - что?