EPREUVE OPTIONNELLE d INFORMATIQUE



Documents pareils
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Programmation système I Les entrées/sorties

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Enseignement secondaire technique

Programmation impérative

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

UE Programmation Impérative Licence 2ème Année

Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers.

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Programmation système de commandes en C

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Algorithmique et Programmation, IMA

Bases de programmation. Cours 5. Structurer les données

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C


Les chaînes de caractères

Algorithmique et programmation : les bases (VBA) Corrigé

Algorithme. Table des matières

SYSTÈME DE GESTION DE FICHIERS

Cours Informatique 1. Monsieur SADOUNI Salheddine

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

Gestion collaborative de documents

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

Programmation C. Apprendre à développer des programmes simples dans le langage C

Recherche dans un tableau

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

GESTION DES FICHIERS C/UNIX

Cours de Système : Gestion de Fichiers

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

IV- Comment fonctionne un ordinateur?

Cours 6 : Tubes anonymes et nommés

ALGORITHMIQUE ET PROGRAMMATION En C

Le système de gestion des fichiers, les entrées/sorties.

Chap III : Les tableaux

Manuel d'installation

ACTIVITÉ DE PROGRAMMATION

Corrigé des TD 1 à 5

Conventions d écriture et outils de mise au point

Examen Médian - 1 heure 30

LES TYPES DE DONNÉES DU LANGAGE PASCAL

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Informatique Générale

Programmation en Java IUT GEII (MC-II1) 1

Compression de Données - Algorithme de Huffman Document de Conception

Les fichiers. Chapitre 4

Présentation du langage et premières fonctions

Cours d initiation à la programmation en C++ Johann Cuenin

Programmation en langage C

2 Comment fonctionne un ordinateur, dans les grandes lignes

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Programmation Web. Madalina Croitoru IUT Montpellier

TP 1. Prise en main du langage Python

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

La mémoire. Un ordinateur. L'octet. Le bit

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Analyse de sécurité de logiciels système par typage statique

Indications pour une progression au CM1 et au CM2

Sélection du contrôleur

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

1 Lecture de fichiers

Représentation des Nombres

Cours d Algorithmique et de Langage C v 3.0

TP 2 : Chiffrement par blocs

Rappels Entrées -Sorties

Sélection d un moteur de recherche pour intranet : Les sept points à prendre en compte

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

nom : Collège Ste Clotilde

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Structure d un programme

La carte à puce. Jean-Philippe Babau

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Conversion d un entier. Méthode par soustraction

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Plan du cours. Historique du langage Nouveautés de Java 7

as Architecture des Systèmes d Information

TP3 : Manipulation et implantation de systèmes de fichiers 1

Le codage informatique

TP : Gestion d une image au format PGM

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Table des matières. Introduction

Stockage du fichier dans une table mysql:

Probabilités conditionnelles Loi binomiale

Logiciel de Base. I. Représentation des nombres

Machines virtuelles Cours 1 : Introduction

Rappels d architecture

MANUEL D INSTALLATION

Cours 1 : Qu est-ce que la programmation?

STAGE IREM 0- Premiers pas en Python

V- Manipulations de nombres en binaire

TD3: tableaux avancées, première classe et chaînes

Compilation (INF 564)

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

TD : Codage des images

Transcription:

EPREUVE OPTIONNELLE d INFORMATIQUE A) QCM Les réponses au QCM doivent être portées directement sur la feuille de sujet de QCM. Ne pas omettre de faire figurer votre numéro de candidat sur cette feuille et de la joindre à vos autres copies d examen. Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0 - Une mauvaise réponse = -1 Question 1 : S = 0, A = 0, B = 0 pour I = 1 à 2 ; pour J = 1 à 5 A = A + J ; fin ; B = B + I ; fin ; afficher S = A + B Quelle est la valeur de S? A - 15 B - 20 C - 33 D - 52 Question 2 : S = 0 pour N = 1 à 5 S = S + (N * (N + 1)) / 2 fin ; afficher S A - calcule la somme des 5 premiers nombres B - calcule la division des 5 premiers nombres C - calcule la multiplication des 5 premiers nombres D - calcule la somme des 5 premiers nombres entiers Question 3 : Indiquez l ordre d évaluation de l expression suivante en langage C : a-b-c-d : A - a-(b-c-d) B - (a-b)-(c-d) C - (a-b-c)-d D - (((a-b)-c)-d)

Question 4 : Dans un ordinateur, le micro-processeur communique avec les périphériques à l aide de : A - bus de données B - bus de commandes C - bus d adresses D - sans bus Question 5 : La norme RS232C de l EIA, est une interface de communication entre : A - deux ordinateurs B - un ordinateur et un modem C - deux modems D - un ordinateur et un téléphone Question 6 : Un bit de parité permet de : A - compter le nombre de bits à 1 B - compter le nombre de bits à 0 C - compresser les données D - détecter des erreurs de transport Question 7 : Pour compresser des données, vous utiliserez quel codage? A - CCITT n 2 (Baudot) B - CCITT n 5 (ASCII) C - EBCDIC D - HUFFMAN Question 8 : Un FIREWALL est : A - un système de messagerie B - un système de sécurité C - un langage de programmation D - un système d exploitation Question 9 : Parmi ces outils, quel est celui qui ne fait pas partie des technologies Web? A - ASP B - HTML C - JAVA D - MERISE Question 10 : Un ERP est : A - un langage de programmation B - un portail d application C - un système de gestion intégré D - un protocole de communication Question 11 : Un WIRELESS est : A - un réseau de fibre optique B - un réseau de firewall C - un réseau sans fil D - un service de sécurité

Question 12 : La biométrie est une technologie de contrôle d accès par : A - saisie de mot de passe B - analyse des empreintes digitales C - analyse vocale D - présentation de pièces d identité Question 13 : Parmi les systèmes suivants quel est celui qui ne fait pas partie des réseaux de radio-communication : A - GPRS B - UMTS C - WIN-NT D - WAP Question 14 : TCP/IP est : A - une architecture de réseau B - un système de contrôle de processus industriel C - un serveur de fichier D - un système d exploitation Question 15 : Pour coder la valeur décimale 2003, il faut combien d octets? A - un B - deux C - trois D - quatre Question 16 : Une variable booléenne peut prendre comme valeur : A - égal B - vrai C - supérieur D - faux Question 17 : Internet explorer est : A - un langage de programmation B - un navigateur C - un protocole de contrôle des erreurs D - une base de données Question 18 : Soit 3 variables : B (booléenne), N (entier) égal à 10 et C (entier) initialisé à 0. Une des instructions suivantes est invalide, laquelle? A - C = C + N B - N = N * 2 C - B = B * 2 D - si B est faux alors C = 0 Question 19 : «Je conduis mon véhicule. J aperçois un feu tricolore. Si le feu est rouge alors je freine sinon je poursuis ma route». Quel type de structure représente la suite d actions précédente? A - une structure composée B - une structure alternative C - une structure mixte D - une structure répétitive

Question 20 : LIS N vecteur TAB(N) LIS TAB en I range 1 en somme range 0 tant que I < = N répète $21 en somme range somme + TAB(I) en I range I + 1 : 21 $ édition résultat A - compare la variable I avec la variable N B - permute les éléments d un tableau C - recherche le plus grand nombre d un tableau D - calcule la somme des éléments d un tableau Question 21 : let abs X = if X > = 0 then X else X ; ; Que calcule l expression précédente? A - met X à 1 B - affecte la valeur 0 à X C - compare X et abs D - la valeur absolue de X Question 22 : let j = 20 ; ; 30 j ; ; let K = 3 * J + 27 ; ; Quelle est la valeur de K? A - 87 B - 57 C - 47 D - 37 Question 23 : let som-vect X1 Y1 X2 Y2 = (X1 + X2), (Y1 + Y2) ; ; A - compare les variables X et Y B - cherche la variable X la plus petite C - cherche la variable Y la plus petite D - calcule la somme de 2 vecteurs à 2 dimensions Question 24 : let som-vect V1 V2 = (fst V1) + (fst V2), (snd V1) + (snd V2) ; ; A - calcule la somme de 2 vecteurs à 2 dimensions B - compare V1 et V2 C - cherche la variable X la plus grande C - cherche la variable Y la plus grande Question 25 : CAML est un langage: A - objet B - fonctionnel C - à fort typage C - à dominante itéractive

* * * * * B) ALGORITHMIQUE ET PROGRAMMATION PARTIE I : PAR N Les règles du Golf sont simple : vous disposez d une boule d approximativement 5cm de diamètre posé sur une boule d environ 12000km de diamètre. Le but est de frapper la première sans toucher la deuxième. On programme alors un Robot pour qu il joue parfaitement au golf. Quand il frappe la balle, il va directement vers le trou sur le green et la balle parcours toujours exactement la distance donnée pour le club utilisé. Chaque frappe de balle est considérée comme un coup et le but du jeu est d atteindre le trou sur le green en un minimum de coup. Pour cela, notre robot dispose d un nombre déterminé de clubs (maximum 24) permettant chacun de parcourir une distance particulière (la distance maximale à parcourir ne pouvant excéder 6840 mètres). Ecrire le programme permettant à notre robot de choisir la meilleur combinaison de clubs pour atteindre cet objectif. Celui-ci devra aussi être capable de déterminer s il n est pas possible de trouver une combinaison de coups permettant d atteindre l objectif. Votre programme acceptera en entrée dans un fichier texte (GOLF.IN) une séquence de nombres entiers (un par ligne) tels que le premier représente la distance à parcourir (entre 1 et 6480), le deuxième représente le nombres de clubs à disposition (entre 1 et 24) et ensuite, sur chaque ligne un nombre (entre 1 et 100) qui représente la distance que permet de couvrir ce club à chaque frappe ( notons qu il ne peut pas y avoir deux clubs permettant de couvrir une même distance). Il restituera en sortie dans un fichier texte (GOLF.OUT), le nombre et la séquence des coups, la plus faible, permettant d atteindre le trou sans le dépasser si c est possible et la phrase «objectif impossible à atteindre» dans le cas contraire. EXEMPLE : GOLF.IN : 100 5 33 44 66 22 1 GOLF.OUT : 3 COUPS 66 33 1

PARTIE II : PARTAGE EQUITABLE Deux amis Bibop et Loula veulent se partager un ensemble de cadeaux. Chacun d entre eux (les cadeaux) doit être attribué soit à Bibop, soit à Loula, et aucun ne peut être partagé en deux. Supposons que chaque cadeau se voit attribuer une valeur (déterminée par un entier positif) et que l on appelle A et B les valeurs respectives totales des cadeaux reçus par Bibop et Loula. Ecrire alors un programme qui déterminera la répartition la plus équitable des cadeaux, c est à dire celle qui minimisera la valeur absolue de la différence entre A et B. Votre programme acceptera en entrée dans un fichier texte (CADEAU.IN) une séquence de nombres entiers (un par ligne) tels que le premier représente le nombre de cadeaux à partager (entre 1 et 100) et qu ensuite sur chaque ligne il y ait un nombre (entre 1 et 200) représentant la valeur de chaque cadeau. Il restituera en sortie dans un fichier texte (CADEAU.OUT), deux nombres entiers représentant A et B. EXEMPLE : CADEAU.IN : 7 28 7 11 8 9 7 27 CADEAU.OUT: 48 49 REMARQUES : Les Programmes sont à écrire en PASCAL, en C ou en CAML. Pour l accès aux fichiers en entrée et en sortie, un rappel syntaxique des instructions sur les fichiers «texte» est fourni en annexe. Le principe de l algorithme retenu doit être exprimé avant chaque programme.

ANNEXE LANGAGE PASCAL : Procedure Assign(var F ; Nom_fic : string) ; Affecte le nom d un fichier disque à une variable-fichier. Procedure Reset(var f [ :FILE ;TailleEnr : Word]) ; Ouvre un fichier disque existant. Procedure Rewrite(var f [ :FILE ; TailleEnr : Word]) ; Crée et ouvre un fichier. Procedure Read( var f : TEXT ; v1 [, v2,.., vn]) ; Lit une ou plusieurs valeurs dans une ou plusieurs variables. Procedure Readln( var f : TEXT ; v1 [, v2,.., vn]) ; Lit une ou plusieurs valeurs dans une ou plusieurs variables jusqu à la fin de ligne. Procedure Write( var f : TEXT ; v1 [, v2,.., vn]) ; Ecrit une ou plusieurs valeurs dans le fichier. Procedure Writeln( var f : TEXT ; v1 [, v2,.., vn]) ; Ecrit une ou plusieurs valeurs dans le fichier plus un retour ligne. Procedure Close( var f) ; Ferme un fichier ouvert. LANGAGE C : FILE *fopen( char *path, char *mode) ; Ouvre le fichier dont le nom est contenu dans la chaine pointée par «path» et lui associe un flux. L argument «mode» pointe vers une chaîne commençant par l une des séquences suivantes : r fichier existant ouvert en lecture r+ fichier existant ouvert en lecture/écriture w crée un fichier et l ouvre en écriture w+ crée un fichier et l ouvre en lecture/écriture int fscanf( FILE *stream, const char *format,...) ; Lit les données depuis un flux pointé par «stream», convertit ces données selon le «format» décrit et stocke le résultat des conversions dans des arguments pointeurs. int fprintf( FILE *stream, const char *format,...) ; Ecrit les données sur le flux «stream» indiqué, ces données étant préalablement converties selon le «format» décrit. int fclose( FILE *stream) ; Dissocie le flux nommé «stream» du fichier sous-jacent. LANGAGE CAML : val openfile : string -> open_flag list -> file_perm -> file_descr Ouvre un fichier dont le premier argument est le nom, le second la liste des modes d'ouverture, le troisième les permissions, et renvoie un descripteur de fichier. Le type "open_flag" est défini ainsi : type open_flag = O_RDONLY (* Ouverture pour lecture seulement *) O_WRONLY (* Ouverture pour écriture seulement *) O_RDWR (* Ouverture pour lecture et écriture *) Remarque : il existe d'autres modes, mais ils n'ont pas d'intérêt dans le cas présent. val close : file_descr -> unit Ferme un fichier à partir d'un descripteur. val read : file_descr -> string -> int -> int -> int "read fd buff ofs len" lit len caractères du fichier dont le descripteur est fd, stocke ces caractères dans buff à partir de la position ofs et renvoie le nombre d'octets lus. val write : file_descr -> string -> int -> int -> int "write fd buff ofs len" extrait len caractères contenus dans buff à partir de la position ofs et les écrit dans le fichier dont le descripteur est fd.