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 28 marzo 2026
    Bari
    53
    04
    01
    11
    09
    Cagliari
    67
    19
    47
    35
    64
    Firenze
    13
    48
    58
    39
    15
    Genova
    52
    87
    51
    79
    67
    Milano
    07
    79
    84
    28
    37
    Napoli
    26
    90
    68
    82
    67
    Palermo
    38
    57
    65
    20
    56
    Roma
    81
    66
    45
    53
    08
    Torino
    29
    47
    55
    78
    71
    Venezia
    07
    29
    76
    14
    15
    Nazionale
    17
    10
    21
    29
    15
    Estrazione Simbolotto
    Firenze
    02
    38
    33
    11
    39
Indietro
Alto