Acquista i nostri libri consigliati su Amazon.it
+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 5 su 5

Errore overflow 0/0

  1. #1
    cicchiniello non è in linea Scolaretto
    Ciao a tutti, in una certa routine devo calcolare media, deviazione standard e coefficiente di variazione (dev.std/media).
    Può capitare che la media sia zero e quindi va in overflow, allora io mi sono premunito inserendo cotale riga di codice:
    coeffvar = IIf(mean = 0, 0, (devstd / mean))
    
    Il problema è che va in overflow lo stesso.
    Mi sembra di aver fatto tutto correttamente visto che si blocca proprio quando becca la media uguale a zero.

  2. #2
    Di che tipo sono le variabili ? Quanto valgono ?

    Comunque il caso specifico non è quello espresso nel titolo perché 0/0 non si verifica in questo caso.
    ℹ️ Leggi di più su AntonioG ...

  3. #3
    cicchiniello non è in linea Scolaretto
    mean, devstd e coeffvar sono tutte double

    I valori di mean e devstd possono essere qualsiasi cosa (mi da l'errore di overflow quando mean vale zero), quindi il caso di numero diviso zero o addirittura zero diviso zero può avvenire.

  4. #4
    L'avatar di dodo47
    dodo47 non è in linea Topo di biblioteca
    Ciao
    devi utilizzare l'espressione: If mean <> 0 Then coeffvar = devstd / mean
    questo perché, se leggi l'help della funzione iif recita:
    Quote Originariamente inviato da Help MCS
    IIf valuta sempre sia truepart che falsepart, anche se restituisce uno solo dei due valori. Per tale ragione, è opportuno prevedere la possibilità di effetti indesiderati. Se, ad esempio, la valutazione di falsepart restituisce un errore di divisione per zero, verrà generato un errore anche se expr è True.
    In altre parole, mentre la funzione IF valuta solo una parte dell'espressione (quella corrispondente a true), la funzione IIF le valuta tutte e due e, riscontrando un errore lo segnala.

    saluti

  5. #5
    cicchiniello non è in linea Scolaretto
    Ah ecco perchè. Mi chiedo a sto punto l'utilità dell'IIF
    Ho risolto usando un if normale in effetti.

    Grazie per la dritta!!


+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Errore Overflow
    Da mailman_1969 nel forum Microsoft Access
    Risposte: 7
    Ultimo Post: 02-09-2019, 14:50
  2. TQRPDFFilter errore di Stack Overflow
    Da Monti nel forum Delphi
    Risposte: 1
    Ultimo Post: 12-03-2019, 10:30
  3. Errore di overflow
    Da Jocman nel forum Microsoft Word
    Risposte: 2
    Ultimo Post: 08-09-2017, 08:31
  4. [VB2010] Errore 6: overflow aritmetico
    Da il Fenomeno nel forum Visual Basic .Net
    Risposte: 1
    Ultimo Post: 23-10-2012, 15:37
  5. Errore overflow
    Da Saint nel forum Microsoft Word
    Risposte: 3
    Ultimo Post: 18-07-2009, 11:48