Salve a tutti,
ho cominciato qualche giorno fa ad interessarmi alla programmazione e, nello specifico, a Visual Basic. Sto leggendo il più possibile da libri, siti web, ecc. ma mi pare di capire che la migliore scuola è quella sul campo, per cui sto provando a risolvere alcuni esercizietti che ho trovato in rete.
L'esercizio in questione richiede di stampare a video il peso minore, controllare se i pesi sono uguali, controllare se i pesi rientrano nel range 40-180 kg.
Io ho scritto il codice più sotto, che nella maggior parte dei casi funziona bene, mentre in altri no. Ad esempio: se ho due valori di 47 e 48, mi dice che i valori non rientrano nel range...
Immagino che il mio errore consista nell'aver messo AND nel SELECT CASE, ma non capisco perché funziona bene in molti casi.
Immagino che tali problemi siano fin troppo elementari per chi mastica un minimo di programmazione, ma da qualche parte si dovrà pur cominciare, no?
form.PNG
codice:Private Sub CommandButton1_Click() Dim peso1, peso2 As Single peso1 = Val(TextBox1) peso2 = Val(TextBox2) Select Case (peso1 And peso2) Case 40 To 180 If (peso1 <> peso2) Then If (peso1 < peso2) Then MsgBox ("Il peso minore è" & " " & peso1 & " " & "kg") Else MsgBox ("Il peso minore è" & " " & peso2 & " " & "kg") End If Else MsgBox ("Entrambi gli oggetti pesano" & " " & peso1 & " " & "kg") End If Case Else MsgBox ("Sono ammessi solo valori compresi tra 40 e 180 kg") End Select End Sub


Rispondi quotando
