Oppure

Loading
18/03/12 19:43
I)eathBringer
Salve a tutti. Il problema è molto semplice: se creo una variabile di tipo Numerics.BigInteger (in vb.net 4) e le assegno un certo valore da stringa il valore restituito sarà diverso. Piccolo esempio:

  Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim b1, b2 As Numerics.BigInteger
        b1 = "78213768726538583125623462472398"
        b2 = "9823697582638526347637"
        MsgBox(b1.ToString & "+" & vbCrLf & b2.ToString & "=" & vbCrLf & "___________________" & vbCrLf & (b1 + b2).ToString)
    End Sub


Quello che appare nella message box è:

78213768726538579629945691045888+
9823697582638527152128=
___________________
78213768736362277212584218198016

Come si nota facilmente i primi due valori non corrispondono ai valori inseriti e, di conseguenza, la somma è errata. Da cosa può dipendere il problema?
aaa
18/03/12 20:05
crybot
francamente non capisco come fai a non riscontrare errore assegnando una stringa ad una variabile di tipo BigInteger...
in ogni caso, basta che sostituisci l'assegnazione con questo:

b1 = BigInteger.Parse("78213768726538583125623462472398")
        b2 = BigInteger.Parse("9823697582638526347637")
aaa