variabili e costanti, tabella delle variabili

Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
PARAGRAFO 1: variabili e costanti, tabella delle variabili; in VB: dichiarazione DIM (2h)
Definizione di utente e di programmatore
L’ utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo. Il
programmatore è l’uomo che programma un computer.
Definizione di programma
Un programma è un sequenza finita di istruzioni elementari che indichino al computer le
operazioni da compiere e i dati di ingresso su cui operare, scritte in un linguaggio di
programmazione.
Definizione di istruzione elementare
E’ una istruzione non ulteriormente scomponibile e di semplice comprensione per la CPU
Esempi di istruzioni elementari:
1) istruzioni aritmetico - logiche. Sono quelle eseguite dall’ALU nelle operazioni aritmetiche (+, , / e *) e nelle operazioni logiche (and, or, not)
2) istruzioni di trasferimento. Sono quelle usate nel trasferimento dei dati all’interno della
memoria centrale (RAM) e tra questa ed i registri della CPU
3) istruzioni di input / output. Sono quelle che consentono l’immissione e l’emissione dei dati
nella e dalla memoria centrale (RAM) attraverso l’uso delle periferiche di input e di output
4) istruzioni di controllo. Sono quelle che guidano lo svolgimento dell’elaborazione controllando
l’ordine di esecuzione delle istruzioni elementari e sono eseguite dall’unità di controllo (CU).
Definizione di linguaggio di programmazione
Esso è il linguaggio usato dal programmatore per comunicare con il computer. Il primo
linguaggio usato è stato quello binario, in seguito fu l’assembler (un misto di codice binario a
parole utente come: add (per fare la somma), molt (per fare le moltiplicazioni)), ecc. Negli anni
sono nati molti linguaggi di programmazione sempre più vicini al modo di pensare del
programmatore.
Esempi di linguaggi di programmazione inventati dal programmatore negli anni
- ForTran (Formula Translation) nato nel 1954 per scopi scientifici e per calcoli matematici
- COBOL (Common Business Oriented Language) nato nel 1960 per scopi commerciali
- PASCAL nato nel 1971 ad opera di N. Wirth progettato come linguaggio per l’insegnamento nelle
scuole della programmazione strutturata (ancora in uso in qualche ITIS)
- BASIC (Beginner’s All Purpose Symbolic Instruction Code) nato nel 1980 per avere un
linguaggio che fosse molto semplice da imparare anche per i principianti
- Visual Basic nato alle fine degli anni 90 e poi il Visual Basic . Net nato nel 2003. Entrambi
usano il lessico (parole chiavi) base del linguaggio Basic, ma con l’aggiunta di molte altre funzioni
e procedure di libreria.
Definizione di algoritmo (per passi).
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.
1
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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.
N
nome
celletta
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
6
A
nome
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
celletta
MEDIA
nome
6,5
In tal caso MEDIA è il nome scelto per la variabile, 6,5 è il suo valore e il suo tipo è quello
decimale
2
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
Esempio3 - variabile stringa
COLORE
celletta
nome
nero
In tal caso COLORE è il nome scelto per la variabile, nero è il suo valore e il suo tipo è quello
stringa
MAGGIORENNE
Esempio4 – variabile booleana
celletta
nome
vero
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
Dim
Dim
Dim
Dim
VARIABILI
A As Integer
Media As Decimal
Colore As String
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.
PIGRECO
celletta
nome
3,14
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
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
3
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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.
Esempio1. Tabella delle variabili dell’algoritmo area del triangolo (visto in precedenza)
Tabelle delle variabili di input e output
Nome
Descrizione
Tipo
Input Output Lavoro
b
Base del triangolo
Numerico intera
X
h
Altezza del triangolo
Numerico intera
X
a
Area del triangolo
Numerica decimale
X
Problema2. Trovare l’algoritmo che calcoli l’area del rettangolo. Prima dell’algoritmo
disegnare la tabella delle variabili.
Tabelle delle variabili di input e output
Nome
Descrizione
b
Base del rettangolo
h
Altezza del rettangolo
a
Area del rettangolo
Tipo
Numerico intera
Numerico intera
Numerica intera
Input
X
X
Output
Lavoro
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
PARAGRAFO 2: il diagramma blocchi (algoritmo grafico) (1h)
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
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.
4
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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.
Esempio di diagramma a blocchi
A partire dall’algoritmo del calcolo dell’area del rettangolo, dedurre il diagramma a blocchi
seguente:
Inizio
b, h
A = b*h
A
Fine
5
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
Altri simboli usati ma non sempre sono:
un piccolo quadrato: per un rettangolo con 2 barre laterali per un esagono per la struttura
il punto di connessione tra i sottoprogrammi, ad es. per i form di ciclica con contatore, ad es.
frecce orientate
VisualBasic.Net
per i che va da 1 a 100
Problema3: Dati due numeri A e B, trovare l’algoritmo che calcoli la loro somma. Disegnare
la tabella delle variabili e il diagramma a blocchi.
1) la tabella delle variabili di input, di output e di lavoro è la seguente:
Tabelle delle variabili di input e output
Nome Descrizione
A
Primo numero
B
Secondo numero
Som
Somma dei 2 numeri
2) Individuazione dell’algoritmo per passi
Tipo
Numero intero
Numero intero
Numero intero
Input
X
X
Output
Lavoro
X
3) Individuazione del diagramma a blocchi
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
Paragrafo 3: VBasic: inputbox, val, msgbox, oggetti: form, controlli, proprietà, eventi (2h)
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.
6
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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()
(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’.
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
7
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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( ).
Cosa serve per realizzare un programma in VB.net?
Bisogna eseguire nell’ordine i seguenti passi:
1) Dato un problema, disegnare la tabella delle variabili (spiegato)
2) Individuare l’algoritmo risolutivo per passi (detto anche pseudo codifica) (spiegato)
3) Individuare il diagramma a blocchi (detto anche flowchart) (spiegato)
4) Creare il form Visualbasic. Net, inserendo i controlli e le loro proprietà (da spiegare)
5) Codificare l’evento click dei pulsanti di calcolo (button) inseriti nel Form (da spiegare)
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:
8
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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
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.
9
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
(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
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.
1
Un es.di oggetto di libreria è math, di cui più avanti si utilizzerà il metodo math.sqrt( )
10
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
- 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
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”
PARAGRAFO 4: Esempi di form VBasic.net (1h tra classe e a casa)
Esempio1 – Calcolo del form relativo all’algoritmo del calcolo dell’area del rettangolo.
Tabelle delle variabili di input e output
Nome
Descrizione
Tipo
b
Base del rettangolo
Numerico intera
h
Altezza del rettangolo Numerico intera
a
Area del rettangolo
Numerica intera
2
Input
X
X
Output
Lavoro
X
Da non confondersi al modo con cui ci si riferisce ad una proprietà di un oggetto: nomoggetto.proprietà
11
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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
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:
12
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
Tabelle delle variabili di input, output e di lavoro
Nome
Descrizione
Tipo
A
Primo numero
Numero intero
B
Secondo numero
Numero intero
Som
Somma dei 2 numeri
Numero intero
2) Individuazione dell’algoritmo per passi
Input
X
X
Output
Lavoro
X
3) individuazione del diagramma a blocchi
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
Algoritmo col diagramma a blocchi
Inizio
A, B
Som=A+B
Som
Fine
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
13
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
A=Val(txtA.Text)
B=Val(txtB.Text)
' SOMMA A+B
 txtA è il nome della casella di testo creata per A,
mentre .Txt è la proprietà testo delle caselle txtA.Text
e txtB.Text
Som=A+B
' STAMPA SOMMA
txtSom.Text=som
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
A
Primo numero
QA
Quadrato di A
DA
Doppio di A
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
4) Creazione del form Visualbasic. Net
Tipo
Numero intero
Numero intero
Numero intero
Input
X
Output
Lavoro
X
X
3) Algoritmo col diagramma a blocchi
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
B1
Base maggiore
Numero intero
base minore
Numero intero
b2
H
Altezza
Numero intero
SOM
Somma (B1+b2)
Numero intero
P
Prodotto SOM*H
Numero intero
Area
Area del trapezio P/2
Numero decimale
Input
X
X
X
Output
Lavoro
X
X
X
14
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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
Area
Fine
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
15
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
PARAGRAFO 5: Dal Problema al form VBasic.net con la Struttura Sequenza (2h)
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:
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
A
1° voto
Numero intero
B
2° voto
Numero intero
C
3° voto
Numero intero
SOM
Somma dei tre voti
Numero intero
MED Media dei tre voti
Numero decimale
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
Input
X
X
X
Output
Lavoro
X
X
3) Algoritmo col diagramma a blocchi
Inizio
A,B,C
SOM =A+B+C
Media =SOM / 3
Media
Fine
4) Creazione del form Visualbasic. Net
5) CODIFICA PULSANTE “Calcola”
' DICHIARAZIONE DELLE VARIABILI
Dim A, B, C, SOM As Integer
Dim media As Decimal
16
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
' 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.
X
Y
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
X
Primo valore
Numero intero
Y
Secondo valore
Numero intero
TEMP Variabile temporanea di appoggio
Numero intero
2) Algoritmo per passi
Input
X
X
Output
X
X
Lavoro
X
3) Algoritmo col diagramma a blocchi
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
17
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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
A
Primo valore
Numero intero
B
Secondo valore
Numero intero
C
Terzo valore
Numero intero
D
Quarto Valore
Numero intero
TEMP Variabile temporanea di appoggio
Numero intero
2) Algoritmo per passi
Input
X
X
X
X
Output
X
X
X
X
Lavoro
X
3) Algoritmo col diagramma a blocchi
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
18
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
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
NUM
Numero da 1 a 1000 di cui si Numero intero
X
vuole conoscere la tabellina
R1
1° risultato della tabellina
Numero intero
R2
2° risultato della tabellina
“”
R3
3° risultato della tabellina
“”
R4
4° risultato della tabellina
“”
R5
5° risultato della tabellina
“”
R6
6° risultato della tabellina
“”
R7
7° risultato della tabellina
“”
R8
8° risultato della tabellina
“”
R9
9° risultato della tabellina
“”
R10
10° risultato della tabellina
“”
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
Output
Lavoro
X
X
X
X
X
X
X
X
X
X
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
19
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
Inizio
NUM
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
R1..R10
Fine
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
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
Euro
Valuta in Euro
Numero decimale
Lira
Valuta in Lire
“”
“”
Franco
Valuta in Franco
DollaroUsa Valuta in dollaro Americano
“”
DollaroAustr Valuta in dollaro Austrialano
“”
Scellino
Valuta in scellino Austriaco
“”
Yen
Valuta in yen Giapponese
“”
Corona
Valuta in corona Ceka
“”
Sterlina
Valuta in sterlina Inglese
“”
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
Input
X
Output
Lavoro
X
X
X
X
X
X
X
X
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
20
Mod. 3 - "Primi algoritmi e Struttura sequenza in VisualBasic.Net” - Liceo ”Pizzi” – Classe 1AT - Capua - A.S. 2013 /14 - Prof. M. Simone
Inizio
Euro
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
stampa
Fine
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
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
1° voto
Numero intero
X
B
2° voto
Numero intero
X
C
3° voto
Numero intero
X
SOM
Somma dei tre voti
Numero intero
X
MED
Media dei tre voti
Numero
X
decimale
Dim
Dim
' INPUT
A =
B =
C =
A, B, C, SOM As Integer
media As Decimal
DEI VALORI DI A, B e C
Val (txtA.Text)
Val (txtB.Text)
Val (txtC.Text)
' CALCOLO DELLA MEDIA
SOM = A + B + C
media = SOM / 3
' OUTPUT DELLA MEDIA A VIDEO
txtMedia.Text = media
21