UNIVERSITE BLAISE PASCAL
Année 2001-2002
U.F.R. Sciences Exactes et Naturelles
D.E.U.G. MIAS-MASS - S1 - Examen Partiel d'Informatique
Documents et calculateurs interdits
durée: 2 heures
L'emploi des instructions EXIT, HALT et GOTO est interdit
Le barême est donné à titre indicatif.
Exercice I (sur 4 points) :
Le but du "programme" suivant est de calculer le
plus grand élément d'une suite de nombres réels ayant
au plus dix termes. La personne qui a écrit le programme ne maîtrisait
pas le langage Pascal.
program maximum;
var a=array[1..n] of real;
max : real;
i : integer;
begin
write('Donnez le nombre de termes de la suite: ');
readln(n);
until ((1 <= n) and (n <=10));
for i:=1 to n do
write('a[',i,']);
readln(a[i]);
for i:=1 to n do
if (a[1] < max) then max:=a[i];
writeln('Le plus grand élément de la suite est :
',max);
end.
Reécrire ce programme en éliminant les erreurs.
Exercice II (sur 8 points) :
Pour le mois de septembre 2001, on connaît
les valeurs (en degrés Celsius) des températures mesurées
toutes les six heures, à partir de 0 heure, et les quantités
journalières de précipitations (en l/m2).
Ecrire un programme permettant successivement :
1) La saisie des températures et des précipitations.
Pour les données (températures et précipitations)
utiliser seulement deux variables indicées à
un
indice. La saisie sera effectuée jour par jour; le programme
contiendra les instructions nécessaires pour que son exécution
présente, à l'écran, la saisie des données
pour chaque jour selon le modèle suivant:
Tournez S.V.P.
Le 01.09.2001 :
Températures :
à 00 heures : 10
à 06 heures : 12
à 12 heures : 20
à 18 heures : 18
Précipitations : 0.5
Les valeurs en gras ci-dessus correspondent aux données entrées
par l'utilisateur.
2) L'affichage :
a) du total des précipitations pour le mois de
septembre;
b) de la température maximale du mois de septembre avec
le jour et l'heure associés (on supposera qu'il existe un seul maximum);
c) de la liste des jours du mois de septembre pour lesquels la
température mesurée à 0 heure est supérieure
à la température mesurée à 6 heures.
Exercice III (sur 8 points) :
Pour cet exercice,
on n'utilisera pas de variable indicée
On considère :
(i) la suite de Fibonacci Fn,_n entier naturel, définie
par les relations suivantes :
F0=0, F1=1,
et Fn+2=Fn+Fn+1,
pour tout entier naturel n.
(ii) des entiers a, b et m tels que
2<=a<=b
et 2<=m<=10.
On rappelle que la suite de Fibonacci est strictement croissante et
qu'elle tend vers l'infini.
I. On considère la ligne de Pascal suivante, concernant
des variables entières :
X:=F0; F0:=F1; F1:=X+F0;
Si avant l'exécution de cette ligne F0 contient l'entier
p et F1 l'entier q, quels seront les contenus de F0
et F1 après l'exécution des trois instructions ?
II. Ecrire un programme permettant :
a. la saisie de a,b et de
m avec contrôle ;
b. au choix de l'utilisateur par CASE OF :
-1- le calcul et l'affichage du nombre de termes de la suite
de Fibonacci appartenant à l'intervalle [a,b];
-2- le calcul et l'affichage de la moyenne arithmétique
des m
premiers termes de la suite de Fibonacci;
-3- l'affichage de m premiers termes impairs
de la suite de Fibonacci.
III.
Ajouter au programme précédent les instructions permettant:
a) d'effectuer de nouveau le traitement proposé
dans II avec les mêmes valeurs de a, b,
m;
b) de recommencer avec d'autres valeurs pour a,
b, m sans sortir du programme.