#include <iostream>
int main()
{
int n;
float l;
std::cin >> n >> l;
switch (n)
{
case 1:
std::cout << "Length: " << l / 10;
break;
case 2:
std::cout << "Length: " << l * 1000;
break;
case 3:
std::cout << "Length: " << l;
break;
case 4:
std::cout << "Length: " << l / 1000;
break;
case 5:
std::cout << "Length: " << l / 100;
break;
default:
break;
}
std::cout << std::endl;
system("pause");
return 0;
}
1.
использовать Робот
алг 3 полоски
нач
нц пока снизу стена
закрасить
влево
кц
нц пока снизу свободно
влево
кц
нц пока слева свободно
закрасить
влево
кц
закрасить
нц пока слева стена
закрасить
вверх
кц
нц пока слева свободно
вверх
кц
нц пока слева стена
закрасить
вверх
кц
кон
2.
использовать Робот
алг
нач
нц пока сверху стена
закрасить
влево
кц
нц пока сверху свободно
влево
кц
нц пока слева свободно
закрасить
влево
кц
закрасить
нц пока слева стена
закрасить
вниз
кц
нц пока слева свободно
вниз
кц
нц пока слева стена
закрасить
вниз
кц
кон
3.
использовать Робот
алг
нач
нц пока слева стена
вверх
кц
влево
вниз
нц пока справа стена
закрасить
вниз
кц
нц пока справа свободно
вправо
кц
нц пока справа стена
закрасить
вниз
кц
кон
4.
использовать Робот
алг
нач
нц пока сверху стена
вправо
кц
вверх
нц пока слева стена
вверх
кц
влево
вниз
нц пока справа стена
вниз
кц
нц пока слева свободно
закрасить
влево
кц
кон
Объяснение: лишние циклы добавлены в случае изменений условия, а именно разной длины стенок и пропастей
К примеру поле у тебя 420 на 420
Давай разделим его на 36 клеточек.
Тогда края поля будут = 6 отрезков по 70 пикселей.
Смотрим на левый рисунок.
Робот находится в центре зеленого кружочка и смотрит вверх
(в псевдокоде я оперирую цифрами для конкретного моего случая поля 420 на 420, ты можешь вместо вперед 420 и вперед 70 сделать как по заданию вперед(6 шагов) и вперед(1 шаг) соответственно)
цикл повторить 3 раза
{
опустить перо; вперед на 420; повернуть направо на 90 градусов, поднять перо; вперед на 70; повернуть направо на 90 градусов; опустить перо; вперед на 420; повернуть налево на 90 градусов; поднять перо; вперед на 70; повернуть налево на 90 градусов
}
В результате работы этого цикла нарисуется левая картинка (черное - края листа, красное - что мы увидим нарисованным, желтое - где робот пройдет с поднятым пером)
СМОТРИМ НА ПРАВЫЙ РИСУНОК
В конце концов робот окажется в центре зеленого круга и будет смотреть вверх, перо будет поднято.
Теперь он будет идти с поднятым пером по розовой линии, а с опущенным по синей
цикл повторить 3 раза
{
вперед 70; повернуть налево на 90; вперед на 420; повернуть направо на 90; поднять перо; вперед 70; повернуть направо на 90; опустить перо; вперед на 420; повернуть налево; поднять перо;
}
В результате ты получишь поле 420 на 420 зачерченное клеткой размером 70 на 70.
Это просто частный случай решения. Ничего сложного тут нету, надо просто подумать и сделать алгоритм.
Алгоритм частного решения сделан. Сделай теперь блок-схему