Вы находитесь на странице: 1из 6

www.infocpge.

com
Actualits Nous contacter Plan du site Like

Menu principal
Accueil Algo rithmique Pro grammatio n Calcul fo rmel Tlchargement T.I.P.E Info rmatique

Epre uve inf o rm at ique CNC 20 11 MP, PSI e t T SI


crit par A.Kanber Inspecteur, CPGE

Concours NATIONAL COMMUN


Epreuve d'Informatique FILIRES : MP/ PSI/ TSI Session 2011 Dure 2 heures Les candidats sont informs que la prcision des raisonnements algorithmiques ainsi que le soin apport la rdaction et la prsentation des copies seront des lments pris en compte dans la notation. Il convient en particulier de appeler avec prcision les rfrences des questions abordes . Si, au co urs de l'preuve, un candidat repre ce qui peut lui sembler tre une erreur d'no nc, il le signale sur sa co pie et po ursuit sa co mpo sitio n en expliquant les raiso ns des initiatives qu'il est amen prendre. Re m arque s g n rale s : L'preuve se co mpo se de deux pro blmes indpendants. To utes les instructio ns et les fo nctio ns demandes sero nt crites en langage C. Les questio ns no n traites peuvent tre admises po ur abo rder les questio ns ultrieures.

Newsf lash

Nouveau :
- No tice CCP 20 12 MP,PC, PSI, TSI, cliquez ici. - No tice Mine s e t po nt s 20 12 , cliquez ici. - No tice Ce nt rale Supe le c 20 12 :( MP cliquez ici,PC cliquez ici,TSI cliquez ici). - No tice du co nco urs E3A 20 12 , cliquez ici. - No tice du co nco urs Po lyt e chnique 20 12 , cliquez ici.

Les concours
C.N.C C.C.P Mines et po nts CentraleSupelec E3A Po lytchnique

P R O B L M E I : O P R AT I O N S S U R D E S E N S E M B L E S M AT H M AT I QU E S Prambule
Un e nse m ble m at h m at ique est un gro upement d'o bjets distincts, appels l m e nt s de cet ensemble. La t h o rie de s e nse m ble s est l'tude des pro prits et des o pratio ns sur des ensembles (appartenance, inclusio n, runio n, ...). Elle reprsente une branche essentielle des mathmatiques. Ce pro blme s'intresse aux algo rithmes ralisant quelques traitements sur des e nse m ble s m at h m at ique s f inis de no m bre s e nt ie rs. No t at io n d'un e nse m ble f ini d' l m e nt s:

Divers
Sujets des CNC T.I.P.E Eco les maro caines Mes visiteurs

Liens ut iles
Des sites utiles Des utilitaires Des pro cedures

Menu Ut ilisat eur

Si E est un ensemble fini de N lments (0 < N), e 0 ,e 1 ,...,e i ,e i+1 ,..e n-1 , alo rs E sera no t ainsi E = {e 0 ,e 1 ,...,e i ,e i+1 ,...,e N-1 }.

Calendrier
< J anuary 20 12 >

PDFmyURL.com

So umettre un article So umettre un lien Web

ainsi E = {e 0 ,e 1 ,...,e i ,e i+1 ,...,e N-1 }.

< 1 8 15 22 29

J anuary 20 12 > F S 6 13 20 27 3 7 14 21 28 4 2 9 16 23 30 3 10 17 24 31 4 11 18 25 1 5 12 19 26 2

S M T W T

Part ie A : Reprsent at ion des ensembles f inis par des t ableaux


Dans cette partie, il s'agit de reprsenter par de s t able aux, des ensembles finis do nt les lments so nt des no m bre s e nt ie rs st rict e m e nt po sit if s. Appe llat io ns On appellera " Ense m ble Table au de t aille N" , to ut tableau de N,(0 < N) entiers strictement po sitifs et to us diffrents. Ce tableau sera no t T = {T[0 ],T[1],...,T[N-1]} On appellera un " Ense m ble Table au de t aille N t ri " , to ut " Ense m ble Table au de t aille N" , T , do nt les lments so nt tris par o rdre cro issant : (Po ur to ut i tel que 0 <= i < N-1, o n a T [i] < T [i+1]) Re m arque Dans to utes les questio ns de la partie A, o n suppo se que N,N1 et N2 so nt des co nstantes e nt i re s st rict e m e nt po sit ive s dj dfinies. No t at io n : On no tera les N lments du tableau T ainsi T ={T[0 ],T[1],...,T[N-1]} Que st io n 1 : V rif icat io n d'un Ense m ble Table au So i T un tableau dclar et initialis avec N entiers strictement po sitifs quelco nques. crire les instructio ns qui vrifient si T est un " Ense m ble Table au de t aille N". Po ur ce faire : Dclarer une variable entire de no m " valide " . Affecter la valeur 1 la variable " valide " si T est un " Ense m ble Table au de t aille N" , o u 0 sino n Exe m ple s : Si N=4 et T = {3,5,2,9 } alo rs valide =1 (T est un " Ense m ble Table au de t aille 4 " ) Si N=5 et T = {4,8 ,12,4,3} alo rs valide =0 (T n'est pas un " Ense m ble Table au de t aille 5 " )

Designed by:
J o o mla Te mp late s

Aujo urdhui Hier Semaine drnire Ce mo is Mo is drnier A partir du 20 /0 9 /20 11

246 244 10 9 8 158 8 28 0 4 9 211

Visito rs Co unter

Que st io n 2 : Appart e nance un e nse m ble Table au So i T un "Ense m ble Table au de t aille N" dclar et initialis et so it x une variable entire dclare et initialise avec un entier quelco nque. crire les instructio ns qui affichent sur l'cran l'une des deux affirmatio ns suivantes ( a) o u (b) (dans les 2 cas, la variable x sera remplace par sa valeur l'affichage) (a) "x appart ie nt T " si x est un lment du tableau T . (b) "x n'appart ie nt pas T " si x n'est pas un lment de T . Exe m ple s :

PDFmyURL.com

Si N = 4, T = {3,5,2,9 } et x = 2 alo rs o n affichera : "2 appartient T " Si N = 3,T = {12,6 ,9 } et x = 3 alo rs o n affichera : "3 n'appartient pas T "

Que st io n 3 : Tri d'un Ense m ble Table au So it T un " Ense m ble Table au de t aille N" suppo s dclar et initialis. crire les instructio ns qui permettent de trier les lments du tableau T par o rdre cro issant. Exe m ple : Si N = 4 et T = {3,1,12,8 } aprs les instructio ns de tri, o n aura T = {1,3,8 ,12} Re m arque co nce rnant le s que st io ns suivant e s de la part ie A (que st io n 4 e t que st io n 5 ) On suppo se avo ir dj dclar et initialis 2 variables glo bales T 1 et T 2 avec T 1 est un " Ense m ble Table au de t aille N1 t ri " et T 2 un " Ense m ble Table au de t aille N2 t ri "

Que st io n 4 : Inclusio n d'un e nse m ble dans un aut re On dit que T 1 est inclus dans T 2 si to ut lment de T 1 est aussi lment de T 2. crire la fo nctio n d'entte : int T 1inclusdansT 2() qui reto urne 1 si T 1 est inclus dans T 2 o u reto urne 0 sino n. Exe m ple : Si T 1 = {4,9 ,17} et T 2 = {2,4,5,9 ,17,19 } alo rs l'appel T 1inclusdansT 2() reto urne 1 Si T 1 = {1,8 ,10 } et T 2 = {1,4,10 ,6 } alo rs l'appel T 1inclusdansT 2() reto urne 0

Que st io n 5 : Unio n de de ux e nse m ble s t able aux t ri s On dit qu'un tableau T de taille N est l'unio n de T 1 et T 2 si T est un " Ense m ble Table au de t aille N t ri " co mpo s de to us les lments de T 1 en plus de to us les lments de T 2. So it T un tableau de taille N dj dclar (N est la taille du tableau unio n de T 1 et T 2). crire les instructio ns ncessaires po ur que T so it l'unio n de T 1 et T 2 Exe m ple : Si T 1 = {2,14,28 ,75} et T 2 = {1,6 ,14,28 } alo rs T = {1,2,6 ,14,28 ,75}

PDFmyURL.com

Part ie B : Ut ilisat ion des list es chanes


Dans cette partie, o n se pro po se de reprsenter des ensembles finis d'e nt ie rs st rict e m e nt po sit if s t ri s par o rdre cro issant par des listes chanes dfinies en langage C co mme suit typedef struct ens { int nombre; //un nombre entier strictement positif lment de l'ensemble struct ens *suiv; // l'adresse de l'lment suivant } ensembleListe; Appe llat io n On appellera " Ense m ble List e d'adre sse p" une liste chane d'lments de type e nse m ble List e (dfinie plus haut) et po ssdant les pro prits suivantes : Le premier lment a l'adresse p. Le dernier lment a dans so n champ suiv la valeur NULL Po ur to ut lment d'adresse e l de la liste chane, tel que (e l->suiv!=NULL), o n a (0 < e l->no m bre < ((e l->suiv) ->no m bre ) (liste trie par o rdre cro issant de no mbres) Exe m ple : L'ensemble {3,7,10 ,36 } sera reprsent par l'Ense m ble List e d'adre sse p co mme suit :

Que st io n 6 : Inse rt io n d'un l m e nt dans la list e chan e t ri e So it la dclaratio n glo bale suivante : e nse m ble List e *p; On suppo se avo ir dfinie et insr des lments dans l' " Ense m ble List e d'adre sse p" ( p est dclar plus haut). crire une fo nctio n d'entte : vo id inse re r(int val) qui permet d'insrer sa place l'lment de type e nse m ble List e dans l' " Ense m ble List e d'adre sse p" po ur que la liste reste to ujo urs trie par o rdre cro issant. Cet lment a dans so n champ no m bre , la valeur val (paramtre de la fo nctio n), en plus, o n suppo se que : (val>p->no m bre )( vo ir rappel, remarque et exemple) Rappe l : L'appel de la fo nctio n de la biblio thque du langage C m allo c(n) ( n tant un entier po sitif), permet d'allo uer n o ctets dans la mmo ire dynamique et reto urne l'adresse mmo ire du blo ck allo u. La fo nctio n m allo c est dfinie dans le fichier de la biblio thque st dlib.h Re m arque Si le paramtre val est la valeur du champ no m bre d'un lment qui existe dj dans la liste, aucun lment ne sera insr.

PDFmyURL.com

Exe m ple : So it l' " Ense m ble List e d'adre sse p" suivant :

Aprs l'appel de la fo nctio n inse re r(8), l' " Ense m ble List e d'adre sse p" devient :

R O B L M E II : D I S TA N C E D E H A M M I N G La dist ance de Ham m ing, dfinie par Richard Ham m ing permet de quantifier la diffrence entre deux squences de symbo les. Elle est utilise en info rmatique et en tlco mmunicatio ns po ur co mpter le no mbre de bits altrs dans la transmissio n d'un message d'une lo ngueur do nne. Dans ce pro blme, o n se pro po se d'implmenter des fo nctio ns po ur calculer la distance de Ham m ing Que st io n 1 : Dist ance de Ham m ing e nt re de ux chane s de caract re s La distance de Ham m ing entre deux chanes de caractres de mmes lo ngueurs est gale au no mbre de caractres, la mme po sitio n, qui so nt diffrents. Exe m ple s : La distance de Ham m ing entre "sure" et "cure" est 1, la distance de Ham m ing entre "aabbcc" et "xaybzc" est 3. crire une fo nctio n d'entte : int dist ance H(char S1[ ], char S2[ ], int M) qui calcule et reto urne la distance de Ham m ing entre S1 et S2 ( Les paramtres S1 et S2 so nt deux chanes de caractres de mme lo ngueur M et o n suppo se que le paramtre M est strictement po sitif)

Que st io n 2 : Dist ance de Ham m ing d'un langage On appellera langage , un tableau de chanes de caractres to utes de mmes lo ngueurs. La distance de Ham m ing d'un langage est gale au minimum des distances de Ham m ing entre deux chanes de caractres de ce langage diffrentes deux deux.

PDFmyURL.com

Exe m ple : Si langage ={" aabb" , " xayy" , " t ghy" , " xgyy" } , sa distance de Hamming est de 1 crire une fo nctio n d'entte : int dist ance H langage (char[NB][L] langage ), qui reto urne la distance de Hamming de so n paramtre langage (Le paramtre langage est un tableau de NB chanes de caractres to utes de mme lo ngueur L, NB et L so nt 2 co nstantes entires strictement po sitives dj dfinies)

Que st io n 3 : Dist ance de Ham m ing e nt re 2 no m bre s e nt ie rs po sit if s La distance de Ham m ing entre 2 no mbres entiers po sitifs est le no mbre de bits distincts dans leurs reprsentatio ns binaires (vo ir exemple) Exe m ple : la distance de Ham m ing entre les no mbres 7 et 4 est 2 (7 est reprsent en binaire sur un o ctet (8 bits) par 0 0 0 0 0 111 et 4 est reprsent en binaire par 0 0 0 0 0 10 0 ) Que st io n 3-a : + crire une fo nctio n d'entte : vo id binaire (char *bin ,int N) qui met dans la chane d'adresse bin, la reprsentatio n binaire de N ( On suppo se que 0 < =N <25 6 ) Que st io n 3-b : + crire une fo nctio n d'entte : int dist ance No m bre (int A, int B) qui calcule et reto urne la distance de Ham m ing entre les no mbre A et B ( On suppo se que 0 <= A < 25 6 et 0 <= B < 25 6 ) F I N D E L' P R E U V E

Valid XHTML and CSS.


C o p yrig ht 2011 D ind ane Ab d allah,e - mail:d ind ane 02@ yaho o .f r, C PG E Ib nt ahir Errachid ia. www.infocpge.com,Powered by Joomla! and designed by SiteGround web hosting

PDFmyURL.com

Вам также может понравиться