Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Ciao a tutti sono un neofita di programmazione in vb e chiedevo un'aiutino per un piccolo programma che mi deve dare la somma inserendo dei numeri in delle textbox.AllorA IL CONCETTO è QUESTO:
ho 3 textbox l'utente inserendo i 3 numeri nelle text un bottone mi deve dare la somma di questi 3 numeri e visualizzarli in una label. pero' se il risultato e > 90 automaticamente mi deve detrarre la somma dei 3 numeri a - 90 im modo da darmi il risultato della somma in un numero compreso da 1 a 90 io ho provato intando impostando la proprietà MaxLenght delle textbox a 2 in modo che l'utente nn possa digitare + di 2 numeri e poi inserendo questo codice:
Option Explicit
Dim risultato As Integer
Private Sub Command1_Click()
risultato = txt1.Text + txt2.Text + txt3.Text
Label1.Caption = risultato
End Sub
ma quando premo il pulsante invece di fare la somma mi legge il valore di quello che ho scritto nelle text ad esempio scrivendo nella txt1 7 nella txt2 8 e nella txt3 5 invece di darmi il risultato di 20 la label mi da 785 qualcuno puo' aiutarmi?
Come ti hanno detto devi usare la funzione Val() che converte delle stringhe in numeri...
Ok funziona mille grazie pero' se il risultato e superiore a 90 come dovrei fare? penso che cosi dovrebbe essere giusto?
If txtDisplay.Text > 90 Then
txtDisplay = d - 90
End If
Ultima modifica effettuata da bruceex39 il 29/07/2008 alle 16:40
si + o - è così anche se non capisco da dove hai tirato fuori la variabile "d", cmq rapportato al codice di prima sarebbe così:
Codice sorgente - presumibilmente VB.NET
Option Explicit
Dim risultato AsInteger
PrivateSub Command1_Click()
risultato = txt1.Text+ txt2.Text+ txt3.Text
if risultato > 90 then
risultato = risultato - 90
Label1.Caption= risultato
EndSub
Allora ho un po modificato il codice che adesso è il seguente:
Option Explicit
Dim a As Integer
Dim b As Integer
Dim c As Integer
Dim d As Integer
Private Sub Command1_Click()
a = Val(txt1.Text)
b = Val(txt2.Text)
c = Val(txt3.Text)
d = a + b + c
txtDisplay.Text = d
If txtDisplay.Text > 90 Then
txtDisplay = d - 90
End If
End Sub
solo che c'è un problema la somma che mi daranno le 3 text al massimo sarà di 270 visto che i numeri del lotto al massimo arrivano a 90 ora se utilizzo questo codice e la somma dei 3 text raggiunge una somma tale da poter fare la sottrazione e restituirmi un numero compreso da 1 a 90 allora e tutto ok ma se la somma delle text mi da un risultato del tipo 270 0 250 etc, come faccio a farmi restituire un numero compreso da 1 a 90? nn so se sono stato chiaro.
grazie cmq per la risposta
Allora, da quel che ho capito stai creando un'applicazione basata sui numeri del lotto, giusto?
In tal caso, posso chiederti a cosa serve sottrarre 90 alla somma delle tre TextBox (giusto per capire un po' meglio quello che vuoi fare... )?
Ultima modifica effettuata da Alceus il 29/07/2008 alle 17:23
Allora, da quel che ho capito stai creando un'applicazione basata sui numeri del lotto, giusto?
In tal caso, posso chiederti a cosa serve sottrarre 90 alla somma delle tre TextBox (giusto per capire un po' meglio quello che vuoi fare... )?
Come dicevo i numeri del lotto sono 90 ed io sto facendo un'applicazione che si sa su un metodo:
il metodo è composto da queste 3 text che equivalgono la prima text al primo estratto di Bari la seconda text al terzo estratto di Cagliari e la terza text al quinto estratto di Firenze ora mettiamo caso che i 3 numeri inseriti nelle 3 text siano rispettivamente il 90 il 70 e l'80 come somma da 240 giusto? ora il metodo prevede e dice che a tale somma si deve sottrarre il 90 quindi (240 - 90 = 150) ed ancora - 90 in modo da darmi un numero compreso da 1 a 90 ora per poter far svolgere al programma nuovamente la seconda sottrazione di - 90 come devo fare? visto che io ho provato cosi:
If txtDisplay.Text > 90 Then
txtDisplay = d - 90
End If ma va bene solo se la suddetta somma nn va oltre 180 perchè 180-90 = 90 ma se la somma e superiore a 180 il programma mi deve fare nuovamente la seconda sottrazione - 90 quindi è questo che vorrei sapere come si fa?