BorderGame
LogoIT - Versione stampabile

+- BorderGame (https://www.bordergame.it)
+-- Forum: Programmazione (/Forum-Programmazione--158)
+--- Forum: Programmazione (/Forum-Programmazione)
+---- Forum: Altri linguaggi (/Forum-Altri-linguaggi)
+---- Discussione: LogoIT (/Thread-LogoIT)



LogoIT - Gafra96 - 23-09-2011 08:08 PM

1. Il Logo

Il Logo è un linguaggio di programmazione ideato con finalità didattiche dal matematico e informatico americano Seymour Papert. E' un linguaggio ormai diffuso nelle scuole di tutto il mondo. Papert, derivando alcune idee dalla teoria dell'apprendimento di Piaget ed altre dalla ricerca nel campo dell'Intelligenza Artificiale (settore nel quale è considerato uno dei massimi esperti), propone un ambiente di sperimentazione geometrica che coinvolge l'allievo, lo rende diretto costruttore di strutture, gli consente di apprendere operando.

Una caratteristica importante del Logo è quella di favorire non solo l'apprendimento di una corretta tecnica di programmazione ma anche l'acquisizione di nozioni e concetti matematici profondi (in particolare geometrici, ma non solo: si pensi ad esempio al concetto di variabile).

Operare in ambiente Logo significa programmare una piccola tartaruga che si muove sullo schermo del computer in risposta ai nostri comandi. La tartaruga, come entità geometrica, è caratterizzata dalla posizione nel piano e dall'orientamento (ad esempio la tartaruga può trovarsi in un dato punto P ed essere orientata verso Nord).

I comandi fondamentali per muovere la tartaruga sono il comando AVANTI e i comandi DESTRA e SINISTRA. Il comando AVANTI fa avanzare la tartaruga di un numero di "passi" che possiamo stabilire a nostro piacere; l'avanzamento avviene nella direzione determinata dall'attuale orientamento della tartaruga. I comandi DESTRA e SINISTRA ci consentono di modificare l'orientamento della tartaruga facendola ruotare su se stessa in senso orario o antiorario (l'ampiezza della rotazione è a nostra scelta). La tartaruga muovendosi lascia una traccia sullo schermo, potremo così disegnare qualsiasi figura geometrica se sapremo descriverne proceduralmente la costruzione.

L'MswLogo è una delle migliori implementazioni del linguaggio Logo ed è stato sviluppato da Brian Harvey (California University, Berkeley) e da George Mills (Softronics Inc.). L'MSWLogo dispone di una serie di comandi molto avanzati (tra cui svariate istruzioni di controllo come FOR, UNTIL, WHILE in genere non presenti nei linguaggi Logo) e di una interfaccia grafica comoda e semplice; è inoltre un software di pubblico dominio (freeware) e potete utilizzarlo liberamente. Per scaricare l'MSWLogo vedere download software didattico.

Qui di seguito trovate un'introduzione completa all'uso del MSWLogo.

Nel testo per la scuola media, Fare e ragionare con la matematica, trovate una serie di schede sul Logo che si integrano con il programma di geometria e mostrano come quest'ambiente possa diventare un supporto fondamentale ad un insegnamento moderno e dinamico della geometria.

2. Primi passi con l'MSWLogo


Dopo aver lanciato l'MSWLogo si presenterà la finestra principale che vedete nella figura seguente e che viene denominata MSWLogo screen (noi diremo semplicemente schermo).

http://users.libero.it/prof.lazzarini/mswlogo/fig001.gif

L'area bianca è l'ambiente all'interno del quale potremo muovere la tartaruga, è il mondo della tartaruga; al centro dello schermo vedete un triangolino isoscele che rappresenta proprio la tartaruga. Nella situazione iniziale la tartaruga punta verso l'alto (verso nord); questo stato iniziale della tartaruga (posizione al centro, orientamento verso nord) viene denominato tana (home).

Sovrapposta alla finestra principale vedete una finestra più piccola denominata commander: è il centro di comando che ci consentirà di impartire istruzioni alla tartaruga. Nel centro di comando vedete, in basso, un campo di input e sulla destra una serie di pulsanti di cui avremo modo di parlare.

Potrete naturalmente muovere o ridimensionare la finestra commander come avviene per tutte le finestre di Windows; potrete anche aprirla completamente o ridurla a icona.

Ora provate a digitare nel campo di input del centro di comando l'istruzione

fd 100

che serve a far avanzare la tartaruga di 100 passi nella direzione determinata dal suo orientamento attuale (che è verso nord). Tenete presente che fd sta per forward che significa avanti. Per mettere in esecuzione l'istruzione dovete premere sul tasto Invio oppure cliccare sul pulsante Execute. Nella figura seguente vedete la situazione prima di digitare Invio.

http://users.libero.it/prof.lazzarini/mswlogo/fig002.gif

Qui sotto vedete invece la situazione dopo aver digitato Invio. La tartaruga, muovendosi, ha lasciato una traccia: abbiamo quindi ottenuto un segmento verticale lungo 100 passi di tartaruga (100 pixel). Osservate che nella lista delle istruzioni al di sopra del campo di input appare ora l'istruzione che abbiamo appena digitato e che potremo rieseguire senza doverla ridigitare (basta cliccarci sopra due volte in rapida successione).

http://users.libero.it/prof.lazzarini/mswlogo/fig003.gif

Ed ecco come si presenta lo schermo dopo aver eseguito l'istruzione

rt 90

che fa ruotare la tartaruga di 90° in senso orario (cambia solo l'orientamento, non la posizione). Tenete presente che rt sta per right che significa destra.

http://users.libero.it/prof.lazzarini/mswlogo/fig004.gif

E' chiaro che se ora daremo di nuovo l'istruzione fd 100 la tartaruga, tenendo conto del nuovo orientamento, avanzerà ancora di 100 passi ma questa volta verso est. Nella figura seguente vedete come si possa tracciare un quadrato.

http://users.libero.it/prof.lazzarini/mswlogo/fig005.gif

Esaminiamo tutte le istruzioni necessarie per tracciare un quadrato:

fd 100
rt 90
fd 100
rt 90
fd 100
rt 90
fd 100
rt 90

Vi rendete conto che questo blocco di istruzioni rappresenta una descrizione operativa del quadrato. Per poter disegnare un quadrato con il Logo, l'allievo deve sapere quali proprietà caratterizzano questa figura. Deve rendersi conto che gli angoli sono tutti retti (la rotazione della tartaruga è sempre di 90°) e i lati tutti uguali (l'avanzamento è sempre di 100 passi). Inoltre la regolarità della figura appare nella regolarità che il blocco di istruzioni presenta: ci sono due istruzioni che si ripetono quattro volte. Tenete ben presente che gli angoli di rotazione della tartaruga sono angoli esterni come potrete notare.

http://users.libero.it/prof.lazzarini/mswlogo/fig006.gif

Ora vi chiederete se il Logo sia tutto qui. Certamente no. Finora abbiamo operato in modo diretto dando un'istruzione per volta. Il passo successivo consiste nel definire delle procedure. E' solo costruendo delle procedure che potremo cominciare a renderci conto delle potenzialità logiche e geometriche del Logo. Ce ne occuperemo nel numero successivo.

Un'ultima cosa: come si fa ad uscire dall'ambiente MSWLogo? Avete due possibilità: selezionare l'opzione "Exit" del menu "File" della finestra principale oppure dare in modo diretto, nel campo di input della finestra commander, l'istruzione bye.


3. Scrivere ed eseguire una procedura

Per introdurre la nozione di procedura sarà opportuno utilizzare con i ragazzi una metafora. La tartaruga è in grado di comprendere un certo numero di comandi senza che le si debba spiegare il loro significato. Questi comandi sono chiamati istruzioni primitive; sono istruzioni primitive, ad esempio, le istruzioni fd e rt che abbiamo utilizzato per costruire il quadrato del numero precedente. Ma la tartaruga è anche in grado di apprendere nuovi comandi se saremo in grado di esprimerli mediante istruzioni primitive. Se ad esempio vogliamo insegnare alla tartaruga come si fa a tracciare un quadrato dovremo definire la procedura seguente:

to quadrato
fd 100
rt 90
fd 100
rt 90
fd 100
rt 90
fd 100
rt 90
end

Come vedete si tratta proprio delle stesse istruzioni che abbiamo dato in modo diretto per ottenere un quadrato di lato 100. Attenzione però, all'inizio del blocco di istruzioni troviamo la dichiarazione to quadrato che possiamo tradurre per quadrato (cioè "per tracciare un quadrato") e alla fine la parola end (che indica la fine della procedura). Ecco fatto, in questo modo abbiamo spiegato alla tartaruga il significato del nuovo comando quadrato. La procedura quadrato si comporta ora come una delle istruzioni primitive: è come se avessimo ampliato il numero di vocaboli "compresi" dalla tartaruga.

Vediamo ora praticamente come si procede. Scriveremo il testo della procedura in un nuovo ambiente chiamato editor. Per accedere all'editor digiteremo nel campo di input della finestra commander

edit "quadrato

(attenzione alle virgolette, vanno aperte ma non chiuse). Naturalmente "quadrato" è il nome della procedura che vogliamo definire e tale nome potrà cambiare di volta in volta. Subito dopo aver digitato Invio apparirà una nuova finestra: la finestra dell'editor. La vediamo nella figura seguente.

http://users.libero.it/prof.lazzarini/mswlogo/fig008.gif

Qui digiteremo il testo della procedura come in figura. Nella finestra dell'editor avremo a disposizione tutti i servizi che normalmente sono disponibili in un word processor (ad esempio taglia, copia, incolla, cerca). Dopo aver digitato la procedura usciremo dall'editor mediante l'opzione "Save and exit" che troviamo nel menu "File".

http://users.libero.it/prof.lazzarini/mswlogo/fig009.gif


Non rimane che mettere in esecuzione la nostra procedura. Prima però è opportuno pulire lo schermo cancellando i disegni tracciati precedentemente; per far questo utilizzeremo in modo diretto il comando cs (clear screen) che ha anche la funzione di riportare la tartaruga nella tana (stato iniziale). Bene, ora digiteremo, nel campo di input della finestra commander, la parola quadrato (e naturalmente daremo un Invio).

http://users.libero.it/prof.lazzarini/mswlogo/fig010.gif


Fantastico! Abbiamo ottenuto, in un sol colpo, il nostro quadrato.

Tenete infine presente che per tornare nell'editor possiamo dare di nuovo il comando edit "quadrato nel campo di input della finestra commander oppure possiamo selezionare dal menu "File" della finestra principale la voce "Edit".

http://users.libero.it/prof.lazzarini/mswlogo/fig011.gif


Procedendo in questo secondo modo, ci si presenterà un finestra, denominata Edit procedure, che contiene l'elenco di tutte le procedure definite. Selezioneremo "quadrato", l'unica procedura che per il momento abbiamo definito, e cliccheremo sul bottone "ok".

http://users.libero.it/prof.lazzarini/mswlogo/fig012.gif


Riconsideriamo la procedura per definire un quadrato di lato 100

Come vedete, abbiamo dovuto ripetere uno stesso blocco di istruzioni per quattro volte. Il Logo ci consente di fare di meglio utilizzando l'istruzione repeat (ripeti). Ecco come si trasforma la nostra procedura

to quadrato
repeat 4 [fd 100 rt 90]
end

Tenete presente che il blocco di istruzioni che si ripete, nel nostro caso di due istruzioni, va messo tra parentesi quadre.

Considerate ora queste due procedure

to rettangolo
repeat 2 [fd 60 rt 90 fd 100 rt 90]
end


to RuotaRettangolo
repeat 12 [rettangolo rt 30]
end

Mettendo in esecuzione la procedura RuotaRettangolo otteniamo la schermata seguente.

http://users.libero.it/prof.lazzarini/mswlogo/fig014.gif

E' il caso di fare alcune osservazioni. La procedura rettangolo traccia un rettangolo di altezza 60 e di base 100. La procedura RuotaRettangolo usa al suo interno la procedura rettangolo, da noi precedentemente definita, come una qualsiasi altra istruzione. La procedura RuotaRettangolo ripete 12 volte le due istruzioni rettangolo e rt 30: viene tracciato un primo rettangolo (evidenziato in rosso), poi la tartaruga ruota di 30° e quindi traccia il secondo rettangolo (evidenziato in blu) partendo in una nuova direzione, di nuovo ruota di 30° e traccia il terzo rettangolo e così via fino a completare il giro (vengono eseguite 12 rotazioni di 30° per un totale di 360°).


RE: LogoIT - SCL - 08-10-2011 10:10 PM

Sbaglio ho il LogoIT è Phyotn, ma in italiano?


RE: LogoIT - Gafra96 - 11-10-2011 05:42 PM

non credo perché la vrrsione originale si chiama MWSlogo mi pare