Autore Topic: E' normale che Round non arrotondi?  (Letto 2442 volte)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.320
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: E' normale che Round non arrotondi?
« Risposta #30 il: 10 Febbraio 2014, 23:17:26 »
.... paint.font.size (giustamente x me) se ne infischia del round e utilizza il valore completo del numero float

Comunque, io ho fatto una prova con un breve e semplice codice.... ed ho verificato che paint.font.size non ha problemi a conservare l'arrtondamento ! 
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.158
  • Tonno verde
    • Mostra profilo
Re: E' normale che Round non arrotondi?
« Risposta #31 il: 11 Febbraio 2014, 13:58:36 »
.... paint.font.size (giustamente x me) se ne infischia del round e utilizza il valore completo del numero float

Comunque, io ho fatto una prova con un breve e semplice codice.... ed ho verificato che paint.font.size non ha problemi a conservare l'arrtondamento ! 

Scusa ma non potevi dimostrarla  ???

Comunque guardate un po qui io intravedo delle incongruenze fra il comportamento dei due tipi di ROUND con Quanti e senza  :rolleyes:

Codice: [Seleziona]
' Gambas class file

Public Sub _new()

End

Public Sub Form_Open()
 
 Dim f As Float
 
  da.Cached = True
  Paint.Begin(da)
 
  Paint.Font.Size = 11
  Print Paint.Font.Size ' ===> 11
 
  f = (11 * 0.744)
  Print f               '===> 8.184
 
  Paint.Font.size = f
  Print Paint.Font.size '===> 8.18359375
 
  f = Round(11 * 0.744)
  Print f               '===> 8
 
  Paint.Font.Size = f
  Print Paint.Font.size '===> 8
 
  Paint.Font.Size = Round(11 * 0.744)
  Print Paint.Font.size '===> 8
 
  Paint.Font.Size = Round(11 * 0.744)
  f = 1.3441
  Paint.Font.Size = Round(Paint.Font.Size * f)
  Print Paint.Font.size  '===> 11
 
  f = Round(11 * 0.744, -2)
  Print f                '===> 8.18
 
  Paint.Font.Size = f
  Print Paint.Font.size  '===> 8,1796875
 
  Paint.Font.Size = Round(11 * 0.744, -2)
  Print Paint.Font.size  '===> 8.1796875
 
  Paint.Font.Size = Round(11 * 0.744, -2)
  f = 1.3441
  Paint.Font.Size = Round(Paint.Font.Size * f, -2)
  Print Paint.Font.size  '===> 10.9892578125
  Paint.End

End

nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro