Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    Che variabili usare nei calcoli?????

    Ciao e scusate per l'ignoranza.
    Io ho fatto un'applicazione che mi effettua dei calcoli (*/+-).
    Siccome ci sono di mezzo gli importi in euro, quindi le virgole, che variabili devo usare nel mio codice(integer, long, double...etc..)???

    Al momento mi succede che con i calcoli fatti gli importi totali alla fine non mi tornano.

    Sicuramente sbaglio l'uso dei tipi di variabili

    Grazie in anticipo Fratè
    Dalla vita altrui attingeva la sua oscura magia...
    Membro del Sacro Ordine degli elfi oscuri di Kand

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    102

    Dettagli .......

    Scusa ...... sai .......
    Ma che linguaggio usi?



    Laufer

  3. #3
    dal nome delle variabili mi sembra usi visual basic

    dovresti sapere che in vb integer long e byte troncano le posizioni decimali
    quindi dovresti usare single o double che però occupano + memoria
    perciò io faccio così
    uso int e long moltiplicati x 1000 così mi evito la virgola e posso controllare a quale centesimo si avvicina di + l'ultima cifra e tengo l'ultimo risultato come double

    tutto dipende da che precisione ti serve
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  4. #4

    Azz

    Ops .. stò proprio fori!!
    Visual Basic, uso visual basic, scusate

    A me interessa l'importo arrotondato fino ai due decimali.
    Quindi 10,715 deve essere 10,72.

    Se dichiaro tutte le variabili su cui faccio i calcoli con double và bene?
    Poi faccio il rnd().

    Giusto?

    E se moltiplico una variabile integer(quantità) per una variabile double(prezzo singolo) il risultato è in decimali?

    Grazie ancora.
    Dalla vita altrui attingeva la sua oscura magia...
    Membro del Sacro Ordine degli elfi oscuri di Kand

  5. #5
    uso int e long moltiplicati x 1000 così mi evito la virgola e posso controllare a quale centesimo si avvicina di + l'ultima cifra e tengo l'ultimo risultato come double
    xegallo, e perché mai usare questa "genialata"? Un Long arriva circa a 4 miliardi, dividi per 1000 e non puoi andare neanche oltre i 4 milioni..

    elfocaotico, usa Double e basta. Problemi di memoria oggigiorno proprio non si creano.. Poi capirai, per 8 bytes a variabile. :gren:

    Per l'arrotondamento poi ci sono funzioni apposite che tu saprai (io non me le ricordo.. :tongue: )..

    Ciao.

  6. #6
    Utente bannato
    Registrato dal
    Apr 2002
    Messaggi
    546
    per le ultime due cifre fai cosi:

    MyStr = Format(334.9, "###0.00") ' Restituisce "334,90"

    label1.caption=MyStr

  7. #7
    Originariamente inviato da r0x


    xegallo, e perché mai usare questa "genialata"? Un Long arriva circa a 4 miliardi, dividi per 1000 e non puoi andare neanche oltre i 4 milioni..

    elfocaotico, usa Double e basta. Problemi di memoria oggigiorno proprio non si creano.. Poi capirai, per 8 bytes a variabile. :gren:

    Per l'arrotondamento poi ci sono funzioni apposite che tu saprai (io non me le ricordo.. :tongue: )..

    Ciao.
    sempre un piacere avere a che fare con te
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  8. #8

    Tutto ok

    Non ho parole........
    Grazie siete tutti troppo gentili.
    A buon rendere Fratè
    Dalla vita altrui attingeva la sua oscura magia...
    Membro del Sacro Ordine degli elfi oscuri di Kand

  9. #9

    Niente

    Ho usato anche

    MyStr = Format(334.9, "###0.00") ' Restituisce "334,90"

    Ma ho i seguenti problemi:

    1) Se, ad esempio il numero è 127,23741 mi arrotonda al terzo decimale restituendomi 127,24 mentre mi dovrebbe dare 127,23.
    2) Quando mi restituisce il secondo decimale "0" nella variabile (ad esempio 1,20) Mystr e poi faccio text1.text = Mystr mi toglie lo zero e mi diventa 1,2

    Ora, mi rendo conto che mis tò perdendo in un bicchier d'acqua, ma visto che poi i miei dati vanno in stampa, ho bisogno di stampare tutti e due i miei decimali anche se sono ",00".

    Possibile che non riesco a tirarci fuori le game??

    Mi postereste un esempino di un calcolo.
    Io devo fare in modo da ottenere, partendo al prezzo ivato:

    a) L'iva (del prezzo ivato)
    b) L'imponibile

    Ho fatto na cosa del genere:
    text1 -----> il campo con l'importo ivato
    text2 -----> la quantità
    text3 -----> l'iva
    text4 -----> l'imponibile
    text5 -----> il totale

    dim iva as double
    dim imponibile as double
    dim totale as double
    dim importo_ivato as double
    dim quantità as integer

    importo_ivato = text1
    quantità = text2

    iva = (importo_ivato * quantità) / 1.2
    iva = Format(iva, "###0.00")
    imponibile = (importo_ivato - iva)
    imponibile = Format(imponibile , "###0.00")
    totale = iva + imponibile 'per fare tornare la somma precisa
    totale = Format(totale , "###0.00")

    text3 = iva
    text4 = imponibile
    text5 = totale


    Azz, non mi funziona

    P.S.:Errata corrige. Non mi interessa l'arrotondamento al terzo decimale come detto nel messaggio precedente :tongue:
    Dalla vita altrui attingeva la sua oscura magia...
    Membro del Sacro Ordine degli elfi oscuri di Kand

  10. #10

    Re: Niente

    Originariamente inviato da elfocaotico

    ...
    Ma ho i seguenti problemi:

    1) Se, ad esempio il numero è 127,23741 mi arrotonda al terzo decimale restituendomi 127,24 mentre mi dovrebbe dare 127,23.
    ...
    se hai a che fare con gli euro e' giusto cosi'!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.