~_;..lI~1 ROYAUME DU MAROC Ministère de l'Enseignement Supérieur de la Recherch
~_;..lI~1 ROYAUME DU MAROC Ministère de l'Enseignement Supérieur de la Recherche Scientifique de la Formation des Cadres Présidence du Concours National Commun Ecole Nationale Supérieure des Mines de Rabat Session 2016 CONCOURS NATIONAL COMMUN , d'admission aux Etablissements de Formation d'Ingénieurs et Établissements Assimilés ÉPREUVE D'INFORMATIQUE Filières: MP/PSI/TSI Durée 2 heures Cette épreuve comporte 10pages au format A4, en plus de cette page de garde L'usage de la calculatrice est interdit page de garde Épreuve d'Informatique - Session 2016 - Filière MPI PSI! TSI I.:énoncé de cette épreuve, commune aux candidats des filières MP 1PSII TSI, comporte 10 pages. I.:usage de la calculatrice est interdit. Les candidats sont informés que laprécision des raisonnements algorithmiques ainsi que lesoin apporté à la rédaction et à la présentation des copies seront des éléments pris en compte dans la notation. Il convient en particulier de rappeler avec précision les 1 références 1 des questions abordées. Si, au cours de l'épreuve, un candidat repère ce qui peut lui sembler être une erreur d'énoncé, il le signale sur sa copie et poursuit sa composition en expliquant les raisons des initiatives qu'il est amené à prendre. Remarques générales: - L'épreuve se compose de deux problèmes indépendants. - Toutes les instructions et les fonctions demandées seront écrites en Python. - Les questions non traitées peuvent être admises pour aborder les questions ultérieures. - Toute fonction peut être décomposée, si nécessaire, en plusieurs fonctions PROBLÈME 1 . CALCUL SCIENTIFIQUE Méthodes à un pas : Nous allons nous intéresser dans ce problème, à quelques méthodes permettant de résoudre numériquement les équations différentielles du premier ordre, avec une condition initiale, sous la forme: { y'(t) = f(t,y(t)) y(to) = Yo On note 1 =1ta, to + T[ l'intervalle de résolution. Pour un nombre de noeuds N donné, soit tn = to + nh, avec n = 0,1,2, ...,N, une suite de noeuds de 1 induisant une discrétisation de 1 en sous-intervalles ln = [tn, tn+d. La longueur h de ces sous-intervalles est appelée pas de discrétisation, le pas h de discrétisation est donné par h = ~. Soit Yj l'approximation au noeud tj de la solution exacte y(tj). Les méthodes de résolution numériques, étudiées dans ce problème, s'écrire sous la forme: 1 Yn+l = Yn + M>(tn,Yn, h) 1 tn+l = tn + h pa gel sur 10 III" Épreuve d'Informatique - Session 2016 - Filière MPI PSI! TSI Avec <I>(t, y, h) = af(t, y) +I3f(t + h, Y + hf(t, y)); où a, 13 sont des constantes comprises entre 0 et 1. Question 1: Pour quelles valeurs du couple (a, 13) retrouve-t-on la méthode d'Euler? Dans la suite on considère une deuxième méthode dite de Heun, cette méthode correspond aux valeurs du couple (a, 13) = (t, t)· Questlon2: Écrire une fonction de prototype def Henn(f, (0,Yo, T, N) : qui prend en paramètres la fonction f: (t,y) - tu.». la condition initiale to, Yo la valeur de f en to le nombre de nœuds Net la valeur final du temps T et qui retourne deux listes t t = [to, tl,' .. , tN 1 et Yh = [Yo, Yi, ... ,YNl donné par le schéma: { Yn+l = tn+l = Yn + h<l> (tn , Yn, h) tn + h Avec 1 1 <I>(t,y,h) = 2f(t,y) + 2f(t+ h,y+ hfct,y)); Le pas de discrétisation h est donné par h = ~. Remarque: La valeur retournée par la fonction Heun pourra être un couple constitué de deux listes, un tableau constitué de deux listes (par exemple un type array du module numpyï ou tout autre structure de données constitué de deux listes. Application au circuit RLC: R c FIGURE 1: circuit RLC On souhaite travailler sur un circuit RLC en série qui sera constitué des éléments suivants: une résistance ROQ), une inductance L(1H), une capacité C(1F) et un générateur qui délivrera une source de tension sinusoïdale V(t) = costznr). On s'intéresse à la tension U 1 aux bornes de la bobine qui satisfait l'équation différentielle: (1) p age 2 sur 10 III" 1 Épreuve d'Informatique - Session 2016 - Filière MPt PSI! TSI Question3: Écrire une fonction de prototype def Euler(f, to,T,Yo,N) : qui prend en paramètres la fonction 1: (t,y) -+ I(t, y), la condition initiale to,la valeur de f en to, le nombre de nœuds N et la valeur final du temps T et qui retourne deux listes t t = [to, tl, ... , tN] et Yh = [Yo,Yi, ... ,YN] donné par le schéma d'Euler permettant de résoudre des équations différentielles du premier ordre. Question4: Donner la complexité de la fonction d'Euler en expliquant le descriptif du calcul. On considère les valeurs suivantes: y(t) = UI(t) et z(t) = ÛI(t) . L'équation différentielle (1) est du second ordre. Question5: Définissez un système de deux équations différentielles du premier ordre qui puisse satisfaire l'équation (1). Question 6: En posant Y(t) = [UI(t), ÛI(t)], montrez que l'équation (1) peut s'écrire sous la forme: y'(t) = F(t,Y(t)) (II) avec F: t,X -+ F(t,X) est une fonction à préciser (X = [X[OJ,X[l]]). Question 7: Implémenter en Python l'équation différentielle (II) en utilisant la fonction odeinu) du module scipy.integrate, la méthode d'Euler et celle de Heun. On affichera dans une même fenêtre le résultat de ses trois méthodes avec les valeurs suivantes: N = 1000, to = 0,T = 3, U 1(0) = 0 et Û1(0) = O. Voir les résultats sur la figure 1 se trouvant dans l'annexe du document. On ajoutera quatre types d'informations: - le titre de la figure: 'circuit RLe, tension bobine' - un label associé à l'axe des abscisses: 'temps (s)' - un label associé àl'axe des ordonnées: 'tension (mV)' - une légende associée au graphique: 'Odeint' associé à la méthode d'odeint - une légende associée au graphique: 'Euler' associé à la méthode d'Euler - une légende associée au graphique: 'Heun' associé à la méthode d' Heun page 3 sur 10 III" Épreuve d'Informatique - Session 2016 - Filière MPt PSII TSI PROBLÈME II : PROGRAMMATION Remarque 2.1 Dans ce problème il ne sera pas possible d'utiliser les méthodes de la classe String suivantes: capitalizeï), upperï), louierï), encodeï), replacet), suiapcaseï), translateï) . Par contre l'utilisation des autres méthodes est possible comme la méthode indexï): Nous allons nous intéresser au code de Vigenère (1523-1596) qui est plus robuste que le code de César, le premier code reconnu comme élément à coder les messages. Nous considérons dans ce problème uniquement l'alphabet de la langue française. On ne s'intéressera qu'aux caractères visibles. On ne prendra pas en compte les ligatures comme par exemple œ ou re. On ne s'intéresse qu'à des textes composés uniquement de majuscules, les 26 lettres de l'alphabet. Tout autre caractère sera supprimé du texte initial. Le code de César repose sur une substitution mono alphabétique particulière, c'est-à-dire qu'on remplace une lettre de l'alphabet par une autre en utilisant une clé. Chaque lettre de l'alphabet a une valeur entière (A=O,BeI, C=2, D=3, ..., K=10, ..., T=19, ..., 2=25) que l'on ajoute à une clé modulo 26 ( x = ymod26 ~ x == y[26)). Par exemple: si la clé est K (sa valeur est 10, position de la lettre K dans l'alphabet), la lettre T aura comme valeur chiffrée: 19 +10mod26 = 29mod26 =3, soit le caractère D. Le code de Vigenère est construit sur le même principe mais ilpermet de donner une réponse au point faible du code de César, à savoir l'analyse des fréquences de l'apparition des lettres. Le code de Vigenère utilise des clés plus longues que celui de César.Le principe est que chaque lettre peut être codée de plusieurs façons. Par exemple, prenons une clé de dimension 3 (son nombre de lettres). Soit ~C' cette clé alors toutes les lettres en position 3k seront codées selon le code de César avec 'N. comme clé, toutes les lettres en position 3k + 1seront codées avec la clé 'B' et toutes les lettres en position 3k +2 avec la clé 'C'. Par exemple: comment chiffrer le texte "c'est un bel été" avec la clé 'ABC'? Avant d'appliquer le code de Vigenèrele texte en clair sera converti en majuscules et ceci sans aucune lettre accentuée ni d'espacement ni autre caractère. Le texte sera donc transformé en : "CESTUNBELETE". Appliquons le codage de Vigenère :la clé sera répétée autant de fois que nécessaire afin que le texte composé de la répétition globale ou partielle de la clé soit de même taille que le texte initial. On applique le code de César à chaque lettre du texte en clair associée à une lettre de la clé. Par exemple si on prend la deuxième lettre du texte en clair soit 'E' (indice 4 de l'alphabet), associée à la lettre correspondante de la clé, soit 'B' (indice 1), le chiffré est calculé comme: pa 9 e 4 sur 10 III. Épreuve d'Informatique - Session 2016 - Filière MPI PSIJ TSI Texte en clair : CESTUNBELETE La clé : ABCABCABCABC Texte crypté: CFUTVPBFNEUG TABLE 2.1: Un message crypté uploads/S4/ cnc-2016-informatique-epreuve.pdf
Documents similaires










-
35
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Nov 11, 2021
- Catégorie Law / Droit
- Langue French
- Taille du fichier 2.5364MB