Disegna 10 quadrati con lato crescente
1 2 3 4 5 6 7 8 9 10 |
Turtle.Speed=10 distanza=15 passo =15 For quadrato=1 To 10 For lato=1 To 4 Turtle.Move(distanza) Turtle.TurnRight() EndFor distanza=distanza+passo EndFor |
Disegna 12 quadrati a spirale…
Olimpiadi di Informatica – 21-11-2013 – n. 16
La grafica della tartaruga prevede che si possano impartire degli ordini di movimento a una tartaruga, che li eseguirà lasciando sul terreno una traccia dei suoi movimenti, come se avesse una penna attaccata sulla pancia.
Gli ordini possono essere impartiti tramite un semplice linguaggio, stando attenti che:
- le istruzioni destra e sinistra sono relative all’orientamento attuale della tartaruga, e il numero che segue è un angolo espresso in gradi;
- pennasu e pennagiu sollevano e abbassano rispettivamente la penna sotto la pancia della tartaruga; quando la penna è sollevata ovviamente non lascia tracce sul terreno;
- l’istruzione ripeti fa ripetere il blocco che segue, delimitato da parentesi graffe, per un numero di volte indicato a fianco dell’istruzione.
Data la seguente figura prodotta con la grafica della tartaruga e il seguente codice che l’ha prodotta, indicare quali numeri mancano nelle posizioni indicate dalle lettere X, Y e Z
1234567891011121314151617 lato = 10ripeti 10{ripeti --- X ---{avanti latodestra 90}pennasusinistra 90avanti --- Y ---sinistra 90avanti --- Z ---sinistra 180pennagiulato = lato + 20}
Il linguaggio precedente è KTurtle
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
Turtle.Speed=10 distanza=15 passo =15 For quadrato=1 To 10 Turtle.PenDown() For lato=1 To 4 Turtle.Move(distanza) Turtle.TurnRight() EndFor Turtle.PenUp() Turtle.TurnLeft() Turtle.Move(passo) Turtle.TurnLeft() Turtle.Move(passo) Turtle.Turn(180) distanza=distanza+2*passo EndFor |