Oppure

Loading
22/05/09 17:29
dado912
salve vi espongo il mio problema sono un ragazzo di 18 anni che sta tentando di imparare a programmare solo che ho un problema sono direi a livello zero cioè ho imparato molto termini interssanti ma non so applicerli che mi puo dare un esempio costruttivo su come creare anche banalmente una maschera di calcolo oveero dare istruzzioni al mio pc per fargli fare 2+2 banalmente :)
aaa
23/05/09 12:11
adibbi
beh inanzitutto se vuoi programmare in visual basic net (avrai un programma con una )visuale) altrimenti ti consiglio il pascal se devi fare solamente calcoli...
cmq leggiti le guide
aaa
23/05/09 12:18
ruggy94
Postato originariamente da dado912:

salve vi espongo il mio problema sono un ragazzo di 18 anni che sta tentando di imparare a programmare solo che ho un problema sono direi a livello zero cioè ho imparato molto termini interssanti ma non so applicerli che mi puo dare un esempio costruttivo su come creare anche banalmente una maschera di calcolo oveero dare istruzzioni al mio pc per fargli fare 2+2 banalmente :)

Se vuoi imparare seriamente devi leggerti una guida (ad esempio totem.altervista.org/guida/versione2/…) e, capitolo per capitolo, provare ad applicare nella pratica quello che hai appreso nella teoria. Se farai tutto questo senza avere fretta, imparerai con facilità. ;)
aaa
23/05/09 12:24
adibbi
allora il titolo fa pensare ke vuoi usare vb.net
una volta installato crei un nuovo progetto e nel form inserisci oggetti
nel caso del calcolo di + servono:
2 textbox per ricevere variabili
1 button per calcolare
fai 2 click sul button ed entri nel codice,senza spostare il cursore scrivi:
(se sbaglio correggetemi)
addendo1 = textbox1.text
addendo2 = textbox2.text
risultato = (Val(addendo1)) + (val)addendo2)


ora puoi scegliere se utilizzare una textbox oppure un msgbox
textbox:
textbox3.text = risultato

msgbox:
msgbox ("il risulato è ",risultato)

spero di dire bene...

prima però devi dichiarare le variabili....


dim addendo1,addendo2,risultato as integer


richiedo conferma da totem o da qualcun'altro..
aaa
23/05/09 12:39
ruggy94
Postato originariamente da adibbi:
richiedo conferma da totem o da qualcun'altro..

In questo caso è "qualcun altro" :D
Il codice funziona, ma se dobbiamo essere precisi ci sono diverse "imperfezioni" che il compilatore riesce ad eludere e quindi non visualizza errori.
-Se addendo1 (ma anche addendo2) è di tipo integer, non è molto corretto assegnargli come valore una stringa (in questo caso textbox1.text), quindi sarebbe più esatto convertire lo string in integer (con Cint, ctype, val o quello che ti pare), ma questa è solo pignoleria :P.
Poi, proprio perchè addendo1 e addendo2 sono di tipo integer, è inutile convertirli con Val() per sommarli.
Infine (penso sia un errore di battitura), hai scritto:
risultato = (Val(addendo1)) + (val)addendo2)

mentre credo che volessi scrivere
risultato = Val(addendo1) + Val(addendo2)


PS: Rinnovo l'invito che ho fatto nel mio post precedente a studiare bene una guida :k:
Ultima modifica effettuata da ruggy94 23/05/09 12:41
aaa
23/05/09 16:38
Il Totem
Ricordo che in MsgBox("il risultato è", risultato), la variabile "risultato" viene passata come secondo parametro della funzione e non concatenata con la stringa (credo tu ti sia confuso con il Pascal, dove si usa così;). La versione corretta è:
MsgBox("Il risultato è: " & risultato)
'o, meglio ancora:
MessageBox.Show("Il risultato è: " & risultato)


Per il tipo, sono più o meno daccordo con ruggy, anche se vb.net effettua conversioni esplicite. Inoltre, non si dovrebbe usare Val, perché è funzione di vb6 (così come MsgBox).
Ultima modifica effettuata da Il Totem 23/05/09 16:40
aaa
23/05/09 17:53
Jeremy
La versione corretta è:
MsgBox("Il risultato è: " & risultato)
'o, meglio ancora:
MessageBox.Show("Il risultato è: " & risultato)



Se posso permettermi una piccola intrusione...vorrei aggiungere che sarebbe ancora meglio di meglio evitare conversioni implicite, semplicemente, tipizzando tutto ciò che viene dichiarato in funzione di ciò che dovrà contenere e, per le conversioni di tipo, utilizzare i metodi presenti nella classe del tipo al quale appartiene la variabile.
In questo caso:
Dim addendo1 as integer
Dim addendo2 as integer

Try
addendo1 = Int32.Parse(textbox1.text)
Catch ex as exception
MessageBox.Show("Errore nella conversione di:" & textbox1.text)
return
End Try

Try
addendo2 = Int32.Parse(textbox2.text)
Catch ex as exception
MessageBox.Show("Errore nella conversione di:" & textbox2.text)
return
End Try

dim risultato as integer
risultato = addendo1+addendo2
messagebox.show("Il risultato è: " risultato.ToString)



Nota l'estensione ToString usata per la variabile risultato di tipo Integer .... con Option Strict On saresti obbligato ad utilizzarla in quanto il metodo Show di MessageBox accetta parametri di tipo String.

Ad ogni modo,molto meglio impostare Option Strict On per evitare conversioni implicite che, il più delle volte, sono causa di problemi durante l'esecuzione dell'applicazione.

Ciao.
aaa
24/05/09 7:42
Il Totem
Vero: questo è il motivo per cui non si dovrebbe usare TextBox per i dati numerici, ma NumericUpDown. Comunque le conversioni implicite da numeri a stringa sono sempre valide.
aaa