ifを使った、少し発展的な例

基本的な螺旋

例0

clear
for (i<-1 to 30) {
    println(i*10)
    forward(i*10) ; left
}

寄り道バージョン

例2

def circ(len:Int) { // 円に見える20角形
    repeat(20){
        forward(len); right(18)
    }
}
clear
for (i<-1 to 30) {
    println(i*10)
    forward(i*10) ; left(45) 
    circ(3) 
    left(45)
}

条件付き寄り道バージョンその1

例2

def circ(len:Int) { // この部分は変更なし
    repeat(20){
        forward(len); right(18)
    }
} 
clear
for (i<-1 to 30) {
    println(i*10)
    forward(i*10) ; left(45) 
    if(i>10 && i<20) {
        circ(3) 
    }
    left(45)
}

条件付き寄り道バージョンその2

例3

def circ(len:Int) {
    repeat(20){
        forward(len); right(18)
    }
} 
clear
for (i<-1 to 30) {
    println(i*10)
    forward(i*10) ; left(45) 
    if(i%3 == 0) {
	// この式を i%2 i%4 などに変えることもできる
        circ(3) 
    }
    left(45)
}