I programmi sono elenco di istruzioni base. Le istruzioni sono tipicamente dei comandi in inglese.
Le istruzioni devono rispettare una precisa sintassi.
Come in matematica la posizione di valori e l'impiego corretto di simboli determinano in modo univoco un'unica istruzione.
3<4 <3 4
5-3=8 -3 = 5 8
L'importanza del rispetto delle regole stabiliti dal linguaggio scelto per programmare.
Esistono numerosi linguaggi di programmazioni di alto livello. I PC capisco il linguaggio macchina e hanno quindi bisogno che tali linguaggi vengano tradotti.
I linguaggi come Logo e Phyton sono interpretati ed eseguiti immediatamente per l'appunto da un interprete. I ifle che contengono le istruzioni vengono chiamati SCRIPT.
Programmi realizzati in altri linguaggi vanno invece compilati, cioè tradotti in linguaggio macchina prima di esseer eseguiti.
La geometria euclidea (lati, angoli), il piano cartesiano (posizione degli oggetti e loro moto)
1)
Per comodità su ogni riga verrà scritta una sola istruzione. Utilizzeremo le istruzioni per esteso e non le abbreviazioni dei comandi.
A fianco se si vuole si può inserire un commento che spieghi a cosa l'istruzione serve. I commenti sono fondamentali per poter intervenire nello script in tempi successivi o permettere ad altri di capire le ragioni delle istruzioni da noi inserite.
2)
Lo script viene eseguito per capire se funziona, se contiene errori, se va migliorato.
La fase di correzione si chiama DEBUG.
HOME ; riporta le impostazioni e la posizione della tartaruga alle condizioni inizialiCLEARSCREEN ; rimuove gli oggetti di disegno dal documentoHIDETURTLE ; nasconde la tartaruga (fino al comando SHOWTURTLE)SHOWTURTLE ; mostra la tartarugaPENDOWN ; la tartaruga si sposterà disegnandoPENUP ; la tartaruga si sposterà senza disegnareFILL ; chiude e riempie la forma della linea o dei punti attiviCLOSE ; chiude la forma della linea attiva o unisce i punti attiviCIRCLE 100 ; disegna un cerchio (diametro = 100pt)SQUARE 100 ; disegna un quadrato (dimensione = 100pt)RECTANGLE [50, 100] ; disegna un rettangolo (50×100pt)RECTANGLE [50, 100, 10] ; disegna un rettangolo con angoli arrotondatiFORWARD 10 ; sposta avanti di 10pt (1pt = 1/72 di pollice)FORWARD 10cm ; sposta avanti di 10cmBACK 10 ; sposta indietro di 10ptLEFT 90 ; ruota la tartaruga di 90 gradi in senso antiorarioRIGHT 90 ; gira di 90 gradi in senso orarioPOSITION [0, 0] ; ruota la tartaruga e la sposta verso l'angolo superiore sinistroHEADING 0 ; gira verso nordHEADING 12h ; vedere sopraHEADING ANY ; gira in una posizione casualePRINT INPUT “Input valore?” ; chiede e stampa una stringa da una finestra di dialogoPRINT “Hello, World!” ; stampa il testo in una finestra di dialogoPRINT 5 + 10 ; stampa 15LABEL “testo” ; stampa il testo alla posizione della tartarugaFONTSIZE 12 ; imposta la dimensione dei caratteri a 12 puntiFONTWEIGHT “bold/italic/normal” ; imposta il carattere grassettoSLEEP 1000 ; attende per 1000 ms (1 sec)PRINT RANDOM 100 ; numero in virgola mobile casuale (0 <= x < 100)PRINT RANDOM “testo” ; lettera casuale del “testo”PRINT RANDOM [1, 2] ; elemento casuale della lista (1 o 2)PRINT SQRT 100 ; stampa 10, la radice quadrata di 100....PRINT ROUND 3.8 ; stampa 4 (arrotondamento di 3.8)PRINT MIN [1, 2, 3] ; stampa 1, l'elemento minore della lista...PRINT COUNT “testo” ; stampa 5, il numero di caratteri di “testo”Ripetizione di insieme di istruzioni
REPEAT 10 [ FORWARD 10 LEFT 45 CIRCLE 10 ] ; ripete 10 volte il numero è facoltativoREPEAT [ POSITION ANY ] ; ciclo infinitoEseguire una serie di istruzione se una determinata condizione si verifica
IF a < 10 [ PRINT “Piccolo” ]IF a < 10 [ PRINT “Piccolo” ] [ PRINT “Grande” ] ; IF condizione [ blocco vero ] [ blocco falso ]Cicli eseguite se una determinata condizione si verifica.
WHILE TRUE [POSITION ANY ] ; ciclo infinitoWHILE REPCOUNT <= 10 [FORWARD 50 LEFT 36 ] ; come REPEAT 10 [ ... ]FOR i IN [1, 5, 7, 9, 11] [FORWARD iLEFT 90]BREAK ; ferma il cicloFILLTRANSPARENCY 80 ; imposta la trasparenza dell'attuale colore all'80%PENSIZE 100 ; lo spessore linea è di 100 puntiPENCOLOR “red” ; imposta il colore della penna a rosso (per nome di colore, vedere le constanti di colore)FILLCOLOR “blue” ; riempie col colore blu, vedere anche PENCOLORFILLCOLOR [“blue”, “red”] ; gradiente tra il rosso e il bluFILLCOLOR [[255, 255, 255], [255, 128, 0]] ; tra il bianco e l'arancione colori RGBa = 5A = 7PRINT aPRINT ATO triangoloREPEAT [ FORWARD 100 RIGHT 120 ] FILLENDREPEAT 10 [ triangolo PENUP POSITION ANY PENDOWN ]TO esempio numeroIF numero < 0 [ STOP ]PRINT SQRT numero ; stampa radice quadrata]esempio 100esempio -1 ; senza risultato ed erroreesempio 25TO letteracasualeOUTPUT RANDOM “qwertzuiopasdfghjklyxcvbnm”ENDPRINT letteracasuale + letteracasuale + letteracasuale ; stampa una stringa formata da tre caratteri casua