Pagina 1 di 1

[vb] Anno Bisestile

MessaggioInviato: mar gen 06, 2004 12:42 pm
da Eclisse
Sto facendo un software in vb 6.0 per la gestione di turni di impiegati. Il mio problema è molto semplice. Devo fare un controllo sulla data; più precisamente controllare se l'anno corrente è bisestile. Il procedimento è questo: un anno è bisestile se è divisibile per 4 con l'eccezione degli anni divisibili per 100 che sono bisestili se sono divisibili per 400. La domanda è questa: come faccio a controllare se il risultato di una divisione è un numero intero o no?Cioè esiste una funzione ad esempio booleana(tipo IsNumeric) che mi restituisce un valore True se il risultato della divisione è un numero intero o False se il risultato è un numero decimale?

grazie[?]

[vb] Anno Bisestile

MessaggioInviato: mar gen 06, 2004 12:42 pm
da Eclisse
Sto facendo un software in vb 6.0 per la gestione di turni di impiegati. Il mio problema è molto semplice. Devo fare un controllo sulla data; più precisamente controllare se l'anno corrente è bisestile. Il procedimento è questo: un anno è bisestile se è divisibile per 4 con l'eccezione degli anni divisibili per 100 che sono bisestili se sono divisibili per 400. La domanda è questa: come faccio a controllare se il risultato di una divisione è un numero intero o no?Cioè esiste una funzione ad esempio booleana(tipo IsNumeric) che mi restituisce un valore True se il risultato della divisione è un numero intero o False se il risultato è un numero decimale?

grazie[?]

MessaggioInviato: mar gen 06, 2004 1:21 pm
da Leo
Il modo più semplice che mi viene in mente è fare la divisione normale (con il solito operatore /) e poi farne la divisione intera (con l'operatore mod). Se i due numeri sono uguali, significa che la prima operazione ha resto 0.

Questo è il primo metodo che mi è venuto in mente, probabilmente ce ne sono altri più semplici...

MessaggioInviato: mar gen 06, 2004 3:17 pm
da M@ttia
Non ti serve confrontare niente, in quanto il comando mod esprime già il resto di una divisione: es:

Codice: Seleziona tutto
10 Mod 3 = 1
(10 diviso 3 da resto 1...). Quindi tu dici "If Num1 Mod Num2=0 Then ..." [^]

MessaggioInviato: mar gen 06, 2004 3:18 pm
da M@ttia
Se vuoi guarda qui, è banale ma c'è...

MessaggioInviato: gio feb 12, 2004 2:11 pm
da erosmax
<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">citazione:<hr height="1" noshade id="quote"><i>Messaggio inserito da Eclisse</i>
<br />Sto facendo un software in vb 6.0 per la gestione di turni di impiegati. Il mio problema è molto semplice. Devo fare un controllo sulla data; più precisamente controllare se l'anno corrente è bisestile. Il procedimento è questo: un anno è bisestile se è divisibile per 4 con l'eccezione degli anni divisibili per 100 che sono bisestili se sono divisibili per 400. La domanda è questa: come faccio a controllare se il risultato di una divisione è un numero intero o no?Cioè esiste una funzione ad esempio booleana(tipo IsNumeric) che mi restituisce un valore True se il risultato della divisione è un numero intero o False se il risultato è un numero decimale?

grazie[?]
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">

usa il mod, questa è la giusta sintassi del controllo degli anni bisestili.


'Controllo BISESTILE
If mese = 2 And (anno Mod 4 = 0 And (anno Mod 400 = 0 Or anno Mod 100 <> 0)) Then GiorniTOT = 29

ciao