In quest’articolo studieremo un algoritmo che controlla se un anno è bisestile oppure no.
Regola per calcolare se un anno è bisestile
Nel mese di febbraio ogni 4 anni viene aggiunto un giorno per evitare lo slittamento delle stagioni. Quindi ogni 4 anni avremo 366 giorni anziché 365.
Per vedere se un anno è bisestile dobbiamo dividerlo per 400; se è divisibile allora è sicuramente un anno bisestile; altrimenti saranno bisestili solo quegli anni che si possono dividere per 4 ma non per 100.
Esempi di anni bisestili sono:
1600, 1604, 1608 fino al 1696. Il 1700 non è bisestile. E ancora il 1704, 1708 fino a 1796. Il 1800 non è bisestile. Allo stesso modo neanche il 1900 è bisestile e così via.
In definitiva per apportare un’ulteriore approssimazione si è stabilito di non rendere bisestili gli anni secolari, eccetto quelli divisibili per 400.
Potete seguire tutta la spiegazione su focus scienza se volete approfondire.
Algoritmo anno bisestile con i diagrammi di flusso
Realizziamo questo semplice algoritmo con i diagrammi di flusso.
Per realizzare l’algoritmo servono dunque le seguenti forme:
Ellisse per l’inizio e per la fine;
Parallelogramma per inserire l’input, ovvero in questo caso per prendere l’anno e per visualizzare in output il risultato;
Rombo per effettuare un test che può essere vero o falso. In questo caso si effettuano due test.
Quindi chiediamo in input l’anno e poi verifichiamo se è divisibile per 400. Se è vero diciamo che l’anno è bisestile, altrimenti verifichiamo se l’anno è divisibile per 4 ma non per 100 come detto sopra.
Utilizzeremo l’operatore % , che è l’operatore modulo, che serve a trovare il resto della divisione.
Lo spiego con un esempio:
2400%400 indica il resto della divisione che in questo caso è 0; in quanto 2400 diviso 400 fa 6 con resto zero;
invece 2400/400 indica un quoziente e in questo caso è 6.
Per fare il test usiamo l’operatore di confronto che ricordo si esprime con il doppio uguale.
Allego l’algoritmo completo che verifica se un anno è bisestile.
Potremmo anche adottare questo procedimento:
In questo modo si controlla se un anno è bisestile con un solo test, ovvero un solo se.
Alcuni link utili
Indice tutorial diagrammi a blocchi
2 – Primi esercizi con i diagrammi di flusso (perimetro triangolo; area di un trapezio)
3 – Altro semplice esercizio sui flow chart (calcolare uno sconto)
5 – Precedente e successivo di un numero
6 – Introduzione agli algoritmi di selezione
9 – Algoritmo di selezione sugli angoli