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

Devo sommare (in secondi) due quantità di tempo (ad es. 15.4 sec + 12.2 sec
i 15.4 sec li memorizzi su una var a mentre 12.2 sec su una variabile b
quindi sommo
c= a+b
La mia domanda è che tipo di variabili devono essere a b e c?
Ho provato integer,single ma la somma da risultati sballati
Grazie

jack80 ha scritto:

Certamente non Integer (hanno dei decimali, no?!)
Dim a As Single
Dim b As Single
Dim c As Single
a = 15.4
b = 12.2
c = a + b
Debug.print c
Perchè dici che c è sballato? Quanto ti riporta?

 
Dim a As Integer
Dim b As Integer
Dim c As Integer
a = 1540
b = 1220
c = a + b
Debug.print c / 100
-- 
Samuele Battarra
prova il mio newsreader:
http://digilander.iol.it/battarsa/programmi/news/

 ha scritto nel messaggio
news:b171fh$vru6t$1...@ID-174464.news.dfncis.de...


 come si puo' fare??
Non c'ho capito un acca! Cosa sarebbe timer e un altro timer? Controlli
timer?  Funzioni Timer?
Facci vedere un po di codice.

 100 dopo l'input.
Certo, se proprio si vuole, si può far tutto.
Un certo linguaggio (Data General Business Basic) non supporta i decimali,
in nessun modo. Lì sono costretto a usare quel che ho, ma le precisioni sono
varie, potenti ed estese. Mai un errore di calcolo! Che me ne faccio di un
Integer VB con qualche decimale da gestire? Dove posso arrivare?

 > che se somma con un ltro timer che mi da 16.4 ecco che il risultato è


 che il separatore dei decimali sia il punto. C'č un modo per evitarlo?
Sě. Mostrarci il codice...

 ha scritto nel messaggio
news:r0_Z9.62634$ZE.17...@twister2.libero.it...


 aggiornatempo(tempo_complessivo)
Da questo non si capisce:
1) Qual è la riga che ti "sbaglia" i calcoli come hai descritto nei post
precedenti
2) Quali sono i valori (esattamente come riportati) delle variabili
coinvolte nella riga stessa (quelli che vedi portandoci sopra il mouse
quando sei in debug o facendo Debug.Print nome_variabile)
3) il comportamento (e quindi il codice) di Prelevatempo e di aggiornatempo

 3) il comportamento (e quindi il codice) di Prelevatempo e di
aggiornatempo
scrivono e prelevano semplicemente i valori da un file xml
La mia domanda è: se installo il mio programma su un pc che aveva impostato
come separatore decimale la virgola e non il punto ,come da me, mi darà
sempre un errore.volevo sapere se c'era un modo per evitare questo problema.
Grazie

 sempre un errore.volevo sapere se c'era un modo per evitare questo
problema.
Un programma deve poter girare con qualunque impostazione internazionale,
perchè l'utente deve poter fare quel che vuole. Cosa succede se un altro
programma (non tuo) pretende esattamente le impostazioni che tu non vuoi?
Sai che controlli faccio io, per esempio? Che il separatore interi/decimali
sia diverso da quello per le migliaia, per evitare casini immensi.
Il modo per evitare questi tipi di problemi è quello di fornire sin
dall'inizio il maggior numero di informazioni possibili. Tu non lo hai
fatto, nè allora, nè dopo essere stato invitato, espressamente ed
esplicitamente, a farlo. Dici che hai il diritto di offenderti se ti dico
"arrangiati"?


Mi spiace nn essere stato chiaro fin dall'inizio, ho iniziato con vb da non
piu' di due mesi
e non tutto è chiaro , cmq ho apprezzato il tuo aiuto lo stesso e nn mi
offendo , capisco che sui ng
quello che è chiaro per me non lo può essere per qualcun'altro.
Nessun rancore e grazie lo stesso

 Nessun rancore e grazie lo stesso
Credo che dovresti capire che nessuno, capace o meno, può risolvere un
errore senza averne i sufficienti elementi: Jack, ora ci farai vedere il
codice (esatto) che usi per recuperare quel valore?

 ha scritto nel messaggio
news:b1gum6$12cv52$1...@ID-174464.news.dfncis.de...


                     puntNode.setAttribute "ATI", tempo_complessivo
                      puntNode.setAttribute "ATI",
Replace(CStr(tempo_complessivo),",",".")


Purtroppo continua a darmi risultati sbagliati, Possono le procedure del DOM
che causano l'errore??