Département Informatique Programmation 1
2008-2009
2
Exercice 4
Etant donnés quatre nombres entiers, écrire un algorithme qui permet d'afficher :
4 si les quatre nombres sont égaux
3 si trois des nombres sont égaux et le quatrième distinct
2 si deux nombres sont égaux, les deux autres étant distincts des deux premiers et entre
eux
22 si les nombres sont égaux 2 à 2, sans être tous les quatre égaux
1 si tous les nombres sont distincts
Exercice 5
Comment sont interprétées les instructions suivantes :
Si Condition_1 alors si Condition_2 alors Instructions_1 sinon Instructions_2 fin si
Si Condition_1 alors si Condition_2 alors Instructions_1 sinon Instructions_2 fin si fin si
Si Condition_1 alors si Condition_2 alors Instructions_1 finsi si sinon Instructions_2 fin si
Exercice 6
Ecrire un algorithme qui, pour une date entrée postérieure au 1er janvier 1960 et écrite sous la
forme de trois entiers jj représentant le jour, mm représentant le mois et aa représentant
l'année, calcule le nombre de jours écoulés entre cette date et le premier janvier 1960.
Pour ce faire vous utiliserez les relations suivantes :
1- Le nombre de jours écoulés Nbe depuis le début de l'année en cours peut être déterminé
approximativement par :
nbre_jours = trunc (30.42 * (mm - 1) ) +jj
2- Si mm = 2 (février), augmenter ce nombre de jours Nbe d'une unité.
3- Si mm>2 et mm<8 (mars, avril, mai, juin et juillet) diminuer ce nombre Nbe d'une unité.
4- Si l'année est bissextile( aa mod 4 = O) et mm>2, augmenter ce nombre Nbe d'une unité.
5- Augmenter ce nombre Nbe de 1461 pour chaque cycle complet de quatre années entre la date
entrée et 1960. (1461 = 365 * 4 +1 )
6- Augmenter ce nombre Nbe de 365 pour chaque année révolue depuis la dernière année d'un
cycle de quatre années, puis ajouter 1 s'il y a plus d'une année entière révolue ( cela permet de
dénombrer la dernière année bissextile).