Это решение было решено. Я набрал if
insted из while
. :(Проблемы с петлей Coffeescript
Я пишу программу в CoffeeScript (Pencilcode.net) для решения проблемы я был дан в школе. Я решил использовать эмпирический, но мои петли дают мне проблемы . Это код с SED петлями:
speed -1
scale 0.5
jumpto -500,50
pen black, 1
bk 300
rt 90
fd 1000
lt 90
fd 500
jumpto -500, 50
[co_x,co_y]=getxy()
turnto 250,-124
if co_x < 250 #The problems start here, line 13
fd 1
[co_x,co_y]=getxy()
if co_y < 125 #Line 16
turnto 250,125
fd 1
[co_x,co_y]=getxy()
проблемы начинаются на линии 13. Этот цикл просто не делает ничего , и следующий цикл, начиная с линии 16 TRYS запустить одновременно , но также делает ничего. Итак, мои два вопроса: что не так с петлями, и как я могу ke второй цикл ожидания, чтобы начать, пока первый не закончит.
Если вы хотите посмотреть, что делает этот код, скопируйте и вставьте его в this онлайн-компилятор. (Pencilcode.net)
EDIT: Я был в состоянии решить проблему обоих контуров выполняется сразу, поставив вторую петлю внутри else
из первого:
if co_x < 250
fd 1
[co_x,co_y]=getxy()
else
if co_y < 125
turnto 250,125
fd 1
[co_x,co_y]=getxy()
Возможно, я что-то не понимаю, но это утверждение 'if', а не цикл. Он должен сказать 'while col_x <250', нет? –
Также, чтобы ответить на второй вопрос *, как я могу заставить второй цикл ждать, пока первый не завершится *: код не выполняется асинхронно; другими словами, он будет и будет ждать, пока предыдущий оператор не завершит выполнение, прежде чем переходить к следующему утверждению и оттуда оттуда. Гипотетически, если ваша первая петля заняла очень много времени, вы сможете увидеть, что активность второго цикла не произойдет до тех пор, пока первый не будет завершен. Вы также можете проверить это с помощью отладчика. –
Да, это должно быть 'while'. Я идиот. Извините: P – xXALL4Xx