Newsgroup: it.comp.lang.visual-basic
Titolo: Lire2Euro

Dove posso trovare una funzione che trasformi le lire in euro e possa
specificare il numero di cifre decimali ?
CIao e grazie

specificare il numero di cifre decimali ?
Il cambio e' 1936,27 lire per un euro.
Il resto viene da se'.
-- 
ciao, hal

Oltre quello che ha detto Hal....ti consiglio  la funzione Round()
e poi al funzione " MatematicaSpicciola() " :)
Ciao SIMO
--
__________________
www.sasim.net
* Server IRC : 
irc.azzurranet.org
 --> Canale: #it_lang_vb
* Sito Comune Ng: 
http://www.it-lang-vb.net
* Manifesto del Ng: 
http://www.it-lang-vb.net/docs/Manifesto.txt
* I vecchi messaggi su: 
http://groups.google.com/


 ha scritto nel messaggio
news:9tue87$4upsg$1...@ID-56381.news.dfncis.de...


Il mio problema è l' arrotondamento dei numeri decimali.
Su 
http://msdn.microsoft.com/
 si trova questo:
HOWTO: Implement Custom Rounding Procedures 
Q196652
-- 
hth, hal
p.s. ho trovato l' articolo al primo tentativo in una manciata di secondi ...

 e poi al funzione " MatematicaSpicciola() " :)
Occhio al bug della Round!
Vedi NG scorsi giorni per i dettagli...
Ciao,
Carlo.

Utilizzando la Round ( Lire / 1936.27 , 2 ) per calcolare un prezzo in Euro,
ho
notato che in pochi casi particolari si verifica un errore di
arrotondamento. (
VB6 + SP5 + Win ME e 2K)
Esempio: la Round applicata a 2,345 o 2,345000000 mi da' 2,34 (Errato).
Se invece facessi 2,34500001 allora mi da 2,35 (Corretto).
E' sufficiente quindi sommare 0,0001 (per arrotondare alla terza cifra) al
valore passato alla Round come primo argomento: Round ( Lire / 1936.27 +
0.0001
, 2 )
L'errore si presenta quando si ha a che fare con numeri a 3 cifre decimali
significative e le ultime due sono 05 o 45. ( x,x05 oppure x,x45 oppure
x,x45000... ).
E' un errore di soltanto un centesimo, ma in una somma di 100 errori gia' ci
sta quasi un cappuccino ed una brioche a colazione.
Questo è un suggerimento di Andrea Barbieri che io giro a Te.
Ciao Pino

Non so se ti puo' interessare, dipende dall'uso che ne devi fare, ma dal
sito del Ministero delle Finanze si apprende che:
cifra da convertire - > Decimali di arrotondamento
1 Lira - > 5
10 Lire - > 4
100 Lire - > 3
1000 Lire - > 2
bye bye



wrote:

Io invece avevo capito che in ogni caso bisognava scrivere sempre 6
cifre, quindi anche nel caso di 1000 lire bisognava convertire in
€ 0,51646 (5 cifre decimali) solo per le bance e gi enti pubblici
riscossori di tasse e pagamenti vari!
Ciao

Vedi NG scorsi giorni per i dettagli...
Quando la parte frazionaria è esattamente 0,5 l'arrotondamento avviene
per *eccesso*, se il numero intero è *dispari*, mentre avviene per
*difetto* se il numero intero è *pari*.
In realtà non si tratta di un bug, ma di un comportamento corretto ai
fini di elaborazioni di tipo statistico (... ma non si adatta
perfettamente all'Euro!)
Loris.  

 perfettamente all'Euro!)
Sì, l'avevo letto.
In realtà adesso la Microsoft sta "istruendo" tutto il mondo alla gestione
dell'Euro e, oltre ad avere "inventato" una funzione apposita incorporata in
Office XP, suggerisce l'uso di Round per VB e VBA. Ecco perché l'ho chiamato
bug!...
Ti basta fare un giretto sul sito di office (o forse MSDN, non ricordo) e
vedrai la bestemmia con i tuoi occhi.
Ciao,
Carlo.