Visualizzazione dei risultati da 1 a 5 su 5

Discussione: [VB6] Double

  1. #1
    Utente di HTML.it L'avatar di Il Pazzo
    Registrato dal
    Jul 2004
    Messaggi
    1,071

    [VB6] Double

    Salve a tutti...

    qualcuno sa se esiste un formato più lungo del double???

    Vi spiego... devo calcolare il fattoriale di una variabile n con n che può arrivare anche a 500 ma se ne va in overflow....

  2. #2
    Utente di HTML.it L'avatar di Il Pazzo
    Registrato dal
    Jul 2004
    Messaggi
    1,071
    :master:

  3. #3
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Ciao, gli intervalli di double e Long sono:
    'double = -1,79769313486232E308 e -4,94065645841247E-324 per i valori negativi
    4,94065645841247E-324 e 1,79769313486232E308 per quelli positivi

    'Long = intervallo fra -2.147.483.648 e 2.147.483.647.

    Con double é difficile che vada in overflow. Comunque se sei sicuro che NON si tratta di una funzione ricorsiva, prova a dividere il numero di base per 1.000.000 o più, per poi moltiplicarlo per lo stesso fattore.
    LM

  4. #4
    Utente di HTML.it L'avatar di Il Pazzo
    Registrato dal
    Jul 2004
    Messaggi
    1,071
    Allora.... ho provato come hai detto tu... la funzione è la seguente:

    Public Function factorial(ByVal n As Double)
    fattor = n / 1000000
    If n = 0 Then
    factorial = 1
    Else
    For Index = n - 1 To 1 Step -1
    fattor = fattor * Index
    Next Index
    factorial = fattor * 1000000
    End If
    End Function

    Ma va comunque in overflow... l'errore me lo da in
    fattor = fattor * Index

    Se invece text1.text è molto grande (ca 100) lo da qui
    num = (CInt(Text1.Text) ^ CInt(Text2.Text)) / factorial(ByVal x)

  5. #5
    Utente di HTML.it L'avatar di Il Pazzo
    Registrato dal
    Jul 2004
    Messaggi
    1,071

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.