ﺍﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ E N S E T ECOLE NORMALE SUPÉRIEURE DE L'EN

ﺍﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ E N S E T ECOLE NORMALE SUPÉRIEURE DE L'ENSEIGNEMENT ﺍﻟﻤحﻤﺪيﺔ TECHNIQUE DE MOHAMMEDIA ﺟﺎﻣﻌﺔ ﺍﻟحﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ UNIVERSITÉ HASSAN II DE CASABLANCA Page 1 sur 15 Concours d’accès en première année du cycle d’ingénieurs pour les filières :  Génie du Logiciel et des Systèmes Informatiques Distribués (GLSID)  Ingénierie Informatique, Big Data et Cloud Computing (II-BDCC) Session : Juillet 2018 Epreuve d’Informatique Durée : 3 heures Nom : ........................................................ Prénom : ................................................... CIN : .......................................................... N° d'examen : .......................................... Remarques importantes : - Il est obligatoire de choisir votre ordre de préférence pour les deux filières GLSID et II-BDCC en précisant votre filière de premier choix et votre filière de deuxième choix dans le formulaire ci-dessous : 1er choix : ………………………………………………... 2ème choix : ………………………………………… Signature : ………………………………………….. - L’épreuve se compose de deux parties : o Partie QCM, (Notée sur 60 points) o Partie Algorithmique et Programmation, (Notée sur 40 points) - L’usage de la calculatrice ou de tout autre appareil électronique est interdit. - L’utilisation du blanco est strictement interdite. - Aucun document n’est autorisé. - Les extraits de code fournis dans l’épreuve sont écrits en langage C ou en langage Java. - Aucune explication supplémentaire ne sera fournie aux candidats au cours de l’examen. - Chaque question du QCM ne peut avoir qu’une seule réponse possible parmi les quatre choix. La réponse est à reporter dans la grille de réponses fournie (page 15) en cochant la case correspondante . - Pour les exercices 1 et 2 : o Les réponses aux questions doivent être rédigées dans des feuilles de rédaction. o Les solutions algorithmiques peuvent être rédigées en utilisant un pseudo langage ou l’un des langages de programmation suivants : C, C++, C#, Java. o La clarté et la précision de votre solution algorithmique sera prise en considération. - Sont à rendre la page de garde (page 1), la grille de reponses (page 15) et les feuilles de rédaction. ﺍﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ E N S E T ECOLE NORMALE SUPÉRIEURE DE L'ENSEIGNEMENT ﺍﻟﻤحﻤﺪيﺔ TECHNIQUE DE MOHAMMEDIA ﺟﺎﻣﻌﺔ ﺍﻟحﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ UNIVERSITÉ HASSAN II DE CASABLANCA Page 2 sur 15 Partie 1- QCM (60 points) 1. Lequel des opérateurs suivants a la priorité la plus faible ? A) || B) | C) && D) & 2. Lequel des opérateurs suivants a une associativité de droite à gauche ? A) , B) << C) && D) <<= 3. L’expression 11U/22L*(3.75F-2)+3./6+.25/1.F est évaluée à : A) 0.5 B) 0.25 C) 0.0 D) 0.75 4. Le type de l’expression 3U/2*3.14F +1./1UL est : A) unsigned int B) double C) float D) long double 5. La variable x est de type short, l’expression x= 30*1000+2768 est évaluée à : A) 32768 B) -32767 C) -32768 D) 0 6. Quel affichage sera produit par l’exécution du programme suivant : #include<stdio.h> int main(){ int x = 0x10+ 010+10; printf ("x = 0x%x", x); return 0; } A) x = 022 B) x = 0x22 C) x =x22 D) Erreur de compilation 7. Quel affichage sera produit par l’exécution du programme suivant : #include<stdio.h> int main(){ int x =4, y =3*x--; if( x = !5|| y++>12)printf("x=%d, y=%d\n",x,y); else printf("y= %d, x=%d\n",y,x); return 0; } ﺍﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ E N S E T ECOLE NORMALE SUPÉRIEURE DE L'ENSEIGNEMENT ﺍﻟﻤحﻤﺪيﺔ TECHNIQUE DE MOHAMMEDIA ﺟﺎﻣﻌﺔ ﺍﻟحﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ UNIVERSITÉ HASSAN II DE CASABLANCA Page 3 sur 15 A) y=13, x=0 B) x= 1, y=13 C) x=1, y=10 D) y=10, x=0 8. Quel affichage sera produit par l’exécution du programme suivant ? #include<stdio.h> int main(){ char x=2; for(;x++;); printf("x=%d\n",x); } A) x = 0 B) x = 2 C) x =1 D) x = -1 9. On considère la procédure suivante : void f(int n){ int i,a,b,c; a=0;b=2;c=0 ; for(i=0;i<n;i++){ c=a+b; a=b+1; b=c+2; } System.out.print(a + " "+ b + " " + c); } Pour n=5, l’appel de cette procédure permet d’afficher: A) 23 37 35 B) 17 33 26 C) 48 78 76 D) 29 47 45 10. Soit la procédure suivante : void f(int n) { int i, a=0, b=2, c=1; for (i = 0; i < n; i=i+2) { if (c % 2 == 1) i--; else c = a + b; a = 2 * b; b = c + 2; } System.out.print(a + " " + b + " " + c); } ﺍﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ E N S E T ECOLE NORMALE SUPÉRIEURE DE L'ENSEIGNEMENT ﺍﻟﻤحﻤﺪيﺔ TECHNIQUE DE MOHAMMEDIA ﺟﺎﻣﻌﺔ ﺍﻟحﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ UNIVERSITÉ HASSAN II DE CASABLANCA Page 4 sur 15 Pour n=8, le résultat affiché par la procédure est : A) 8 3 1 B) 6 3 1 C) 12 5 3 D) 8 5 3 11. Soit la procédure suivante : void f(int n){ int i,j,a=0,b=0,c; for(i=0;i<n;i++){ for(j=0;j<i;j++) a=a+i; b=b+a; } System.out.print(a +" "+ b); } Pour n=4, le résultat affiché par la procédure est : A) 14 20 B) 15 22 C) 16 20 D) 14 22 12. Soit la fonction suivante : int f(int n) { int[] T = new int[n + 2]; T[0] = T[1] = 1; for (int i = 2; i <= n; i++) { T[i] = 0; for (int j = 0; j < i; j++) T[i] += T[j] * T[i - j - 1]; } return T[n]; } L’exécution de l’instruction : for (int i = 0; i < 6; i++) System.out.print(f(i) + " "); dans la fonction principale permet d’afficher: A) 1 1 2 5 14 42 B) 1 1 2 7 16 42 C) 1 1 2 6 15 42 D) 1 2 2 6 14 44 ﺍﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ E N S E T ECOLE NORMALE SUPÉRIEURE DE L'ENSEIGNEMENT ﺍﻟﻤحﻤﺪيﺔ TECHNIQUE DE MOHAMMEDIA ﺟﺎﻣﻌﺔ ﺍﻟحﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ UNIVERSITÉ HASSAN II DE CASABLANCA Page 5 sur 15 13. Soit la procédure suivante : void f() { int T[] = { 10, 20, -35, 35, -10, 5, -10, 20}; int a = 0, b = 0, n = 8; for (int i = 0; i < n; i++) { a = a + T[i]; b = b + (i * T[i]); } int c = b; for (int j = 1; j < n; j++) { b = b + a - n * T[n - j]; if (b > c) c = b; } System.out.print(a + " " + b + " " + c); } Le résultat affiché par la procédure est : A) 35 165 290 B) 35 168 290 C) 35 160 320 D) 45 180 340 14. Soit la fonction suivante : int f(int T[], int n) { int a = -1; for (int i = 0; i < n; i++) { int b = 0; for (int j = 0; j < n; j++) { int index = (i + j) % n; b += j * T[index]; } a =Math.max(a, b); } return a; } Pour T[] = { 1, 20, 2, 10 } et n=4, l’appel à la fonction permet de retourner : A) 78 B) 102 C) 70 D) 72 ﺍﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ E N S E T ECOLE NORMALE SUPÉRIEURE DE L'ENSEIGNEMENT ﺍﻟﻤحﻤﺪيﺔ TECHNIQUE DE MOHAMMEDIA ﺟﺎﻣﻌﺔ ﺍﻟحﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ UNIVERSITÉ HASSAN II DE CASABLANCA Page 6 sur 15 15. Soit la procédure suivante : void f(int T[], int n, int x) { int i; for (i = 0; i < n - 1; i++) if (T[i] > T[i + 1]) break; int a = (i + 1) % n, b = i; while (a != b) { if (T[a] + T[b] == x) System.out.print("A"); if (T[a] + T[b] < x) { a = (a + 1) % n; System.out.print("C"); } else b = (n + b - 1) % n; } System.out.print("B"); } Pour T[] = { 11,15,6,8,9,10 }, n=6 et x=18, l’appel à la procédure permet d’afficher: A) A C B A C B) C A C A B C) B A C B C D) C A C B 16. Soit la fonction suivante : int f(int T[], int n) { int a , b; for (int i = 0; i < n; i++) { if (T[i] <= 0 || T[i] > n) continue; a = T[i]; while (T[a - 1] != a) { b = T[a - 1]; T[a - 1] = a; a = b; if (a <= 0 || a > n) break; } } for (int i = 0; i < n; i++) if (T[i] != i + 1) return i + 1; return n + 1; } Pour T[]={ 1, 2, 7, 6, 9, -1, -10, 15 } et n=8, l’appel à la fonction permet de retourner : A) 2 B) 7 C) 3 D) 5 ﺍﻟﻤﺪﺭﺳﺔ ﺍﻟﻌﻠﻴﺎ ﻸﺳﺎﺗﺬﺓ ﺍﻟﺘﻌﻠﻴﻢ ﺍﻟﺘﻘﻨﻲ E N S E T ECOLE NORMALE SUPÉRIEURE DE L'ENSEIGNEMENT ﺍﻟﻤحﻤﺪيﺔ TECHNIQUE DE MOHAMMEDIA ﺟﺎﻣﻌﺔ ﺍﻟحﺴﻦ ﺍﻟﺜﺎﻧﻲ ﺑﺎﻟﺪﺍﺭ ﺍﻟﺒﻴﻀﺎﺀ UNIVERSITÉ HASSAN II DE CASABLANCA Page 7 sur 15 17. uploads/s1/ epreuve-2018-mi 1 .pdf

  • 41
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Mar 14, 2022
  • Catégorie Administration
  • Langue French
  • Taille du fichier 1.7510MB