Эй, там, я сбиваю случайное создание поколения шаблонов.Случайные направления, без повторения .. (Плохое описание)
Мой код до сих пор:
int permutes = 100;
int y = 31;
int x = 63;
while (permutes > 0) {
int rndTurn = random(1, 4);
if (rndTurn == 1) { y = y - 1; } //go up
if (rndTurn == 2) { y = y + 1; } //go down
if (rndTurn == 3) { x = x - 1; } //go right
if (rndTurn == 4) { x = x + 1; } //go left
setP(x, y, 1);
delay(250);
}
Мой вопрос, как бы я идти о получении кода не возвращаться на себя?
например. Код говорит «Go Left», но следующий цикл через него говорит «Go Right», как я могу остановить это?
ПРИМЕЧАНИЕ: setP включает определенный пиксель.
Приветствия народам!
Именно то, что я искал! –
За исключением того, что случайный генератор может появляться с «lastRndTurn» несколько раз подряд. Не то, чтобы это имело бы значение, пока вы ждете 25 мс после каждого поворота ... – sbi
Хотя это будет работать, как правило, не является хорошей практикой для грубой силы приемлемого значения. Я думаю, что решение ниже намного лучше. Сохраните последнее движение (скажем, 2, вверх) как целое число. Создайте массив и со следующим циклом добавьте числа 1 2 3 4, но только если число не совпадает с последним. Тогда сделайте случайное на этом. Вам придется отменить ответ. – NibblyPig