39
“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone 1 MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net 1- PARTE – Ripasso: introduzione agli Algoritmi e alla programmazione in VisualBasic.Net Definizione di algoritmo. Un algoritmo è una sequenza ordinata di azioni o istruzioni che permettono di risolvere tutti i problemi di una certa classe (natura) nel modo più efficiente possibile (cioè col minor numero di istruzioni). Le istruzioni dell’algoritmo, inoltre, devono soddisfare ai seguenti requisiti: 1. elementari, cioè non ulteriormente scomponibili 2. in numero finito, nel senso che l’algoritmo deve avere un punto di inizio e un punto di fine 3. non ambigue, cioè che non lascino dubbi di interpretazione alla CPU che dovrà eseguirle. 4. deterministiche, cioè devono garantire che i risultati ottenuti siano sempre gli stessi a prescindere dalla CPU che le esegue. Ad esempio: l’istruzione “moltiplica 3 per 4” produce sempre il medesimo risultato, anche se è eseguita su CPU diverse. Problema1. Trovare l’algoritmo che calcola l’area del triangolo 1. inizio 2. dammi valore della base 3. dammi valore della altezza 4. calcola il prodotto: base per l’altezza 5. dividi il prodotto per due ed otterrai il valore dell’area del triangolo 6. stampa a video l’area calcolata 7. fine Variabili e Costanti In tutti i linguaggi di programmazione il programmatore ha necessità di memorizzare temporaneamente alcuni valori del programma. Tali valori sono memorizzati nelle celle della RAM. La variabile è una celletta della RAM in cui è possibile memorizzare temporaneamente i valori che variano nel tempo. Inoltre, la variabile è individuata da: - un nome scelto a piacere dal programmatore composto da lettere e numeri ma che non deve mai iniziare con un numero come ad es: numero, a1, a2, somma, media, nome, ecc. - un valore modificabile nel tempo, a seconda che si verifichino o meno condizioni, eventi, ecc. da qui il nome variabile, che può essere: un numero intero positivo o negativo, un numero con la virgola, un carattere, una parola, un valore booleano vero e falso, ecc. - un tipo, cioè l’insieme dei valori che essa può assumere I tipi di variabili che useremo in Visual Basic. Net - tipo intero (in VB integer) è l’insieme dei numeri naturali negativi e positivi, come ad esempio: -100.-5, 0, 5, 100 ecc. - tipo decimale (in VB decimal) è l’insieme dei numeri positivi e negativi con e senza virgola, come ad esempio: -123.5, -1, 0, 5, 1234,7 - tipo booelano (in VB boolean) è l’insieme dei valori true o false, come ad esempio: maggiorenne, sposato, patentato, ecc. - tipo stringa (in VB string) è l’insieme dei caratteri e delle parole, come ad esempio: a,b,c,d,e,f,…..z, casa, cena, scuola, ecc. Esempio1 - variabile intera celletta N nome 6 celletta A nome

MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

Embed Size (px)

Citation preview

Page 1: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

1

MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net

1- PARTE – Ripasso: introduzione agli Algoritmi e alla programmazione in VisualBasic.Net

Definizione di algoritmo.

Un algoritmo è una sequenza ordinata di azioni o istruzioni che permettono di risolvere tutti i problemi di una certa classe (natura) nel modo più efficiente possibile (cioè col minor numero di

istruzioni). Le istruzioni dell’algoritmo, inoltre, devono soddisfare ai seguenti requisiti:

1. elementari, cioè non ulteriormente scomponibili

2. in numero finito, nel senso che l’algoritmo deve avere un punto di inizio e un punto di fine

3. non ambigue, cioè che non lascino dubbi di interpretazione alla CPU che dovrà eseguirle.

4. deterministiche, cioè devono garantire che i risultati ottenuti siano sempre gli stessi a

prescindere dalla CPU che le esegue. Ad esempio: l’istruzione “moltiplica 3 per 4” produce sempre

il medesimo risultato, anche se è eseguita su CPU diverse.

Problema1. Trovare l’algoritmo che calcola l’area del triangolo 1. inizio

2. dammi valore della base

3. dammi valore della altezza

4. calcola il prodotto: base per l’altezza

5. dividi il prodotto per due ed otterrai il valore dell’area del triangolo

6. stampa a video l’area calcolata

7. fine

Variabili e Costanti In tutti i linguaggi di programmazione il programmatore ha necessità di memorizzare

temporaneamente alcuni valori del programma. Tali valori sono memorizzati nelle celle della RAM.

La variabile è una celletta della RAM in cui è possibile memorizzare temporaneamente i

valori che variano nel tempo.

Inoltre, la variabile è individuata da: - un nome scelto a piacere dal programmatore composto da lettere e numeri ma che non deve

mai iniziare con un numero come ad es: numero, a1, a2, somma, media, nome, ecc.

- un valore modificabile nel tempo, a seconda che si verifichino o meno condizioni, eventi, ecc. da

qui il nome variabile, che può essere: un numero intero positivo o negativo, un numero con la

virgola, un carattere, una parola, un valore booleano vero e falso, ecc. - un tipo, cioè l’insieme dei valori che essa può assumere

I tipi di variabili che useremo in Visual Basic. Net - tipo intero (in VB integer) è l’insieme dei numeri naturali negativi e positivi, come ad

esempio: -100.-5, 0, 5, 100 ecc.

- tipo decimale (in VB decimal) è l’insieme dei numeri positivi e negativi con e senza virgola, come ad esempio: -123.5, -1, 0, 5, 1234,7

- tipo booelano (in VB boolean) è l’insieme dei valori true o false, come ad esempio:

maggiorenne, sposato, patentato, ecc.

- tipo stringa (in VB string) è l’insieme dei caratteri e delle parole, come ad esempio:

a,b,c,d,e,f,…..z, casa, cena, scuola, ecc.

Esempio1 - variabile intera

celletta N nome

6 celletta A nome

Page 2: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

2

In tal caso A è il nome scelto per la variabile, 6 è il suo valore in un certo istante e il suo tipo è

quello intero.

Esempio2 - variabile decimale

In tal caso MEDIA è il nome scelto per la variabile, 6,5 è il suo valore e il suo tipo è quello

decimale

Esempio3 - variabile stringa

In tal caso COLORE è il nome scelto per la variabile, nero è il suo valore e il suo tipo è quello

stringa

Esempio4 – variabile booleana

In tal caso MAGGIORENNE è il nome scelto per la variabile, vero è il suo valore e il suo tipo

è quello booleana

Dichiarazione in VisulBasic.Net delle variabili. Essa consiste nell’anteporre la parola chiave “DIM” al nome della variabile e postporre la

parola chiave “AS” e il suo tipo corrispondente al nome della variabile, come mostra l’esempio

seguente:

' DICHIARAZIONI VARIABILI

Dim A As Integer

Dim Media As Decimal

Dim Colore As String

Dim Maggiorenne As Boolean

La costante è una celletta della RAM in cui è possibile memorizzare temporaneamente i valori

che non variano nel tempo, cioè che sono costanti.

In tal caso PIGRECO è il nome scelto per la costante, invece 3,14 è il suo valore. Si dice che la

costante PIGRECO è di tipo “decimale”, poiché contiene un numero con la virgola

Dichiarazione in VisulBasic.Net delle costanti Essa consiste nell’anteporre al nome della variabile la parola chiave CONST e postporre al nome

della costante il suo valore, come mostra l’esempio seguente:

' DICHIARAZIONI COSTANTI

CONST Pigreco=3.14

CONST Maggiorenne=”SI”

L’istruzione di assegnazione delle variabili

6,5 celletta

nome MEDIA

nero celletta

nome COLORE

vero celletta

MAGGIORENNE nome

3,14 celletta PIGRECO nome

Page 3: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

3

Essa permette di attribuire ad una variabile un valore

Esempi di assegnazioni con costanti e variabili: - raggio = 3,14

- voto = 7

- targa = “dx112ed”

- sposato = true

- conta = conta +1

L’operazione di concatenazione tra variabili di tipo stringa Date 2 variabili a e b di tipo string, l’operazione a+b si chiama di concatenazione. Ad esempio:

- se a=”il mio pc” e b =” è da formattare” � a+b =”il mio pc è da formattare”

- se a=”12” e b=”255” ���� a+b=”12255” e si legge la stringa “122555” o 122555 in formato testo

L’operazione di concatenazione tra una variabile di tipo stringa e una variabile di tipo intera Essa si ottiene usando l’operatore & (è commerciale). Ad es. supponiamo di dover calcolare la

soluzione x, dell’equazione 2x-2=0. Allora la soluzione è x=1 ma vogliamo che appaia insieme al

valore 1, un messaggio esplicativo, del tipo: “la soluzione è =”, cioè vogliamo concatenare un

valore intero 1 con un valore string “la soluzione è” � l’operazione di concatenazione si realizza

cosi: “la soluzione è =” & x. Essa produce il messaggio: ”la soluzione è =1”. Essa sarà usata nella

funzione MsgBox( ).

La funzione MsgBox

Essa si usa per consentire l’output attraverso l’uso di finestre: di avviso, di errore, di informazione, ecc. e l’output di valori numerici generati dal programma. . Essa ha tre parametri

separati dalla virgola: il 1) obbligatorio e il 2) e il 3) facoltativo. La sintassi della funzione MsgBox

è la seguente:

MsgBox(“messaggio utente nel prompt (zona grigia)”, numero, “testo nel title (barra blu)”)

Essa ha come 1) e 3) parametro gli stessi della funzione InputBox. La differenza è solo il 2)

parametro che serve a specificare, con un numero il tipo di icona da utilizzare.

CODICE VBASIC MsgBox("∆<0 soluzioni non

reali", 16, "Avviso")

CODICE VBASIC

MsgBox("∆<0 soluzioni non

reali", 64, "Avviso")

CODICE VB

x= - 0,5 MsgBox(x)

x= - 0,5 MsgBox(“ La soluzione

è x = " & x)

La funzione InputBox

Essa si usa per consentire l’input di un valore da tastiera che sarà confermato o meno

attraverso i pulsanti: ok o annulla

Esempi: inserendo entrambi i parametri 1) e 2) nella funzione InputBox()

Page 4: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

4

(fig.a)

Codice VB InputBox("QUALE' IL TUO PIATTO

PREFERITO?", "ELENCO DEI PIATTI")

(fig. b)

Codice VB InputBox("DAMMI UN NUMERO DA 1 A 7", "SCELTA DI UN NUMERO CASUALE")

I valori inseriti nel rigo bianco: “SPAGHETTI ALLA PESCATORA” (fig.1) e “7” (fig.2) saranno

interpretati come testo, quindi la variabile che li conterrà dovrà essere di tipo string. Ad es.:

StringaNome=InputBox(“inserisci messaggio utente nel prompt”,”inserisci nome title”)

Se si vuole una variabile numero tipo intero si utilizzerà la funzione Val nel seguente modo:

numero=Val (InputBox(“inserisci messaggio utente nel prompt”,”inserisci nome title”))

La funzione Val La stringa ‘12255’ è possibile convertirla in numero 12255 utilizzando la funzione del VBasic.Net

che si chiama Val. Essa dato un numero in formato testo, lo trasforma un numero in formato

numero. Ad es. data la stringa ’12255’ � Val (‘12255’) = 12255 ovvero un numero, cioè 12255.

La funzione Cstr (funzione inversa di Val) Il numero 12255 è possibile convertirlo in stringa ‘12255’ utilizzando la funzione del VBasic.Net

che si chiama Cstr. Essa dato un numero in formato testo, lo trasforma un numero in formato

numero. Ad es. data il valore in formato numero 12255 � Cstr (12255) = ‘12255’ è la stringa

‘12255’.

La tabella delle variabili Essa raggruppa in sintesi le variabili usate dal programma specificando per ognuna di esse:

- una descrizione sintetica dei valori che rappresenta

- il tipo di valori che può assumere

- se è una variabile di input o di output

- se è una variabile è di lavoro, cioè né di input e né di output.

Il diagramma a blocchi o flowchart o diagramma di flusso Esso è il metodo usato dai programmatori per trovare l’algoritmo (cioè la soluzione) a problemi

complessi. Esso consiste nel descrivere la sequenza di istruzioni elementari di un algoritmo in

modo grafico attraverso l’uso di simboli detti blocchi, collegati tra loro da frecce orientate che

indicano il flusso delle azioni.

I blocchi principali sono quattro: ovale, parallelogramma, rettangolo e rombo. Ciascun blocco ha un proprio significato. I blocchi sono: blocco di inizio o di fine, blocco di lettura

o di scrittura, blocco di elaborazione, blocco di decisione o di condizione. Ma vediamoli più nel

dettaglio:

1. Il blocco a forma di ovale. Esso si usa per indicare il punto di partenza e quello di

terminazione dell’algoritmo. Dal blocco “inizio” parte una sola freccia che raggiunge la prima

Page 5: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

5

azione dell’algoritmo e verso “inizio” non arriva alcuna freccia. Invece, verso il blocco “fine”

arrivano una o più frecce (in questa fig. solo una), ma da esso non ne parte nessuna.

2. Il blocco a forma di parallelogramma. Esso si usa per indicare un’operazione di immissione di dati (detta operazione di lettura o di input) o un’operazione di emissione di dati (detta anche

operazione di scrittura o di output). Verso il blocco, in genere, ci sono una o più frecce di entrata (in

questa fig. solo una) e dal blocco c’è una sola freccia di uscita.

3. Il blocco a forma di rettangolo. Esso si usa per indicare un’azione di calcolo. Verso il blocco,

in genere, ci sono una o più frecce di entrata (in questa fig. solo una) e dal blocco c’è una sola

freccia di uscita.

4. Il blocco a forma di rombo. Esso si usa per indicare un’operazione di confronto tra due

dati, per stabilire se la condizione in esso inserita è vera o è falsa. Verso il blocco c’è una sola

freccia di entrata e dal blocco ci sono solo due frecce di uscita in corrispondenza delle quali si

trovano indicazioni del tipo si/no, vero/falso o V/F.

frecce di direzione

Le frecce di direzione

Esse sono frecce orientate e sono usate per collegare i vari blocchi tra loro.

Altri simboli usati ma non sempre sono:

un piccolo quadrato: per

il punto di connessione tra

frecce orientate

un rettangolo con 2 barre laterali per

i sottoprogrammi, ad es. per i form di

VisualBasic.Net

un esagono per la struttura

ciclica con contatore, ad es.

per i che va da 1 a 100

Cosa serve per realizzare un programma in VB.net? Bisogna eseguire nell’ordine i seguenti passi:

Page 6: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

6

1) Dato un problema, disegnare la tabella delle variabili

2) Individuare l’algoritmo risolutivo per passi (detto anche pseudo codifica)

3) Individuare il diagramma a blocchi (detto anche flowchart)

4) Creare il form Visualbasic. Net, inserendo i controlli e le loro proprietà

5) Codificare l’evento click dei pulsanti di calcolo (button) inseriti nel Form

I passi 1), 2) e 3) sono stati già spiegati, restano da spiegare i seguenti passi 4) e 5)

L’interfaccia di Visual Basic.Net 2008

Che cosa è un form di Visual Basic.Net?

Il form è l’interfaccia grafica piccola e centrale sulla quale il programmatore inserisce degli

elementi grafici, detti controlli o strumenti, come ad es. i pulsanti (in VB button), le etichette

(in VB label), le caselle di testo (in VB textbox), ecc.

Che cosa è un controllo (o strumento) di VisualBasic.Net?

Un controllo (o strumento) è un elemento grafico che si trova in una finestra di VB detta

“casella degli strumenti”. Essa è la seguente:

A che serve il controllo (o strumento) etichetta (o label in VB)? Essa si usa per descrivere ciò che avviene nel form. Per distinguere una etichetta da un altro

controllo si usa il nome sintetico: “lbl”. Esempi: lblTitolo, lblSomma, ecc

A che serve il controllo (o strumento) casella di testo (o textbox inVB)? Esso si usa per inserire i valori di input e per far uscire a video i valori di output. Per

distinguere una casella di testo da un altro controllo si usa il nome sintetico: “txt”. Esempi sono:

txtNum1, txtNum2, ecc

Page 7: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

7

Esempio. Data la casella di testo txtNumero allora: - la scrittura txtNumero.Name dice che .Name è la proprietà nome della casella di testo

- la scrittura txtNumero.Text dice che .Text è la proprietà testo della casella di testo

- la scrittura txtNumero.font dice che .font è la proprietà font della casella di testo

- la scrittura txtNumero.backcolor dice che .backcolor è la proprietà colore di sfondo

La casella di testo “vede” tutto quello che riceve, sia testo che numeri, come testo. Pertanto se

inseriamo un numero in una casella di testo e vogliamo effettuare dei calcoli su di esso bisogna

convertirlo da formato testo a formato numero.

A che serve la funzione VAL usata nelle caselle di testo? Essa serve a convertire, come già suddetto, un numero da formato testo a formato numero.

Ad es. sia txtNumero una casella di testo e supponiamo che l’utente inserisca in essa il numero in

formato testo “5”, abbiamo quindi che:

- txtNumero.Text = “5” (si legge 5 in formato testo) mentre

- Val (txtNumero.Text) = 5 (si legge 5 in formato numerico).

A che serve il controllo (o strumento) pulsante (o button in VB) Esso serve ad eseguire le seguenti operazioni: a) i calcoli principali del programma, b) uscire dal programma, c) azzerare ai valori iniziali le variabili. Per distinguere il pulsante da un altro

controllo si usa il nome sintetico: “btn”. Esempi sono: btnCalcola, btnEsci, ecc

A che serve il controllo (o strumento) elenco a discesa (o combobox in VB)

Esso è un elenco a discesa di elementi. Esso si usa per inserire un valore di input, da un elenco di valori predefiniti. Per distinguere una combobox da un altro controllo si usa il nome sintetico:

“cmb”. Esempi sono: cmbTemperatute, cmbQuantità, ecc

Che cosa sono le proprietà dei controlli (o strumenti)?

Sono delle caratteristiche che servono a caratterizzare in modo molto semplice e rapido

l’aspetto grafico dei controlli. Esse si trovano nella finestra proprietà sul lato destro

dell’interfaccia di VB.Net.

(fig. a)

(fig.b)

Definizione di oggetto Un oggetto è un qualsiasi form, controllo o libreria del linguaggio. Più semplicemente gli

oggetti (form, controlli e libreria1) sono i i “mattoni” che servono per costruire una interfaccia

grafica di VB in analogia ai mattoni usati nell’edilizia per costruire una casa.

Definizione di proprietà degli oggetti

Una proprietà è una caratteristica di un oggetto come: il nome, il colore. la dimensione, la posizione, il testo che appare in esso, ecc. Ogni oggetto possiede delle proprietà e ogni volta che

1 Un es.di oggetto di libreria è math, di cui più avanti si utilizzerà il metodo math.sqrt( )

Page 8: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

8

ci riferiamo alle proprietà di un oggetto scriviamo: nomeoggetto.proprietà, come ad es.

lbl1.text proprietà testo dell’oggetto label, di nome lbl1

Definizione di evento di un oggetto

L’evento è l’ azione provocata dall’utente sui form e controlli. Tale azione viene programmata

in VB dal programmatore e in tal caso si parla di programmazione ad eventi.

Un esempio classico di evento è il Click, cioè quando l’utente premerà su un pulsante farà verificare l’evento click. Esempi di eventi sono: click (usato per: label, button, textbox, ecc);

SelectedIndexChange (usato per combo box, ecc), keydown, keypress, enter, apertura del form,

ecc. La figura mostra i possibili eventi che si possono programmare per l’evento button (Vedi figura)

Visualizzare la finestra delle proprietà di un controllo, di un form ecc. in VB Per visualizzare la finestra delle proprietà è sufficiente:

1) selezionarlo e premere il tasto F4

2) selezionarlo e poi scegliere la voce Finestra proprietà, dal menù Visualizza

Selezionata la proprietà, VB visualizza in basso alla finestra proprietà una breve spiegazione

del significato della proprietà selezionata

Le proprietà principali dei controlli: etichetta, casella di testo, pulsante, elenco a discesa sono:

- nome (o name in VB) che stabilisce il nome del controllo da usare nel codice visualbasic

- testo (o Text in VB) che stabilisce il contenuto testuale da visualizzare nel form

- font che stabilisce il tipo di carattere da utilizzare (times new roman, arial, ecc)

- colore di sfondo (o backcolor in VB) che stabilisce il colore del controllo

- items che individua gli elementi (in inglese items) da visualizzare nella combobox.

- selecteditem che individua l’elemento selezionato della combo box (si trova nella finestra delle

proprietà, gruppo DataBindings, come mostra la figura seguente:)

Inserire gli elementi nella Combobox, dal menù contestuale del mouse ���� Modifica elementi

Page 9: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

9

Definizione di metodo di un oggetto

Esso è un sottoprogramma predefinito del linguaggio VB già scritto e disponibile per il

programmatore associato ad un particolare oggetto. Per riferirsi ad esso scriviamo:

nomeoggetto.metodo( ).2

Esempi di metodi di oggetti: - math.sqrt( ) si legge metodo sqrt( ) dell’oggetto della libreria matematica math. Esso

permette di calcolare la radice quadrata di un numero. Esempio math.sqrt(4) effettua la radice

quadrata di 4.

- cmb1.items.add( ) si legge metodo add( ) dell’oggetto combobox cmb1. Esso aggiunge un item

(cioè un elemento) alla combobox cmb1. Es.1 cmb1.items.add(“napoli”), aggiunge l’elemento

napoli alla combobox cmb1. Es.2 cmb3.items.add(txt1.text), aggiunge l’elemento che si trova

nella casella di testo txt1 all’elenco a discesa cmb3

- cmb2.items.remove( ) si legge metodo remove( ) dell’oggetto combobox cmb2. Esso rimuove

un item (cioè un elemento) dalla combobox cmb2. Esempio cmb1.items.remove(“caserta”)

rimuove l’elemento caserta alla combobox cmb2

Un programma VBasic.Net Esso è una sequenza finita di istruzioni generate in parte in modo automatico dal linguaggio

ed un’altra parte in modo manuale dal programmatore. La parte del programmatore è riservata soprattutto alla programmazione dei pulsanti di comando. Il codice di ogni pulsante

deve essere inserito tra i comandi, generate da VBasic, “Private Sub” ed “End Sub”

Esempio1 – Calcolo del form relativo all’algoritmo del calcolo dell’area del rettangolo.

Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

b Base del rettangolo Numerico intera X

h Altezza del rettangolo Numerico intera X

a Area del rettangolo Numerica intera X

Algoritmo 1. Inizio

2. Dammi il valore della base b

3. Dammi il valore della altezza h

4. Calcola il prodotto A = b x h

5. Stampa a video la sua area A

6. Fine

2 Da non confondersi al modo con cui ci si riferisce ad una proprietà di un oggetto: nomoggetto.proprietà

Page 10: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

10

Il codice da inserire dietro al pulsante “Calcola” del Form precedente è il seguente:

Private Sub BtnCalcola_Click(ByVal sender As System.Object, ByVal e As

System.EventArgs) Handles BtnCalcola.Click

' DICHIARAZIONI VARIABILI

Dim base, altezza As Integer

Dim area As Decimal

' txtBase E’ LA CASELLA DI TESTO USATA NEL FORM PER CONTENERE IL VALORE

DI BASE SCELTO DALL’UTENTE. MA LA CASELLA DI TESTO TRASFORMA TUTTO

QUELLO CHE RICEVE IN TESTO . PER CONVERTIRE QUELLO CHE RICEVE DA TESTO

A NUMERO SI USA LA FUNZIONA VAL PER LA VARIABILE BASE e PER l’ ALTEZZA

base = Val(txtBase.Text)

altezza = Val(txtAltezza.Text)

' CALCOLO DELL’AREA DEL RETTANGOLO

area = base * altezza

' ASSEGNAZIONE DELL’AREA CALCOLATA ALLA CASELLA DI TESTO txtArea

txtArea.Text = area

End Sub

Problema4: Dati due numeri A e B, calcolarne la somma.

Per la realizzazione di questo programma in VB.net seguiamo i suddetti 5 passi:

1) la tabella delle variabili di input, di output e di lavoro è la seguente:

Tabelle delle variabili di input, output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

A

B

Som

Primo numero

Secondo numero

Somma dei 2 numeri

Numero intero

Numero intero

Numero intero

X

X

X

Page 11: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

11

2) Individuazione dell’algoritmo per passi

Algoritmo per passi

1. inizio

2. dammi il valore del primo numero A

3. dammi il valore del secondo numero B

4. somma i due numeri A e B

5. assegna la somma del punto 4 a som

6. visualizza a video la somma Som

5. fine

3) individuazione del diagramma a blocchi

Algoritmo col diagramma a blocchi

4) Creazione del form Visualbasic.Net, inserendo gli oggetti: label, textbox e botton, ecc. e

definendo le loro proprietà

5) Codifica del corpo dei pulsanti di calcolo (button) inseriti nel Form Qui nel form c’è un solo pulsante che effettua un calcolo e si chiama “+”. Pertanto procederemo

a scrivere il codice visualbasic.net sono per tale pulsante. Esso è il seguente:

CODIFICA PULSANTE “+” ' DICHIARAZIONE DELLE VARIABILI

Dim A, B, Som As Integer ' INPUT DEL VALORE DI A E DEL VALORE DI B

A=Val(txtA.Text)

B=Val(txtB.Text) ' SOMMA A+B

Som=A+B ' STAMPA SOMMA

txtSom.Text=som

txtA è il nome della casella di testo creata per A,

mentre .Txt è la proprietà testo delle caselle txtA.Text

e txtB.Text

Fine

Som=A+B

Inizio

A, B

Som

Page 12: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

12

Problema5: Dati un numero A, calcolare il suo quadrato QA e doppio DA e li stampi a video

1) Tabelle delle variabili di input e output Nome Descrizione Tipo Input Output Lavoro

A

QA

DA

Primo numero

Quadrato di A

Doppio di A

Numero intero

Numero intero

Numero intero

X

X

X

2) Algoritmo per passi 1. inizio

2. dammi il valore del primo numero A

3. calcola il suo quadrato, AQ=A*A

4. calcola il suo doppio, DA=2*A

5. visualizza AQ e DA

6. fine

3) Algoritmo col diagramma a blocchi

4) Creazione del form Visualbasic. Net

5) CODIFICA PULSANTE “Calcola”

' DICHIARAZIONE DELLE VARIABILI

DIM a, qa, da, As Integer ' INPUT DEL VALORE DI A

a = Val (txtA.Text) ' CALCOLO DEL QUADRATO DI A

qa = a*a ' CALCOLO DEL DOPPIO DI A

da = a+a ' STAMPA A VIDEO DI QA E DA

txtQa.Text = qa

txtDa.Text = da

Problema6: Date le basi maggiori e minori e l’altezza di un trapezio, calcolare l’area.

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

B1

b2

H

SOM

P

Area

Base maggiore

base minore

Altezza

Somma (B1+b2)

Prodotto SOM*H

Area del trapezio P/2

Numero intero

Numero intero

Numero intero

Numero intero

Numero intero

Numero decimale

X

X

X

X

X

X

Esercizio

Ricavare dal problema6 suddetto e dalla tabella delle variabili: l’algoritmo, il diagramma a

blocchi, il form e il codice vbasic del pulsante calcola.

Page 13: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

13

2-PARTE: Ripasso della struttura di sequenza o sequenziale

In un algoritmo si parla di struttura di sequenza quando le istruzioni elementari dell’algoritmo sono una di seguito all’altra come mostra la figura:

Problema1: Dati due numeri A e B, calcolarne la somma.

Per la realizzazione di questo programma in VB.net seguiamo i suddetti 5 passi:

1) la tabella delle variabili di input, di output e di lavoro è la seguente:

Tabelle delle variabili di input, output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

A

B

Som

Primo numero

Secondo numero

Somma dei 2 numeri

Numero intero

Numero intero

Numero intero

X

X

X

2) Individuazione dell’algoritmo per passi

Algoritmo per passi

1. inizio

2. dammi il valore del primo numero A

3. dammi il valore del secondo numero B

4. somma i due numeri A e B

5. visualizza la somma Som

5. fine

3) individuazione del diagramma a blocchi

Algoritmo col diagramma a blocchi

4) Creazione del form Visualbasic.Net, inserendo gli oggetti: label, textbox e botton, ecc. e

definendo le loro proprietà

Fine

Som=A+B

Inizio

A, B

Som

Page 14: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

14

5) Codifica del corpo dei pulsanti di calcolo (button) inseriti nel Form Qui nel form c’è un solo pulsante che effettua un calcolo e si chiama “+”. Pertanto procederemo

a scrivere il codice visualbasic.net sono per tale pulsante. Esso è il seguente:

CODIFICA PULSANTE “+” ' DICHIARAZIONE DELLE VARIABILI

Dim A, B, Som As Integer ' INPUT DEL VALORE DI A E DEL VALORE DI B A=Val(txtA.Text)

B=Val(txtB.Text) ' SOMMA A+B Som=A+B ' STAMPA SOMMA txtSom.Text=som

txtA è il nome della casella di testo creata per A,

mentre .Txt è la proprietà testo delle caselle txtA.Text

e txtB.Text

Problema2: Dati un numero A, calcolare il suo quadrato QA e il suo doppio DA e li stampi.

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

A

QA

DA

Primo numero

Quadrato di A

Doppio di A

Numero intero

Numero intero

Numero intero

X

X

X

2) Algoritmo per passi 1. inizio

2. dammi il valore del primo numero A

3. calcola il suo quadrato, AQ=A*A

4. calcola il suo doppio, DA=2*A

5. visualizza AQ e DA

6. fine

3) Algoritmo col diagramma a blocchi

Page 15: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

15

4) Creazione del form Visualbasic. Net

5) CODIFICA PULSANTE “Calcola”

' DICHIARAZIONE DELLE VARIABILI DIM a, qa, da, As Integer

' INPUT DEL VALORE DI

a = Val (txtA.Text)

' CALCOLO DEL QUADRATO DI A

qa = a*a

' CALCOLO DEL DOPPIO DI A

da = a+a

' STAMPA A VIDEO DI QA E DA

txtQa.Text = qa

txtDa.Text = da

Problema3: Date le basi maggiori e minori e l’altezza di un trapezio, calcolare l’area.

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

B1

b2

H

SOM

P

Area

Base maggiore

base minore

Altezza

Somma (B1+b2)

Prodotto SOM*H

Area del trapezio P/2

Numero intero

Numero intero

Numero intero

Numero intero

Numero intero

Numero decimale

X

X

X

X

X

X

2) Algoritmo per passi

1. Inizio

2. Dammi il valore della base maggiore B1

3. Dammi il valore della base minore b2

4. Dammi il valore dell’altezza H

5. Somma la base B1 con la B2

6. Assegna a som, la somma del punto 5

7. Moltiplica le variabili som e h

8. Assegna a P, il prodotto del punto 7

9. Dividi il prodotto per 2

10. Assegna ad Area, la divisione del punto 9

11. Stampa a video l’area A

10. Fine

3) Algoritmo col diagramma a blocchi

Inizio

B1,b2,H

som =B1+b2

P = som * H

Area = P / 2

Fine

Area

Page 16: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

16

4) Creazione del form Visualbasic. Net

5) CODIFICA PULSANTE “Calcola” ' DICHIARAZIONE DELLE VARIABILI

Dim B1, B2, H, Som, P As Integer

Dim A As Double

' INPUT DEI VALORI DI B1, b2 e H

B1 = Val (txtB1.Text)

B2 = Val (txtB2.Text)

H = Val (txtH.Text)

' CALCOLO DELL’AREA DEL TRAPEZIO

Som = B1 + B2

P = Som * H

A = P / 2

' STAMPA DELL’AREA DEL TRAPEZIO

txtA.Text = A

Problema4: Scrivere un algoritmo che dati tre voti interi A, B e C letti in input, calcoli la

media aritmetica e la stampi in output

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

A

B

C

SOM

MED

1° voto

2° voto

3° voto

Somma dei tre voti

Media dei tre voti

Numero intero

Numero intero

Numero intero

Numero intero

Numero decimale

X

X

X

X

X

2) Algoritmo per passi

1. Inizio

2. Dammi il primo voto A

3. Dammi il secondo voto B

4. Dammi il terzo voto C

5. Somma i tre voti A, B e C

6. Calcola la media dei tre voti

7. Fine

3) Algoritmo col diagramma a blocchi

Inizio

A,B,C

SOM =A+B+C

Media =SOM / 3

Fine

Media

Page 17: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

17

4) Creazione del form Visualbasic. Net

5) CODIFICA PULSANTE “Calcola”

' DICHIARAZIONE DELLE VARIABILI Dim A, B, C, SOM As Integer

Dim media As Decimal

' INPUT DEI VALORI DI A, B e

C

A = Val (txtA.Text)

B = Val (txtB.Text)

C = Val (txtC.Text)

' CALCOLO DELLA MEDIA

SOM = A + B + C

media = SOM / 3

' STAMPA DELLA MEDIA A VIDEO

txtMedia.Text = media

Problema5: Scrivere un algoritmo che dati due numeri X e Y, effettui lo scambio dei valori e

stampi a video i nuovi valori assunti da esse, utilizzando una variabile di appoggio.

Capiamo il problema: sia x=10 e y=20

1) modo: sposto prima il contenuto di y in x, allora faccio x=y, quindi x sarà = 20, ma anche y = 20

2) modo: sposto prima il contenuto di x in y, allora faccio y=x, quindi y sarà = 10, ma anche x = 10

Bene in entrambi i modi ho ottenuto due valori uguali di x e di y e non è quello che volevo. Cosa

devo fare? Prima di effettuare lo scambio, occorre conservare il valore di x o di y all’interno di

un’altra variabile, detta temporanea, TEMP.

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

X

Y

TEMP

Primo valore

Secondo valore

Variabile temporanea di appoggio

Numero intero

Numero intero

Numero intero

X

X

X

X

X

2) Algoritmo per passi

1. Inizio

2. Dammi i valori di X e Y

3. Assegna a TEMP il valore di X

4. Assegna ad X il valore di Y

5. Assegna ad Y il valore di TEMP

6. Stampa X e Y

8. Fine

3) Algoritmo col diagramma a blocchi

X Y

Page 18: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

18

4) Creazione del form Visualbasic. Net

5) CODIFICA PULSANTE “Calcola”

' DICHIARAZIONE DELLE VARIABILI Dim x, y, temp As Integer

' INPUT DEI VALORI DI X E Y

x = Val(txtX.Text)

y = Val(txtY.Text)

'SCAMBIO DEI VALORI DELLE X E Y

temp = x 'CONSERVO IN TEMP, X

x = y

y = temp

' STAMPA DEI NUOVI VALORI DI X E Y

txtX.Text = x

txtY.Text = y

Problema6: Scrivere un algoritmo che dati in input quattro valori interi A, B, C e D, ruoti il

loro valore di uno step indietro in senso antiorario e scriva in output il loro valore modificato.

prima

rotazione di uno step in senso

orario

dopo

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

A

B

C

D

TEMP

Primo valore

Secondo valore

Terzo valore

Quarto Valore

Variabile temporanea di appoggio

Numero intero

Numero intero

Numero intero

Numero intero

Numero intero

X

X

X

X

X

X

X

X

X

2) Algoritmo per passi

1. Inizio

2. Dammi i valori di A,B,C,D

3. Assegna a TEMP il valore di A

4. Assegna ad A il valore di D

5. Assegna ad D il valore di C

6. Assegna ad C il valore di B

7. Assegna ad B il valore di TEMP

8. Stampa i nuovi valori di A,B,C,D

9. Fine

3) Algoritmo col diagramma a blocchi

Page 19: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

19

4) Creazione del form Visualbasic. Net

5) CODIFICA PULSANTE “Calcola” ' DICHIARAZIONE DELLE VARIABILI Dim A, B, C, D, TEMP As Integer

' INPUT DEI VALORI DI A,B,C,D

A = Val (txtA.text)

B = Val (txtB.Text)

C = Val (txtC.Text)

D = Val (txtD.Text)

' SCAMBIO DEL VALORE TRA A,B,C,D

TEMP = A

A = D

D = C

C = B

B = TEMP

' OUTPUT DEI VALORI A,B,C,D MODIFICATI

txtA.Text = A

txtB.Text = B

txtC.Text = C

txtD.Text = D

Problema7: Trovare l’algoritmo che calcoli la tabellina di un numero da 1 a 1000 e stampi la

tabellina scelta a video

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

NUM

R1

R2

R3

R4

R5

R6

R7

R8

R9

R10

Numero da 1 a 1000 di cui si

vuole conoscere la tabellina

1° risultato della tabellina

2° risultato della tabellina

3° risultato della tabellina

4° risultato della tabellina

5° risultato della tabellina

6° risultato della tabellina

7° risultato della tabellina

8° risultato della tabellina

9° risultato della tabellina

10° risultato della tabellina

Numero intero

Numero intero

“ ”

“ ”

“ ”

“ ”

“ ”

“ ”

“ ”

“ ”

“ ”

X

X

X

X

X

X

X

X

X

X

X

2) Algoritmo per passi

1. Inizio

2. Dammi il numero, NUM

3. Assegna a R1 il valore NUM*1

4. Assegna a R2 il valore NUM*2

5. Assegna a R3 il valore NUM*3

6. Assegna a R4 il valore NUM*4

7. Assegna a R5 il valore NUM*5

8. Assegna a R6 il valore NUM*6

9. Assegna a R7 il valore NUM*7

10. Assegna a R8 il valore NUM*8

11. Assegna a R9 il valore NUM*9

12. Assegna a R10 il valore NUM*10

13. Stampa a video in label R1,R2,R3,R4,R5

14. Stampa a video in label R6,R7,R8,R9,R10

15. fine

Page 20: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

20

R1=NUM*1

R2=NUM*2

R3=NUM*3

R4=NUM*4

R5=NUM*5

R6=NUM*6

R7=NUM*7

R8=NUM*8

R9=NUM*9

R10=NUM*10

Problem8: Trovare l’algoritmo che calcoli una tabella di conversione da euro a 8 valute e

stampi le conversioni a video.

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

Euro

Lira

Franco

DollaroUsa

DollaroAustr

Scellino

Yen

Corona

Sterlina

Valuta in Euro

Valuta in Lire

Valuta in Franco

Valuta in dollaro Americano

Valuta in dollaro Austrialano

Valuta in scellino Austriaco

Valuta in yen Giapponese

Valuta in corona Ceka

Valuta in sterlina Inglese

Numero decimale

“ ”

“ ”

“ ”

“ ”

“ ”

“ ”

“ ”

“ ”

X

X

X

X

X

X

X

X

X

2) Algoritmo per passi

1. Inizio

2. leggi la valuta euro

3. assegna a Lira, euro* 1936.27

4. assegna a Franco, euro* 1.33973

5. assegna a DollaroUsa, euro* 1.35264

6. assegna a DollaroAustr, euro* 1.3782

7. assegna a Scellino, euro* 13.7603

8. assegna a Yen, euro* 112.66

9. assegna a Corona, euro* 24.6874

10. assegna a Sterlina, euro* 0.85044

11. stampa a video Lira, Franco, DollaUsa

12. stampa a video DollaroAustr, Scellino

13. stampa a video Yen, Corona, Sterlina

14. fine

Fine

R1..R10

CODIFICA PULSANTE CALCOLA

Dim numero As Integer

num=Val(txtNumero.Text)

‘ Calcolo

R1 = num*1

R2 = num*2

R3 = num*3

R4 = num*4

R5 = num*5

R6 = num*6

R7 = num*7

R8 = num*8

R9 = num*9

R10 = num*10

‘ Stampa video

lbl1.Text=R1

lbl2.Text=R2

lbl3.Text=R3

lbl4.Text=R4

lbl5.Text=R5

lbl6.Text=R6

lbl7.Text=R7

lbl8.Text=R8

lbl9.Text=R9

lbl10.Text=R10

Inizio

NUM

Page 21: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

21

Lira = Euro*1936.27

Franco = Euro* 1.33973

DollaroUsa = Euro*1.35264

DollaroAustr = Euro*1.3782

Scellino = Euro*13.7603

Yen = Euro*112.66

Corona = Euro*24.6874

Sterlina = Euro*0.85044

Problema9: Trovare un algoritmo che esegua una calcolatrice banale che effettui la somma di

2 numeri e la stampi a video.

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

NUMERO1

NUMERO2

SOMMA

Primo Numero

Secondo Numero

Somma dei 2 numeri

Numero intero

Numero intero

Numero intero

X

X

X

Algoritmo per passi

1. Inizio

2. Dammi il primo numero NUMERO1

3. Dammi il secondo numero NUMERO2

4. Somma i due numeri

5. Stampa a video la somma

Creazione del form Visualbasic. Net

Suggerimenti grafici. I controlli grafici che il form VB deve avere sono: a) una textbox, rinominata txtDisplay, per riprodurre il display della calcolatrice

b) 10 button per riprodurre i 10 pulsanti relativi alle 10 cifre (1,2,3,4,5,6,7,8,9 e 0)

c) 1 button per l’operatore di somma e 1 button per l’operatore di uguale.

In totale dobbiamo programmare 12 pulsanti. Data la complessità, dividiamo il problema in

sottoproblemi a), b) e c)

Inizio

Euro

Fine

stampa

CODIFICA PULSANTE CONVERTI Dim lira, franco, dollarousa, dollaroa, scellino, yen, corona, sterlina As

Decimal

'calcolo euro= Val (txtEuro.Text)

Lira= euro * 1936.27

Franco = euro * 1.33973

DollaroUsa = euro * 1.352

DollaroAustr = euro * 1.3782

Scellino = euro * 13.7603

Yen = euro * 112.66

Corona = euro * 24.6874

Sterlina = euro * 0.85044

'stampa a video Label1.Text = lira

Label2.Text = franco

Label3.Text = dollarousa

Label4.Text = dollaroa

Label5.Text = scellino

Label6.Text = yen

Label17.Text = corona

Label18.Text = sterlina

Page 22: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

22

a) Tutte le cifre del 1 addendo da visualizzare sul display dovranno apparire una di seguito all’altra.

Ciò si ottiene programmando i 10 pulsanti. Più precisamente, scriveremo:

1) pulsante: txtDisplay.text= txtDisplay.text+”1” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 1)

2) pulsante: txtDisplay.text= txtDisplay.text+”2” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 2)

3) pulsante: txtDisplay.text= txtDisplay.text+”3” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 3)

4) pulsante: txtDisplay.text= txtDisplay.text+”4” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 4)

5) pulsante: txtDisplay.text= txtDisplay.text+”5” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 5)

6) pulsante: txtDisplay.text= txtDisplay.text+”6” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 6)

7) pulsante: txtDisplay.text= txtDisplay.text+”7” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 7)

8) pulsante: txtDisplay.text= txtDisplay.text+”8” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 8)

9) pulsante: txtDisplay.text= txtDisplay.text+”9” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 9)

0) pulsante: txtDisplay.text= txtDisplay.text+”0” (che si legge cosi: nel testo della casella di

testo txtDisplay metti quello che c’è già dentro + il numero 0)

Test del sottoproblema a). Se la programmazione dei 10 tasti è andata a buon fine, mandando in

esecuzione il form, il primo addendo apparirà (in formato testo) completamente sul display

b) Programmare il tasto +. Esso deve:

- convertire in formato numero il primo addendo apparso sul display (usando la funzione Val)

- conservarlo in memoria in una variabile temporanea NUMERO1, opportunamente dichiarata

- poi azzerare il display

c) Programmare il tasto =. A tal fine bisogna:

- Spostare la dichiarazione della variabile TEMP in testa al form, sotto la scritta “public class form”,

in modo che sia visibile in tutto il form e, quindi, anche in entrambi i pulsanti in cui è usata: + e =.

- Assegnare alla variabile temporanea NUMERO2, il secondo addendo visualizzato sul display in

formato numero e assegnare alla variabile temporanea SOMMA, la somma tra NUMERO1 e

NUMERO2. Infine mostrare sul display il valore di SOMMA

CODIFICA DEL PULSANTE 1 CODIFICA DEL PULSANTE 2

txtDisplay.Text=txtDisplay.Text+"1"

txtDisplay.Text=txtDisplay.Text+"2"

CODIFICA DEL PULSANTE 3 CODIFICA DEL PULSANTE 4

txtDisplay.Text=txtDisplay.Text+"3"

txtDisplay.Text=txtDisplay.Text+"4"

CODIFICA DEL PULSANTE 5 CODIFICA DEL PULSANTE 6

txtDisplay.Text=txtDisplay.Text+"5"

txtDisplay.Text=txtDisplay.Text+"6"

CODIFICA DEL PULSANTE 7 CODIFICA DEL PULSANTE 8

txtDisplay.Text=txtDisplay.Text+"7"

txtDisplay.Text=txtDisplay.Text+"8"

Page 23: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

23

CODIFICA DEL PULSANTE 9 CODIFICA DEL PULSANTE 0

txtDisplay.Text=txtDisplay.Text+"9"

txtDisplay.Text=txtDisplay.Text+"0"

CODIFICA DEL PULSANTE SOMMA CODIFICA DEL PULSANTE =

' Calcolo formato numerico del 1 addendo

NUMERO1 = Val(txtDisplay.Text)

' Azzeramento display

txtDisplay.Text = ""

CODIFICA FORM1 Public Class Form1

' la variabile NUMERO1 deve essere

visibile sia nel bottone somma che in

quello uguale allora si dichiara qui

Dim NUMERO1 As Integer

Dim SOMMA, NUMERO2 As Integer

' Calcolo formato numerico del 2

addendo numero2

NUMERO2 = Val(txtDisplay.Text)

' Somma dei due addendi

SOMMA = NUMERO2 + NUMERO1

' Stampa a video della loro somma

txtDisplay.Text = SOMMA

Problema10: Scrivere un algoritmo che dati tre voti interi A, B e C letti in input, calcoli la

media aritmetica e la stampi in output

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

A

B

C

SOM

MED

1° voto

2° voto

3° voto

Somma dei tre voti

Media dei tre voti

Numero intero

Numero intero

Numero intero

Numero intero

Numero decimale

X

X

X

X

X

2) Algoritmo per passi

1. Inizio

2. Dammi il primo voto A

3. Dammi il secondo voto B

4. Dammi il terzo voto C

5. Somma i tre voti A, B e C

6. Calcola la media dei tre voti

7. Fine

3) Algoritmo col diagramma a blocchi

Inizio

A,B,C

SOM =A+B+C

Media =SOM / 3

Fine

Media

Page 24: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

24

4) Creazione del form Visualbasic. Net

5) CODIFICA PULSANTE “Calcola”

' DICHIARAZIONE DELLE VARIABILI

Dim A, B, C, SOM As Integer

Dim media As Decimal

' INPUT DEI VALORI DI A, B e C

A = Val (txtA.Text)

B = Val (txtB.Text)

C = Val (txtC.Text)

' CALCOLO DELLA MEDIA

SOM = A + B + C

media = SOM / 3

' OUTPUT DELLA MEDIA A VIDEO

txtMedia.Text = media

3-PARTE – Ripasso della struttura di selezione

La struttura di selezione permette di impostare nell’algoritmo percorsi o “rami” diversi in base a condizioni che possono essere o meno verificate.

Casi particolari della struttura di selezione 1) Si parla di struttura di selezione ad una via, quando il percorso ‘falso’ non è presente. Essa,

nel metodo del diagramma a blocchi, si rappresenta cosi:

Nel diagramma a blocchi

Esempio: N1 è positivo?

In Visual Basic.Net

' DICHIARAZIONE DELLE VARIABILI

Dim N1 As Integer

' INPUT

N1=Val(txtN1.text)

' CALCOLO

If N1 > 0 Then

‘ OUTPUT

MsgBox(N1)

End If

2) Si parla di struttura di selezione a 2 vie, quando vi sono entrambi i percorsi: vero e falso. Essa, nel metodo del diagramma a blocchi, si rappresenta cosi:

Nel diagramma a blocchi

Esempio: Max tra N1 e N2

In Visual Basic.Net ' DICHIARAZIONE DELLE VARIABILI

Dim N1, N2, Max As Integer

' INPUT

N1=Val(txtN1.text);

N2=Val(txtN2.text)

' CALCOLO

If N1 > N2 Then

Max = N1

Else

Max = N2

End If

‘ OUTPUT

MsgBox(Max)

Page 25: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

25

3) Si parla di struttura di selezione a più vie, quando oltre ai percorsi ‘vero’ e ‘falso’ ce ne sono altri. Essa, nel metodo del diagramma a blocchi, si rappresenta cosi: (vedi esempio)

Esempio: Letto un prezzo di un prodotto e la sua

quantità, in base alla quantità richiesta effettua uno

tasso di sconto diverso.

In Visual Basic.Net

Dim prezzo, quantità, tasso As

Decimal

'INPUT

prezzo = Val(txtPrezzo.Text)

quantita = Val(txtQuantita.Text)

'SELEZIONE MULTIPLA IN VB.NET

Select Case quantita

Case 1

tasso = 10

Case 2

tasso = 20

Case 3

tasso = 30

Case Else

tasso = 40

'COMPRENDE I CASI quantita > 3

End Select

Problema11: Dati due numeri N1 e N2, determinare il minimo e il massimo e stamparli

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

N1

N2

MIN

MAX

Primo Numero

Secondo Numero

Minimo tra i due numeri

Massimo tra due numeri

Numero intero

Numero intero

Numero intero

Numero intero

X

X

X

X

2) Algoritmo per passi 1. inizio

2. dammi due valori diversi per N1 e per N2

3. confronta N1 con N2

4. se N1 > N2, allora MAX=N1 e MIN = N2

5. altrimenti MIN = N1 e MAX = N2

6. stampa MIN e MAX

7. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi Non disegnato per mancanza di tempo

5) Codifica del corpo dei pulsanti di calcolo Dim N1, N2, Max, Min As Integer ' input

N1 = Val(txtN1.Text)

N2 = Val(txtN2.Text)

' controllo selezione a 2 vie

If N1 > N2 Then

Max = N1

Min = N2

Else

Max = N2

Min = N1

End If

' output

lbl4.Text = Max

lbl5.Text = Min

Page 26: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

26

Problema12 : Dati due numeri N1 e N2, ordinarli in ordine crescente e stamparli a video

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

N1

N2

Primo Numero

Secondo Numero

Numero intero

Numero intero

X

X

2) Algoritmo per passi 1. inizio

2. dammi due valori diversi per N1 e per N2

3. confronta N1 con N2

4. se N1 > N2, allora stampa N2 e poi N1

5. altrimenti stampa N1 e poi N2

6. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo dei pulsanti di calcolo

Dim N1, N2 As Integer

' input

N1 = Val(txtN1.Text)

N2 = Val(txtN2.Text)

' controllo e stampa a video

If N1 < N2 Then

lbl3.text = N1

lbl4.text = N2

Else

lbl3.Text = N2

lbl4.Text = N1

End If

Problema13: Dati due numeri N1 e N2, calcolare quello positivo e quello negativo e stamparlo

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

N1

N2

Primo Numero

Secondo Numero

Numero intero

Numero intero

X

X

POS

NEG

Numero Positivo

Numero Negativo

Numero Intero

Numero Intero

X

X

2) Algoritmo per passi 1. inizio

2. dammi due valori diversi per N1 e per N2

3. confronta N1 con N2

4. se N1 > 0, allora POS=N1 e stampa POS

5. altrimenti NEG=N1 e stampa NEG

5. se N2 >0, allora POS=N2 e stampa POS

5. altrimenti NEG=N2 e stampa NEG

6. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi Non disegnato per mancanza di tempo

5) Codifica del corpo dei pulsanti di calcolo

Dim N1, N2, POS, NEG As Integer

N1 = Val(txtN1.text)

N2 = Val(txtN2.text)

If N1 > 0 Then

POS = N1

lbl4.Text = POS

Else

NEG = N1

lbl3.Text = NEG

End If

If N2 > 0 Then

POS = N1

lbl4.Text = POS

Else

NEG = N2

Lbl3.Text = NEG

End If

Page 27: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

27

Problema14: Dati due numeri N1 e N2, determinare quello pari e quello dispari e stamparli

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

N1

N2

Primo Numero

Secondo Numero

Numero intero

Numero intero

X

X

PARI

DISP

Numero Pari

Numero Dispari

Numero Intero

Numero Intero

X

X

Q1,Q2

R1,R2

Quozienti dei numeri N1 e N2

Resti delle divisioni per 2

Numero Intero

Numero Intero

X

X

2) Algoritmo per passi 1. inizio

2. dammi due valori diversi per N1 e per N2

3. Calcola Q1=INT(N1/2) e R1=N1-2*Q1

4. Calcola Q2=INT(N2/2) e R2=N2-2*Q2

5. se R1=0 allora PARI=N1 e stampa PARI

6. altrimenti DISP=N1 e stampa DISP

7. se R2=0 allora PARI=N2 e stampa PARI

8. altrimenti DISP=N2 e stampa DISP

9. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo dei pulsanti di calcolo Dim N1, N2, PARI, DISP As Integer Dim Q1, Q2, R1, R2 As Integer

N1 = Val(txtN1.text)

N2 = Val(txtN2.text)

Q1=INT(N1/2); Q2=INT(N2/2)

R1=N1-2*Q1; R2=N2-2*Q2

If R1 = 0 Then

PARI = N1; lbl4.Text = PARI

Else DISP = N1; lbl3.Text = DISP

End If

If R2 = 0 Then

PARI = N2; lbl4.Text = PARI

Else DISP = N2; lbl3.Text = DISP

End If

Problema15: Dati tre numeri N1,N2 e N3 determinare quello Max e stamparlo a video

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

N1

N2

N3

Primo Numero

Secondo Numero

Terzo Numero

Numero intero

Numero intero

Numero intero

X

X

X

2) Algoritmo per passi 1. inizio

2. dammi i valori N1, N2, N3

3. Assegna a Max, il numero N1

4. Se N2 > Max allora a Max assegna N2

5. Se N3 > Max allora a Max assegna N3

6. stampa Max

7. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante calcola

Dim N1, N2, N3, Max As Integer

' input

N1 = Val(txtN1.text)

N2 = Val(txtN2.text)

N3 = Val(txtN3.text)

Max = N1

' calcolo

If N2 > Max Then Max = N2 End If

If N3 > Max Then Max = N3 End If

' output lbl5.text = Max

Page 28: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

28

PROBLEMA16: Scrivere un algoritmo che dati 3 numeri N1, N2 e N3 positivi e negativi,

calcoli la somma dei numeri positivi e la stampi a video.

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

N1

N2

N3

SOM

Primo Numero

Secondo Numero

Terzo Numero

Somma dei numeri positivi

Numero intero

Numero intero

Numero intero

Numero intero

X

X

X

X

2) Algoritmo per passi 1. inizio

2. dammi i valori N1, N2, N3

3. Se N1 > 0 allora a SOM=SOM+N1

4. Se N2 > 0 allora a SOM=SOM+N2

5. Se N3 > 0 allora a SOM=SOM+N3

6. stampa SOM

7. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante calcola

Dim N1, N2, N3, Max As Integer

' input

N1 = Val(txtN1.text)

N2 = Val(txtN2.text)

N3 = Val(txtN3.text)

' calcolo

If N1 > 0 Then SOM=SOM+N1 End If

If N2 > 0 Then SOM=SOM+N2 End If

If N3 > 0 Then SOM=SOM+N3 End If

' output lbl5.text = SOM

La variabile conteggio

Una variabile conteggio è un contatore che viene inizializzato al valore zero3 e poi viene

incrementato di una unità ogni qual volta si verifica una certa condizione.

PROBLEMA17: Scrivere un algoritmo che dati 3 numeri N1, N2 e N3 positivi e negativi,

conti quanti sono positivi e li stampi a video. (Suggerimento: usare una variabile conteggio

contapos).

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

N1

N2

N3

CONTPOS

Primo Numero

Secondo Numero

Terzo Numero

Contatore di numeri positivi

Numero intero

Numero intero

Numero intero

Numero intero

X

X

X

X

3 Per far capire il perché la variabile conteggio viene inizializzata a zero, dire che essa è simile al contatore del

contachilometri dell’automobile o al contasecondi del cronometro di un orologio: tutti partono da zero.

In seguito, però, ci saranno anche variabili a conteggio che saranno inizializzata ad un valore diverso come ad es. la

variabile indice ciclo (ad 1, a 2) ecc.

Page 29: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

29

2) Algoritmo per passi 1. inizio

2. dammi i valori N1, N2, N3

3. Se N1 > 0 allora CONTPOS+=1

4. Se N2 > 0 allora CONTPOS+=1

5. Se N3 > 0 allora CONTPOS+=1

6. stampa CONTPOS

7. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante calcola

Dim N1, N2, N3, Max As Integer

' input

N1 = Val(txtN1.text)

N2 = Val(txtN2.text)

N3 = Val(txtN3.text)

' calcolo

If N1 > 0 Then CONTPOS+=1 End If If N2 > 0 Then CONTPOS+=1 End If If N3 > 0 Then CONTPOS+=1 End If

' output lbl5.text = CONTPOS

PROBLEMA18: Scrivere un algoritmo che dati 3 numeri N1, N2 e N3 pari e dispari, conti

quanti sono pari e li stampi a video. (Suggerimento: usare una variabile conteggio contapari)

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

N1

N2

N3

CONTPARI

Q1, Q2

R1, R2

Primo Numero

Secondo Numero

Terzo Numero

Contatore dei numeri pari

Quozienti Q1 e Q2

Resto R1 e R2

Numero intero

Numero intero

Numero intero

Numero intero

Numero intero

Numero intero

X

X

X

X

X

X

2) Algoritmo per passi 1. inizio

2. dammi i valori N1, N2, N3

3. Q1=N1/2, Q2=N2/2, Q3=N3/2

4. R1=N1-Q1*2, R2=N2-Q2*2, R3=N3-Q3*2,

5. Se R1 = 0 allora CONTPARI+=1

6. Se R2 = 0 allora CONTPARI+=1

7. Se R3 = 0 allora CONTPARI+=1

8. stampa CONTPARI

9. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante calcola

Dim N1, N2, N3, Q1, Q2, Q3 As Integer

' input

N1=Val(txtN1.text), Q1=N1/2, R1=N1-Q1*2

N2=Val(txtN2.text), Q2=N2/2, R2=N2-Q2*2

N3=Val(txtN3.text), Q3=N3/2, R3=N3-Q3*2

' calcolo

If R1 = 0 Then CONTPARI+=1 End If If R2 = 0 Then CONTPARI+=1 End If If R3 = 0 Then CONTPARI+=1 End If

' output lbl5.text = CONTPOS

Page 30: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

30

PROBLEMA19: Scrivere un algoritmo che dati 3 numeri a, b e c li ordini in modo

strettamente crescente. (Suggerimento: basta calcolare prima il minimo tra a e b ed tra a e c;

poi calcolare il minimo tra b e c; usare una variabile scambio)

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

a

b

c

T

Primo Numero

Secondo Numero

Terzo Numero

Variabile Temporanea

Numero intero

Numero intero

Numero intero

X

X

X

X

X

X

X

2) Algoritmo per passi 1. inizio

2. dammi i valori a, b, c

3. se a > b scambiali di posto in modo che il

minimo sia al 1) posto

4. se a > c scambiali di posto in modo che il

minimo sia al 1) posto

5. se b > c scambiali di posto in modo che il

minimo sia al 2) posto

6. stampa a video i nuovi valori di a,b e c

7. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante calcola

Dim t, a, b, c As Integer

' input

a = Val(txtA.Text)

b = Val(txtB.Text)

c = Val(txtC.Text)

' calcolo del minimo tra a,b e c e lo

si mette al primo posto

If a > b Then t = a a = b b = t End If

If a > c Then t = a a = c c = t End If

' calcolo del minimo tra b e c e lo si

mette al secondo posto

If b > c Then t = b b = c c = t End If

' stampa dei numeir in ordine crescente

lbl5.Text=a lbl6.Text=b lbl7.Text=c

La funzione InputBox

Essa si usa per consentire l’input di un valore da tastiera che sarà confermato o meno attraverso i pulsanti: ok o annulla. Tale funzione InputBox ha due parametri separati dalla

virgola: il 1) obbligatorio e il 2) facoltativo. La sintassi della funzione InputBox è la seguente:

InputBox(“testo messaggio utente nel prompt (zona grigia)”, “testo nel title (barra blu)”)

Poiché il 2) parametro è facoltativo, se non viene specificato, il testo che appare nel title è quello del

nome della form che si sta utilizzando.

Esempi: inserendo entrambi i parametri 1) e 2) nella funzione InputBox()

(fig.a)

Codice VB InputBox("QUALE' IL TUO PIATTO

PREFERITO?", "ELENCO DEI PIATTI")

(fig. b)

Codice VB InputBox("DAMMI UN NUMERO DA 1 A 7", "SCELTA DI UN NUMERO CASUALE")

Page 31: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

31

I valori inseriti nel rigo bianco: “SPAGHETTI ALLA PESCATORA” (fig.1) e “7” (fig.2) saranno

interpretati come testo, quindi la variabile che li conterrà dovrà essere di tipo string. Ad es.:

StringaNome=InputBox(“inserisci messaggio utente nel prompt”,”inserisci nome title”)

Se si vuole una variabile numero tipo intero si utilizzerà la funzione Val nel seguente modo:

numero=Val (InputBox(“inserisci messaggio utente nel prompt”,”inserisci nome title”))

La funzione MsgBox

Essa si usa per consentire l’output attraverso l’uso di finestre: di avviso, di errore, di informazione, ecc. e l’output di valori numerici generati dal programma. Essa ha tre parametri

separati dalla virgola: il 1) obbligatorio e il 2) e il 3) facoltativo. La sintassi della funzione MsgBox

è la seguente:

MsgBox(“messaggio utente nel prompt (zona grigia)”, numero, “testo nel title (barra blu)”)

Essa ha come 1) e 3) parametro gli stessi della funzione InputBox. La differenza è solo il 2)

parametro che serve a specificare, con un numero il tipo di icona da utilizzare.

Esempi d’uso.

CODICE VBASIC

MsgBox("∆<0 soluzioni non

reali", 16, "Avviso")

CODICE VBASIC

MsgBox("∆<0 soluzioni non

reali", 64, "Avviso")

CODICE VB

x= - 0,5

MsgBox(x)

x= - 0,5

MsgBox("La soluzione è x = "

& x)

PROBLEMA 20.

Sapendo che un numero a è un quadrato perfetto se la sua radice è un numero intero, cioè:

trovare l’algoritmo che consenta di sapere se il numero a inserito è un quadrato perfetto.

Suggerimento: la funzione radice quadrata da usare in VisualBasic.Net è math.sqrt( )

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

a

b

qb

Numero da verificare

Parte intera radice quadrata di a

Quadrato di b

Numero intero

Numero intero

Numero intero

X

X

X

X

Page 32: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

32

2) Algoritmo per passi 1. inizio

2. dammi il valore del numero: a

3. ad b associa la parte intera della radice quadrata

di a

4. se b*b = a allora stampa il messaggio a video “a

è un quadrato perfetto”

5. altrimenti stampa il messaggio a video “a non è

un quadrato perfetto”

6. fine

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante calcola Dim a, b, qb As Integer;

a = val(InputBox(txtA.Text))

b = int(math.sqrt(a))

qb=b*b

If qb = a Then

lbl1.text= "a è un quadrato perfetto"

else

lbl1.text= "a non è un quadr. perfetto"

End If

4) Creazione del form Visualbasic. Net

PROBLEMA21: Scrivere un algoritmo che dati i 2 coefficienti b e c, di una equazione di 1

grado bx + c = 0, calcoli: il valore della soluzione x, se l'equazione è determinata oppure

stampi a video il messaggio eq. impossibile o eq. indeterminata (Suggerimento l’ eq. bx + c = 0

con b e c ≠ 0 è determinata e ha un’unica soluzione x = - c / b; l’ equazione del tipo 0 = c, con c

diverso da 0 è impossibile; l’ equazione 0 = 0 è indeterminata (cioè ha infinite soluzioni)).

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

b

c

x

Coefficiente della x

Coefficiente termine noto

Soluzione dell’equazione

Numero intero

Numero intero

Numero decimale

X

X

X

2) Algoritmo per passi

1. inizio

2. dammi valori dei coefficienti: b, c

3. se b<> 0 allora stampa x= - c / b

4. se b=0 e c<>0 allora eq. indeterminata

5. se b=0 e c=0 allora eq. impossibile

6. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante calcola

Dim b, c As Integer

Dim x As Decimal

' bx+c=0

b = Val(TextBox1.Text)

c = Val(TextBox2.Text)

If (b<>0) Then x = -c / b lblX.Text=x

End If

If (b=0 And c<>0) Then MsgBox("b=0 e

c<>0 non esistono soluzioni",32,

"Attenzione")End If

If (b=0 And c=0) Then

'caso in cui b = 0 e c = 0

MsgBox(" 0=0 infinite soluzioni ", 32,

"Attenzione")End If

Page 33: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

33

PROBLEMA22: Scrivere un algoritmo che dati i 3 coefficienti a,b e c, tutti e 3 ≠ 0, di una

equazione di 2 grado calcoli, se il delta > 0 i valori delle soluzioni: x1 e x2 della equazione:

ax2+bx+c = 0. Se invece il delta < 0, stampi a video il messaggio “soluzioni non reali”

1) Tabelle delle variabili di input e output

Nome Descrizione Tipo Input Output Lavoro

a

b

c

delta

x1

x2

Coefficiente della x2

Coefficiente della x

Termine noto

Valore = b2-4*a*c

Prima radice

Seconda radice

Numero intero

Numero intero

Numero intero

Numero intero

Numero intero

Numero intero

X

X

X

X

X

X

2) Algoritmo per passi 1. inizio

2. dammi valori dei coefficienti: a, b, c

3. calcolo del delta=b*b - 4*a*c

4. se delta < 0 allora mostra a video il messaggio

che le soluzioni non sono reali, altrimenti

5. calcola x1 con la formula conosciuta

6. calcola x2 con la formula conosciuta

7. stampa a video i valori di x1 e di x2

8. fine

4) Creazione del form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante calcola

Dim a, b, c, delta As Integer

Dim x1, x2 As Double

' input

a = Val(txtA.Text)

b = Val(txtB.Text)

c = Val(txtC.Text)

'calcolo delta = (b * b) - (4 * a * c)

If delta < 0 Then

MsgBox("∆<0 soluzioni non reali", 32,

"Attenzione")

Else

' Math.Sqrt() è la f. radice quadrata

x1 = (-b - Math.Sqrt(delta)) / (2 * a)

x2 = (-b + Math.Sqrt(delta)) / (2 * a)

' output

lbl6.text = x1 lbl8.text = x2

End If

Problema23: Scrivere un algoritmo che dati il prezzo e la quantità di un prodotto da acquistare,

calcoli sull’importo totale lordo: lo sconto del 10% se la quantità = 1; lo sconto del 20% se la

quantità = 2; lo sconto del 30% se la quantità = 3; e lo sconto del 40% in tutti gli altri casi e stampi

a video l’importo netto scontato da pagare.

Per la realizzazione di un programma in VB.net seguire i seguenti 5 passi:

1) Tabelle delle variabili di input, di output e di lavoro

Nome Descrizione Tipo Input Output Lavoro

prezzo

quantità

ilordo

inetto

sconto

tasso

Prezzo del prodotto

Quantità dello stesso prodotto

Importo lordo

Importo netto da pagare

Sconto da applicare all’importo lordo

Tasso di sconto in base alla quantità

Numero decimale

Numero intero

Numero decimale

Numero decimale

Numero intero

Numero intero

X

X

X

X

X

X

Page 34: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

34

2) Algoritmo per passi

1. Inizio

2. Leggi il prezzo del prodotto

3. Leggi la quantità del prodotto

4. Calcola ilordo = prezzo*quantita

5. Se la quantità = 1 allora tasso = 10

6. Se la quantità = 2 allora tasso = 20

7. Se la quantità = 3 allora tasso = 30

8. Negli altri casi, altrimenti tasso = 40

9. Calcola sconto = ilordo*tasso /100

10. Calcola inetto = ilordo - sconto

11. Stampa a video l’importo netto

12. Fine

3) Algoritmo col diagramma a blocchi

4) Creazione del form Visualbasic. Net

5) CODIFICA PULSANTE “Calcola”

Dim prezzo, ilordo As Decimal

Dim inetto, sconto As Decimal

Dim quantita, tasso As Byte

'INPUT

prezzo = Val(txtPrezzo.Text)

quantita = Val(txtQuantita.Text)

'CALCOLO IMPORTO LORDO DEL TOTALE DELLA SPESA

ilordo = prezzo * quantita

'SELEZIONE MULTIPLA IN VIASUAL BASIC.NET

Select Case quantita

Case 1

tasso = 10

Case 2

tasso = 20

Case 3

tasso = 30

'TALE CASO INGLOBA TUTTI GLI ALTRI POSSIBILI CASI, CIOE’CON QUANTITA’ > 3

Case Else

tasso = 40

End Select

'CALCOLO SCONTO SULL’IMPORTO TOTALE LORDO

sconto = ilordo * tasso / 100

inetto = ilordo - sconto

'OUTPUT IMPORTO NETTO

txtImporto.Text = inetto

Page 35: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

35

Problema24: Scrivere un algoritmo che dato il prezzo di un cellulare e data la quantità dei pezzi

venduti calcoli sull’ imponibile: lo sconto del 10% se la quantità dei pezzi venduti è fino a 3; lo

sconto del 20% se la quantità dei pezzi venduti è fino a 5; lo sconto4 del 30% se la quantità dei

pezzi venduti è fino a 10; lo sconto del 40% se la quantità dei pezzi venduti è > 10. Calcoli, inoltre,

il tasso di sconto, l’imponibile, l’importo netto scontato, l’iva del 20%, l’importo ivato. Stampare a

video: il tasso di sconto, lo sconto, l’imponibile, l’importo netto scontato, l’IVA del 20% e

l’importo ivato (o lordo o totale)

1) Tabelle delle variabili e costanti

Nome Descrizione Tipo Input Output Lavoro

costo

pezzi

iva

ilordo

inetto

ivato

sconto

tasso

Costo di un cellulare

N.ro di pezzi dello stesso cellulare

Iva da aggiungere all’importo netto

Importo lordo

Importo al netto dello sconto

Importo totale ivato

Sconto da applicare

Tasso di sconto in base ai pezzi

Numero decimale

Numero intero

Numero decimale

Numero decimale

Numero decimale

Numero decimale

Numero decimale

Numero intero

X

X

X

X

X

X

X

X

2) Algoritmo per passi 1. Inizio

2. Leggi il costo di un cellulare

3. Leggi il n.ro di pezzi di quel cellulare

4. Calcola imponibile = costo*n.ro dei pezzi

5. Se i pezzi sono fino a 3 allora tasso = 10

6. Se i pezzi sono fino a 5 allora tasso = 20

7. Se i pezzi sono fino a 10 allora tasso = 30

8. Negli altri casi, altrimenti il tasso = 40

9. Calcola lo sconto = imponibile*tasso /100

10. Calcola inetto = imponibile – sconto

11. Calcola iva=inetto*20/100

12. Calcola ivato=inetto+iva

11. Stampa a video il tasso, lo sconto,

12. Stampare l’importo lordo, l’importo netto

13. Stampare l’ IVA, l’importo Ivato

12. Fine

4) Creazione del Form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante Calcola Dim pezzi, tasso As Byte

Dim costo, imponibile As Decimal

Dim inetto, ivato As Decimal

Dim iva, sconto As Decimal

'INPUT

costo = Val(txtCosto.Text)

pezzi = Val(txtPezzi.Text)

'SELEZIONE MULTIPLA IN VBASIC.NET

Select Case pezzi

Case 1 To 3

tasso = 10

Case 1 To 5

tasso = 20

Case 1 To 10

tasso = 30

Case Else

tasso = 40

End Select

imponibile = costo * pezzi

sconto = imponibile * tasso / 100

inetto = imponibile - sconto

iva = inetto * 20 / 100

ivato = inetto + iva

'OUTPUT

txtTasso.Text = tasso

txtSconto.Text = sconto

txtIlordo.Text = imponibile

txtInetto.Text = inetto

txtIva.Text = iva

txtIvato.Text = ivato

4 Attenzione: Nel problema23 si usa la frase “quantità uguale ad 3” e nel problema 24 si usa la frase “pezzi fino ad 3”.

Questa diversità determina una differenza nell’uso del costrutto Case nel codice di VisualBasic.Net

Page 36: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

36

Problema25: Scrivere un algoritmo che data una temperatura stampa a video il messaggio:

a) “ molto caldo ” se la temperatura è > 32; b) “caldo” se la temperatura è > 25;

c) “ mite ” se la temperatura è > 16; d) “ fresco ” se la temperatura è > 10;

e) “ freddo ” se la temperatura è > 0; f) “ molto freddo ” se la temperatura è altrimenti.

1) Tabelle delle variabili e costanti

Nome Descrizione Tipo Input Output Lavoro

temp Temperatura scelta Numero decimale X

2) Algoritmo per passi 1. Inizio

2. leggi la temperatura temp

3. Se la temp > 32 allora “ molto caldo ”

4. Se la temp > 25 allora “ caldo ”

5. Se la temp > 16 allora “ mite ”

6. Se la temp > 10 allora “ fresco ”

7. Se la temp > 0 allora “ freddo ”

8. Altrimenti il messaggio “ molto freddo ”

9. Fine

4) Creazione del Form Visual Basic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante Calcola

Dim temp As Integer

temp = Val(txtTemperatura.Text)

Select Case temp

Case Is > 25

lblMessaggio.Text = "Caldo"

Case Is > 16

lblMessaggio.Text = "Mite"

Case Is > 10

lblMessaggio.Text = "Fresco"

Case Is > 0

lblMessaggio.Text = "Freddo"

Case Else

lblMessaggio.Text = "Molto Freddo"

End Select

IL CONTROLLO COMBOBOX

Esso è un elenco a discesa di elementi. Esso si usa per selezionare un valore, da un elenco di valori predefiniti, detti items. Per distinguere una combobox da un altro controllo si usa il nome

sintetico: “cmb”. Esempi sono: cmbTemperatute, cmbQuantità, ecc

I METODI5 ADD( ) E REMOVE ( ) DI COMBOBOX. Il metodo add() si usa per aggiungere un

elemento alla combobox e il metodo remove per eliminare un elemento dalla combobox

Esempio1. Sia cmb1 un combobox, allora la scritta cmb1.items.add(“napoli”) si legge metodo add( ) dell’oggetto combobox cmb1. Esso aggiunge l’elemento napoli alla combobox cmb1.

Esempio2. La scritta cmb1.items.add(txt1.text), aggiunge l’elemento che si trova nella casella di

testo txt1 alla combobox cmb1

Esempio3. La scritta cmb1.items.remove(“caserta”) si legge metodo remove( ) dell’oggetto combobox cmb1. Esso rimuove l’item (cioè l’elemento) caserta dalla combobox cmb1.

L’EVENTO6 SELECTED INDEX CHANCED DI COMBOBOX La frase “selected index chanced” significa che è “l’indice selezionato è cambiato”. Poiché ogni

elemento dell’elenco ha un indice (cioè un numero) che ne individua la posizione allora quando

l’utente seleziona, nell’elenco, un elemento diverso da quello di default si dice che si è verificato

l’evento che “l’indice selezionato è cambiato”

5 Essi sono sottoprogrammi predefiniti del linguaggio VB già scritti e disponibili per il programmatore e sono associati

ad un particolare oggetto. Per riferirsi ad un metodo noi scriviamo: nomeoggetto.metodo( ). 6 L’evento è l’azione provocata dall’utente sui form e controlli. Tale azione viene programmata in VB dal

programmatore.

Page 37: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

37

LA PROPRIETA’ “SELECTED-ITEM” DI COMBOBOX

Essa individua l’elemento selezionato della combobox.

ESERCIZI DI LABORATORIO SULL’USO DEL CONTROLLO COMBOBOX

ESERCIZIO 1: Inserire in una form una combobox, di nome cmb1, contenente un elenco di città

creato usando il percorso visuale e automatico seguente:

- selezionato il controllo combobox ���� dal menù contestuale del mouse ���� Modifica elementi

ESERCIZIO 2: Inserire in una form una combobox, di nome cmbColore, contenente un elenco di

colori a piacere. Inserire nella form, inoltre, una casella di testo, di nome txtColore ed un pulsante,

di nome btnInserisci che dovrà inserire nella combobox, tutti i nomi dei colori che l’utente scriverà

casella di testo, txtColore. (Suggerimento: Il form sarà come la figura seguente)

Private Sub btnInserisciColore_Click

Dim colore As String

colore = txtColore.Text

' aggiungi come elemento della cmb2.

il valore della variabile colore

cmbColore.Items.Add(colore)

txtColore.Text = "" End Sub

ESERCIZIO 3: Inserire in una form, una combobox, di nome cmbNumeri, contenente un elenco di

numeri da 1 a 5. Inserire nella form, inoltre, una casella di testo, di nome txtNumero ed un pulsante,

di nome btnInserisci che dovrà inserire nella combobox, tutti i numeri da 1 a 5 che l’utente scriverà

casella di testo, txtNumero. Successivamente creare un pulsante btnElimina che dovrà eliminare

dalla combobox i numeri pari 2 e 4, in modo che i numeri rimanenti nell’elenco siano sono i

dispari: 1, 3, 5. (Suggerimento: Il form sarà come la figura seguente:)

btnInserisciNumero_Click

Dim num As Decimal

num = Val(txtNum.Text)

cmbNum.Items.Add(num)

' metodo add elemento

txtNum.Text = ""

btnEliminaNumero_Click

Dim num As Decimal

num = Val(txtNum.Text)

cmbNum.Items.Remove(num)

‘ metodo remove elemento

ESERCIZIO 4: Inserire in una form, una combox, di nome cmbSquadreCalcio, contenente un

elenco di squadre a piacere creato utilizzando il metodo usato nell’ESERCIZIO 1. Inserire poi nella

form una casella di testo, di nome txtElementoSelezionato, contenente l’elemento (item) selezionato

Page 38: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

38

nella combobox. (Suggerimento: Il form sarà come la figura seguente e bisogna programmare per il

combobox l’evento SelectedIndexChanged e non l’evento click:)

Private Sub

cmbSquadreCalcio_SelectedIndexChanged()

' evento SelectedIndexChanged di cmb

Dim elemento As String

elemento=cmbSquadreCalcio.SelectedItem

' elemento selezionato dell'elenco

txtElementoSelezionato.Text = elemento

End Sub

ESERCIZIO 5: A partire dalla form dell’esercizio 4, inserire un nuovo pulsante di nome,

btnCancellaItem, che cancella dalla combobox, cmbSquadreCalcio, l’elemento dell’elenco

selezionato dall’utente. (Suggerimento: se l’utente selezionasse la squadra INTER e si premesse sul

pulsante btnCancellaItem, dall’elenco dovrà sparire la parola INTER, come mostra la figura)

Private Sub btnCancella_Click

Dim elemento As String

' proprietà SelectedItem

elemento=cmbSquadreCalcio.SelectedItem

' metodo Remove()

cmbSquadreCalcio.Items.Remove(elemento)

End Sub

Problema26 Scrivere un algoritmo che creata una combobox contenente i numeri da 1 a 10, in

base all’elemento scelto dall’utente nella combobox e alla pressione del tasto “calcola” visualizzi in

10 label la tabellina del numero richiesto.

1) Tabelle delle variabili e costanti

Nome Descrizione Tipo Input Output Lavoro

num numero della tabellina Numero intero X

2) Algoritmo per passi 1. Inizio

2. Scegli elemento dalla combobox

3. Assegna a num, l’elemento scelto

4. Fai le seguenti assegnazioni R1=1 * num R2=2 * num R3 = 3 * num

R4=4 * num R5=5 * num R6 = 6 * num

R7=7 * num R8=8 * num R9 = 9 * num

R10 = 10 * num

5. Stampa in label R1,R2,R3,R4,R5

6. Fine

4) Creazione del Form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del pulsante Calcola Dim num As Integer

Dim R1, R2, R3, R4, R5, R6, R7, R8,

R9, R10 As Integer

' input

num = cmbNumero.SelectedItem

'calcolo

R1=1 * num R2=2 * num R3 = 3 * num

R4=4 * num R5=5 * num R6 = 6 * num

R7=7 * num R8=8 * num R9 = 9 * num

R10 = 10 * num

' output

lbl1.Text=R1 lbl2.Text=R2 lbl3.Text=R3

lbl4.Text=R4 lbl5.Text=R5 lbl6.Text=R6

lbl7.Text=R7 lbl8.Text=R8 lbl9.Text=R9

lbl10.Text = R10

Problema 27. Scrivere un algoritmo che creata una combobox di 30 parole scritte in “italiano", in

base alla parola scelta la traduca in dialetto “napoletano”, visualizzando la parola tradotta in

controllo a vostra scelta: casella di testo o label. (Suggerimento: utilizzare la struttura di selezione

Select Case per gestire tutti e 30 i casi nella combobox)

Page 39: MODULO 2 – Algoritmi con le strutture Sequenza e Selezione e …ascuoladibase.altervista.org/classi-2014/4cs/mod2-classe-4CS... · I tipi di variabili che useremo in Visual Basic

“Ripasso di: Algoritmi con le strutture Sequenza e Selezione e codifica in VB.Net” – Liceo “Garofano” Classe 4CS Capua - A.S. 2014 /15 – Prof. M. Simone

39

1) Tabelle delle variabili e costanti

Nome Descrizione Tipo Input Output Lavoro

parola E’ il termine selezionato da tradurre stringa X

2) Algoritmo per passi 1. Inizio

2. assegna a parola, il termine selezionato

3. se parola= “ragazzo” allora scrivi “guaglione”

4. se parola= “fidanzata” allora scrivi “guagliona”

5. ecc

6. Fine

4) Creazione del Form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del Combobox cmbIta Dim parola As String

parola = cmbIta.SelectedItem

Select Case parola

Case "ragazzo"

txtNap.Text = "guaglione"

Case "fidanzata"

txtNap.Text = "guagliona"

Case "padre"

txtNap.Text = "pat"

Case "madre"

txtNap.Text = "mam"

Case "sorella"

txtNap.Text = "sor"

. . . . . . . . . . . .

End Select

Problema 28. Scrivere un algoritmo che permette di realizzare un semplice Browser per navigare

usando il controllo “webrowser” della finestra degli strumenti e i suoi metodi: webrowser.gohome(

), webrowser.goback( ), webrowser.goforward( ), webrowser.print( ), webrowser.refresh( ) e

webrowser.navigate( ). Assegnare ai pulsanti di figura i metodi suddetti e inserire le immagini

, , come sfondo dei pulsanti in figura.

1) Tabelle delle variabili e costanti

Nome Descrizione Tipo Input Output Lavoro

indirizzo E’ l’indirizzo del browser stringa X

2) Algoritmo per passi 1. Inizio

2. assegna a indirizzo, l’indirizzo scritto nella textBox

3. se l’indirizzo è corretto o c’è linea carica la pagina web

4. Fine

4) Creazione del Form Visualbasic. Net

3) Algoritmo col diagramma a blocchi

Non disegnato per mancanza di tempo

5) Codifica del corpo del bottone Vai

Private Sub btnVai_Click()

' dichiarazione variabile

Dim indirizzo As String

' input

indirizzo = txtIndirizzo.Text

' metodo webrowser.navigate( )

webrowser.Navigate(indirizzo)

End Sub