Académique Documents
Professionnel Documents
Culture Documents
Examen Master OM Fortran 2019 2020
Examen Master OM Fortran 2019 2020
Partie I : QCM Fortran (réponse correcte +1, réponse fausse -0.5, aucune réponse : 0) : 10 points
1. On appelle une subroutine par : 7. Pour ouvrir un fichier quelle procédure peut-on utiliser:
o son interface, o open(10,test.data)
o son nom, o open(10,'test.data')
o son nom précédé par CALL o open(10, file= test.data )
2. ‘=’ c’est une instruction : o open(10,file='test.data')
o d’affectation, 8. Soit le code suivant :
o comparaison, Function ExF (a,b)
o ne fait rien Integer a,b
3. Pour accéder à la case située à la 2éme ligne et la 3éme ExF = b
colonne de la matrice T, quelle est la bonne syntaxe? a=a**b
o T [2,1] ; return b
o T [2] [1] ; end function
o T (1) (2) ; Que renvoie cette fonction :
o T (2, 1) ; o Le resultat de a**b
4. En Fortran si x=2.0, a=2.0 et b=4.0, quelle est la valeur de o La valeur de a
y=a*x+b**2/x o La valeur de b
o 8 o Rien
o 12 9. Si x est strictement suppérieur à 100.0 ou inférieur ou
o 16 égale à 0.0, imprimer 'out'. Quelle est l'instruction
o 64 correcte:
5. En fortran si x=4.5, y=3.0 et w=1.5, quelle est la valeur de a). IF (x .GT. 100.0) THEN c). IF (x .GT. 100.0) THEN
z=x+w/y+1 IF (x .LE. 0.0) THEN write(*,*) 'out'
o 1.5 write(*,*) 'out' ELSE IF (x .LE. 0.0) THEN
o 3.0 ENDIF write(*,*) 'out'
o 4.5 ENDIF ENDIF
o 6.0
6. Soit le code suivant b). IF (x .LE. 0.0) THEN d) Aucune des trois
Do i=1,10 IF (x .GT. 100.0) THEN propositions.
If( mod(i,3) .eq. 0 ) write(*,*) ‘oui write(*,*) 'out'
enddo’ ENDIF
ENDIF
Combine de fois s’affiche ‘oui’ :
o 1
10. Soit le code suivant
o 2
IF (x .LE. 200) THEN
o 3
IF (x .LT. 100) THEN
o Aucune fois
IF (x .LE. 0) THEN
Write (*,*) 'A'
ELSE
Write (*,*)'B'
ENDIF
ELSE
Write (*,*)'C'
ENDIF
ELSE
Write (*,*)'D'
ENDIF
Ce code correspond à quel cas :
a). 0 < x < 100
b). x <= 0
c). 100 <= x <= 200
d). x > 200
Partie II : QCM C (réponse correcte +1, réponse fausse -0.5, aucune réponse : 0) : 10 points
1- Qu’affiche l’instruction suivante :
7- Si le nombre d’itérations est connu, il est conseillé d’utiliser :
printf("j’aime le C %d fois", 30/20) ;
1) while …
1) j’aime le C 0 fois 3) for …
3) j’aime le C 1.5 fois 2) do … while
2) j’aime le C 1 fois
4) je n’aime pas le C
8- L’instruction « switch » sert à éviter des instructions :
2- Qu’affichent les instructions suivantes : 1) while … imbriquées
int x=9 ; 3) if … else … imbriquées
int y=x+10 ; 2) do … while imbriquées
printf("%d :%d :%d",x,y,y) ; 4) for … imbriquées
1) 9:19:
9- Soit un tableau int T[10] ; pour accéder à la troisième case
3) 9 :19 :%d
du tableau T, on utilise :
2) 9 :19 :19
1) T[3]
4) %d :%d :%d
3) T{2}
2) T[2]
3- Qu’affichent les instructions suivantes :
4) T(3)
char a ;
a=65 ;
printf("%d %c",a,a) ;
10- On considère l’entête (ou prototype) de fonction suivante :
1) AA
3) A 65
void fiche(float *x, float *y, int i, char z, char c)
2) 65 A
On considère les déclarations suivantes :
4) 65 65
Ecrire un programme fortran (complet et optimiser) qui permet de lire la valeur de N, calculer et afficher
(sur la console) la valeur de A et B avec :
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..
…………………………………………………………………………………………………………………………………………………………………………………………………..