Disegnare un rettangolo 100x25: repeat 5 [ fd 100 rt 72...

Post on 05-Oct-2020

3 views 0 download

Transcript of Disegnare un rettangolo 100x25: repeat 5 [ fd 100 rt 72...

1

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esempi di cicli

• Disegnare un triangolo equilatero: repeat 3 [ fd 100 rt 120 ]

• Disegnare un pentagono: repeat 5 [ fd 100 rt 72 ]

• Disegnare un rettangolo 100x25:repeat 2 [ fd 100 rt 90 fd 25 rt 90 ]

2

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizi

• Disegnare un cerchio (sembra assurdo, ma…);

• Capire il seguente programma e cosa disegna prima ancora di eseguirlo:

repeat 2 [ fd 100 pu rt 90 fd 25 rt 90 pd ]rt 90 repeat 2 [ fd 25 pu lt 90 fd 100 lt 90 pd ]lt 90

3

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Definire una procedura: il nome

• To nome_procedura– Ad esempio: definiamo la funzione quadrato:

4

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Definire una procedura: il codice

• Scrivere il codice nella finestra che appare:– Ad esempio: repeat 4 [ fd 100 rt 90 ]

• Quando il codice è finito, battere End e poi cliccare su OK.

5

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Modificare una procedura: l’editor

• Edit “nome_procedura– Ad esempio: Edit “quadrato

6

Chiamare una procedura

• Scrivere il nome– Esempio: quadrato

Definizione

Informazione diMSWLogo sulladefinizione

Invocato Editor della procedura

Chiamata

Risultato della chiamata

7

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio• Dopo aver definito la procedura quadrato, ottenere il

disegno riportato in figura:

8

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Due quadrati concentrici II

Suddivione del problema in sottoproblemi:

1. Disegnare il primo quadrato (lato di 100 pixel);

2. Posizionarsi per il secondo quadrato;

3. Cambiare colore (rosso);

4. Disegnare il secondo quadrato (lato di 50 pixel);

5. Tornare alla condizione di partenza.

9

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Due quadrati concentrici II

Suddivione in moduli (procedura principale):

1. Quadrato1

2. Posizionamento

3. Cambia_in_rosso

4. Quadrato2

5. My_home

10

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Definizione: quadrato1

to quadrato1

repeat 4 [ fd 100 rt 90 ]

end

11

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Definizione: quadrato2

to quadrato2

repeat 4 [ fd 50 rt 90 ]

end

12

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Definizione: posizionamento

to posizionamento

pu

fd 25

rt 90

fd 25

lt 90

pd

end

13

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Definizione: cambia_in_rosso

to cambia_in_rosso

setpencolor (list 255 0 0)

end

14

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Definizione: my_home

to my_home

pu

home

pd

setpencolor (list 0 0 0)

end

15

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Definizione: procedura principale

to main

quadrato1

posizionamento

cambia_in_rosso

quadrato2

my_home

end

16

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esecuzione del programma

Battere main nella Commander Window di Logo.

17

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Salvare e Caricare un programma

• Save “nome_file.lgo– Esempio: save “due_quadrati.lgo

• Load “nome_file.lgo– Esempio: load “due_quadrati.lgo

• Oppure:– File > Save as– File > Load

18

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio

Disegnare la casa riportata in figura.

Ricordare di: 1. Suddividere il problema

in sottoproblemi;2. Scrivere una procedura

per ogni modulo;3. Scrivere una procedura

principale;

19

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Osservazione

• È consigliabile scrivere delle procedure che contengano sempre la chiamata alla procedura my_home all’inizio ed alla fine.

• Esempio:

to quadrato my_homerepeat 4 [ fd 100 rt 90 ]my_home

end

20

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 1

• Disegnare 4 quadrati concentrici come nella figura sottostante:

21

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 2

• Disegnare 3 cerchi concentrici come nella figura sottostante:

22

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 3

• Disegnare la figura sottostante:

23

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 4

• Disegnare la figura sottostante:

24

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 5

• Disegnare la figura sottostante:

25

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 6

• Disegnare la figura sottostante:

26

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 7

• Disegnare la figura sottostante:

27

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 8

• Disegnare la figura sottostante:

28

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 9

• Disegnare la figura sottostante:

29

Informatica di Base Informatica di Base ---- R.GaetaR.Gaeta

Esercizio 10

• Disegnare la figura sottostante: