+ All Categories
Home > Documents > Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati...

Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati...

Date post: 01-May-2015
Category:
Upload: nora-fontana
View: 216 times
Download: 1 times
Share this document with a friend
19
Strutture di Strutture di controllo controllo Esempi in SmallBasic Esempi in SmallBasic
Transcript
Page 1: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Strutture di Strutture di controllocontrolloEsempi in SmallBasicEsempi in SmallBasic

Page 2: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

ProblemaProblema

Problema: Problema: verificare se i tre valori verificare se i tre valori passati in ingresso sono una terna passati in ingresso sono una terna pitagoricapitagorica..

Nota: il primo valore immesso deve Nota: il primo valore immesso deve essere il maggiore dei tre.essere il maggiore dei tre.

Input: tre valori numerici interi, il primo Input: tre valori numerici interi, il primo deve essere il maggiore dei tre.deve essere il maggiore dei tre.

Output: in caso di verifica positiva, Output: in caso di verifica positiva, viene segnalato che si tratta di una viene segnalato che si tratta di una terna pitagorica.terna pitagorica.

Page 3: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

AlgoritmoAlgoritmo

Page 4: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Commento allCommento all’’algoritmoalgoritmo

Il flusso di esecuzione Il flusso di esecuzione non è più lineare.non è più lineare.

Nel blocco decisionale Nel blocco decisionale unun’’istruzione è istruzione è eseguita solo al eseguita solo al verificarsi di una certa verificarsi di una certa condizionecondizione

Nella programmazione Nella programmazione strutturata i costrutti strutturata i costrutti di controllo devono di controllo devono avere un solo punto di avere un solo punto di ingresso e un solo ingresso e un solo punto di uscita: punto di uscita: questo vincolo è questo vincolo è rispettato dalla rispettato dalla struttura di controllo struttura di controllo decisionaledecisionale

Page 5: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Il programmaIl programma

Page 6: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

… … due alternativedue alternativeNell’esempio Nell’esempio precedente veniva precedente veniva eseguita una istruzione eseguita una istruzione al verificarsi di una al verificarsi di una condizionecondizione

In caso di condizione In caso di condizione falsa non veniva falsa non veniva eseguita alcuna eseguita alcuna istruzioneistruzione

Con questo costrutto Con questo costrutto “if-then-else” viene “if-then-else” viene eseguita una istruzione eseguita una istruzione o un’altra a seconda del o un’altra a seconda del valore della condizione.valore della condizione.

Page 7: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Il programmaIl programma

Page 8: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

… … una istruzione o … una istruzione o … una sequenza di una sequenza di

istruzioni …istruzioni …Tra Then ed EndIf, ci potrebbe essere più di un’operazione e il computer le eseguirebbe tutte nel caso in cui la condizione fosse valida. Per esempio, potresti scrivere qualcosa del genere:

If (ora < 12) Then

TextWindow.Write(”Buongiorno. ")

TextWindow.WriteLine(”Cosa preferisci a colazione?")

EndIf

Page 9: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Regole per i nomi delle Variabili

Il nome deve iniziare con una lettera e non può coincidere con alcuna delle parole chiave come if, for, then, ecc.

Un nome può contenere qualunque combinazione di lettere, cifre e caratteri di sottolineatura.

È utile che il nome delle variabili sia significativo – dato che le variabili possono essere lunghe quanto vuoi, utilizza nomi di variabili che descrivono il loro scopo.

Page 10: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Principali Principali operatori operatori aritmeticiaritmeticiOperationOperation ExampleExample ResultResult

AdditionAddition 7 + 27 + 2 99

AdditionAddition 3.4 + 8.13.4 + 8.1 11.511.5

SubtractionSubtraction 6 - 46 - 4 22

SubtractionSubtraction 11.1 – 7.611.1 – 7.6 3.53.5

MultiplicationMultiplication 8 * 48 * 4 3232

MultiplicationMultiplication 2.3 * 12.22.3 * 12.2 28.0628.06

DivisionDivision 12 / 212 / 2 66

DivisionDivision 45.26 / 6.245.26 / 6.2 7.37.3

Page 11: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Operatori di Operatori di confrontoconfronto

            >> Greater thanGreater than

            << Less thanLess than

            >=>= Greater than or equal toGreater than or equal to

            <=<= Less than or equal toLess than or equal to

            == Equal toEqual to

            <><> Not equal toNot equal to

Page 12: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Operatori logiciOperatori logiciAndAnd Logical AndLogical And

OrOr Logical OrLogical Or

Page 13: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Alcuni oggettiAlcuni oggetti

Page 14: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Le iterazioni (i Le iterazioni (i cicli)cicli)

LL’’iterazione è una struttura che consente di iterazione è una struttura che consente di ripetere più volte lripetere più volte l’’esecuzione di un insieme di esecuzione di un insieme di istruzioni.istruzioni.

Due tipi di iterazione:Due tipi di iterazione:iterazioni guidate da eventiiterazioni guidate da eventi: non è noto a priori quante : non è noto a priori quante volte saranno eseguite. volte saranno eseguite. Tutto dipende dal fatto che un certo evento si verifichi Tutto dipende dal fatto che un certo evento si verifichi o meno; se una condizione è vera (o è ancora vera) il o meno; se una condizione è vera (o è ancora vera) il blocco viene eseguito, altrimenti si passa blocco viene eseguito, altrimenti si passa all’istruzione successiva al termine del blocco.all’istruzione successiva al termine del blocco.iterazioni enumerativeiterazioni enumerative: consentono di eseguire un : consentono di eseguire un blocco di istruzioni un numero predefinito di volte. blocco di istruzioni un numero predefinito di volte.

Page 15: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Iterazioni non Iterazioni non condizionalicondizionali

La condizione precede il La condizione precede il ciclo.ciclo.

Solo se e la condizione è Solo se e la condizione è verificata il corpo del ciclo verificata il corpo del ciclo viene eseguito (per corpo viene eseguito (per corpo del ciclo si intende del ciclo si intende l’insieme delle istruzioni l’insieme delle istruzioni interne)interne)

Al termine del corpo si Al termine del corpo si torna a verificare la torna a verificare la condizione.condizione.

Il corpo del ciclo potrebbe Il corpo del ciclo potrebbe non essere mai eseguitonon essere mai eseguito

Page 16: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Ciclo WhileIl ciclo While è utile specialmente quando il conteggio del ciclo non è noto.

Il ciclo While è eseguito fin tanto che una data condizione è vera.

Nell’esempio seguente, dimezziamo un numero fintanto che il risultato è maggiore di 1. numero = 100While (numero > 1) TextWindow.WriteLine(numero) numero = numero / 2EndWhile

Page 17: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Ciclo ForCiclo ForFor ... EndFor è un ciclo enumerativo.

Una variabile (indice di ciclo) assume un valore iniziale e viene incrementata ad ogni esecuzione del ciclo fino a raggiungere il valore finale.

For i = 1 To 24 TextWindow.WriteLine(i)EndFor

Se volessi che la variabile fosse incrementata di 2 invece che di 1 – per visualizzare tutti i numeri dispari tra 1 e 24 - sarebbe ancora possibile utilizzare un ciclo For.For i = 1 To 24 Step 2 TextWindow.WriteLine(i)EndFor

Page 18: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

La “tartaruga”La “tartaruga”Il Logo è un linguaggio di programmazione Il Logo è un linguaggio di programmazione semplice ma potente che dispone di una semplice ma potente che dispone di una “Tartaruga” che è visibile sullo schermo e “Tartaruga” che è visibile sullo schermo e risponde a comandi come Move (spòstati), risponde a comandi come Move (spòstati), Forward (avanza), Turn Right (gira a destra), Forward (avanza), Turn Right (gira a destra), Turn Left (gira a sinistra), ecc. Turn Left (gira a sinistra), ecc.

Utilizzando la Tartaruga è possibile Utilizzando la Tartaruga è possibile disegnare forme sullo schermo. disegnare forme sullo schermo.

Small Basic è dotato di un oggetto Tartaruga Small Basic è dotato di un oggetto Tartaruga con molti comandi che possono essere con molti comandi che possono essere chiamati all’interno dei programmi Small chiamati all’interno dei programmi Small Basic.Basic.

Page 19: Strutture di controllo Esempi in SmallBasic. Problema Problema: verificare se i tre valori passati in ingresso sono una terna pitagorica. Nota: il primo.

Alcune funzioni Alcune funzioni della tartarugadella tartaruga

Turtle.Show() – rende visibile la tartaruga

Turtle.Move(100) – si sposta di 100 pixel

Turtle.TurnRight() – gira a destra (90 gradi)

Turtle.Turn(20) - gira di 20 gradi

Turtle.PenUp() – alza il pennino

Turtle.PenDown() –abbassa il pennino


Recommended