Novità

Per eccesso o per difetto

salvo50

Advanced Member >PLATINUM PLUS<
Ciao a Tutti!

Esiste una funzione che mi dà un risultato per eccesso o per difetto?

Grazie!
 
Come non detto, mi sono accorto che lo fà già automaticamente con < / > invece con l'altro < \ > toglie i decimali senza arrotondare per eccesso o per difetto, non ci avevo mai fatto caso.
 
ciao se necessario in ambito script si puo comunque scrivere una funzione che riceva il numero da arrotondare per difetto o per eccesso e che ce lo restituisca arrotondato..
 
Ciao LuigiB

Infatti io avevo iniziato a studiare dei passaggi per avere i numeri arrotondati per eccesso e difetto in attesa che qualcuno rispondesse al post, quando mi sono accorto che i risultati delle divisioni erano già arrotondati, quindi per le divisioni (secondo me) è già a posto così, invece per le moltiplicazioni, sarebbe comodo avere una funzione che faccia tutto in automatico, ma penso che succeda raramente di avere dei numeri con decimali in una moltiplicazione perchè bisogna già moltiplicare dei numeri decimali per avere dei decimali nel risultato.
 
Ultima modifica:
intendevo di scriverla nello script .. inoltre tutte le funzioi che uno si scrive da solo possono essere inserite in un file richiamabile da qualsiasi script e quindi si possono riusare.

comunque la funzione per come ho capito che ti serve eccola.... ciao

Codice:
Option Explicit
Sub Main
    Const vDec1 = 25.2
    Scrivi  "Il numero " & vDec1  & " arrotondato per difetto : " & Arrotonda (vDec1 ,False)
    Scrivi  "Il numero " & vDec1  & " arrotondato per eccesso : " & Arrotonda (vDec1 ,True)

    Const vDec2 = 25.8
    Scrivi  "Il numero " & vDec2  & " arrotondato per difetto : " & Arrotonda (vDec2 ,False)
    Scrivi  "Il numero " & vDec2  & " arrotondato per eccesso : " & Arrotonda (vDec2 ,True)

    Const vDec3 = 25
    Scrivi  "Il numero " & vDec3  & " arrotondato per difetto : " & Arrotonda (vDec3 ,False)
    Scrivi  "Il numero " & vDec3  & " arrotondato per eccesso : " & Arrotonda (vDec3 ,True)



End Sub
Function Arrotonda (n , bPerEccesso)
    ' se il numero è un intero non lo arrotonda
    If n  = CLng(n) Then
        Arrotonda = n
    Else
        If bPerEccesso Then
            Arrotonda = CLng(n+0.5)
        Else
            Arrotonda = CLng(n-0.5)


        End If
    End If

End Function

che da questo output

Codice:
Il numero 25,2 arrotondato per difetto : 25
Il numero 25,2 arrotondato per eccesso : 26
Il numero 25,8 arrotondato per difetto : 25
Il numero 25,8 arrotondato per eccesso : 26
Il numero 25 arrotondato per difetto : 25
Il numero 25 arrotondato per eccesso : 25
Codice:
 
Ultima modifica di un moderatore:

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 13 giugno 2026
    Bari
    25
    62
    86
    19
    37
    Cagliari
    03
    65
    84
    69
    63
    Firenze
    84
    34
    83
    08
    26
    Genova
    19
    29
    90
    53
    32
    Milano
    75
    70
    86
    51
    35
    Napoli
    46
    48
    68
    37
    19
    Palermo
    16
    39
    87
    84
    74
    Roma
    29
    42
    65
    54
    80
    Torino
    77
    67
    68
    57
    45
    Venezia
    05
    82
    85
    42
    19
    Nazionale
    75
    27
    45
    33
    39
    Estrazione Simbolotto
    Napoli
    42
    15
    27
    08
    41
Indietro
Alto