Volevo fare un programmino che mi trovava il perimetro dati i lati di un trapezio, ma quando eseguo mi da un errore:
Overflow di un operazione aritmetica
Volevo sottolineare che se uso numeri più piccoli non ho l' errore ma a me servono numeri grandi.codice:Sub TrovaPerimetro() Dim x As Int16 'lato x Dim y As Int16 'lato y Dim z As Int16 'lato z Dim p As Int16 'semiperimetro Dim area as Double For x = 1 To 20 For y = 1 To 20 For z = 1 To 20 p = (x + y + z) / 2 If x < p And y < p And z < p Thenarea = p * (p - x) * (p - y) * (p - z) End If If area = 270 ^ 2 Then Numeri.Items.Add("x: " & x & " y: " & y & " z: " & z) End If Next Next Next End Sub'l' errore è in questa riga:
Qualcuno sa risolvere il problema? Grazie anticipatamente