View
7.452
Download
6
Category
Preview:
Citation preview
Lycée Benguardène AS: 2008-2009 1/6
Lycée Benguardène
AS: 2008-2009
Enseignant: Mohamed SAYARI
MATIÈRE: ALGORITHMIQUE & PROGRAMMATION
Niveau: 4ème SCIENCES DE L'INFORMATIQUE
SÉRIE D'EXERCICES N°1: LES ENREGISTREMENTS & LES FICHIERS
"Diviser la difficulté en autant de parcelles qu’il est requis pour mieux la résoudre".
Descartes
Exercice N°1 Un compte en banque concerne une personne spécifiée par son nom, un numéro de
compte (un entier), et un montant (réel). Déclarez un enregistrement pour cette structure.
Exercice N°2 Un article est caractérisé par sa référence (entier), sa désignation (chaîne de caractères), son
prix (réel) et son fournisseur (chaîne de caractères). Soit un tableau T dont les éléments sont de type article. Ecrire un algorithme et sa traduction en Pascal d’un programme intitulé STOCKS qui permet :
1) De remplir le tableau T. 2) D’afficher le prix d’un produit donné. 3) D’afficher toutes les désignations des produits fournis par un fournisseur donné.
Exercice N°3 On considère l’ensemble des stagiaires de la section informatique d’un institut de
formation. Un stagiaire est défini par quatre champs : nom, prénom, date, notes. NB : date est définie par 3 champs : jour (intervalle), mois (intervalle), année (entier composé de
4 chiffres). notes est une matrice de 2 lignes (représentant les 2 semestres) et 3 colonnes (représentant
les notes de 3 examens passés dans un semestre). Ecrire un algorithme puis sa traduction en Pascal d’un programme permettant : 1) De saisir N (5<=N<100) stagiaires dans un tableau intitulé T1. 2) De remplir un tableau T2 par les moyennes des stagiaires. 3) De calculer et d’afficher la moyenne générale. 4) D’afficher les noms et prénoms des stagiaires ayant une moyenne supérieure à la
moyenne générale, un par un. 5) D’afficher les noms des stagiaires qui sont nés en 1982. 6) D’afficher les noms du plus petit et du plus grand stagiaire.
Exercice N°4 On se propose que le nombre des élèves dans une classe du 4ème SI est 20.
Ecrire une analyse, un algorithme et un programme Pascal qui permet de ranger dans un tableau les informations pour chaque élève (nom, âge, moyenne) puis:
Afficher le nom et la moyenne du premier de la classe.
Afficher la moyenne M de la classe ainsi que le nombre et les informations des élèves ayant une moyenne supérieure à M.
Lycée Benguardène AS: 2008-2009 2/6
Exercice N°5
1) Créer les types énumérés marque (Fiat, Peugeot, Renault, Citroën) et couleur (Blanc, Noir, Rouge, Vert, Bleu)
2) Ecrire une analyse, un algorithme et un programme Pascal qui permet de ranger dans un tableau les informations nécessaires pour 20 voitures (marque, âge, compteur, prix, couleur) puis: Rechercher les voitures d'une marque M et ayant une âge inférieure à A donnée Trier les voitures dans l'ordre croissant par la distance parcourue (compteur).
Exercice N°6
Un film peut être représenté par un type enregistrement contenant les champs suivants: titre, genre, date, durée, réalisateur et recette. Ecrire une analyse, un algorithme et un programme Pascal qui permet de ranger dans un tableau les informations nécessaires pour 50 films puis:
Afficher les informations des films d'un genre G donné. Remplir un tableau V par les 10 films ayant la recette la plus élevée. Trier les films par durée
Exercice N°7 (Examen de contrôle N°1 Lycée Bengaurdène 2009)
On définit un point par son abscisse (x) et son ordonnée (y) et on définit un cercle par son
centre (un point) et son rayon réel).
Ecrire une analyse et un algorithme qui permet de donner un cercle et remplir un tableau T
par N (5<N<20) puis construire 3 tableaux
T1: contient les points qui sont à l'intérieur du cercle,
T2: contient les points appartenant au cercle,
T3: contient les points à l'extérieur du cercle
NB:
Un point A appartenant au cercle si la distance entre A et le centre du cercle est égal
au rayon,
A est à l'intérieur du cercle si cette distance est inférieure au rayon,
A est à l'extérieur du cercle si cette distance est plus grande que le rayon.
La distance entre 2 points A (xA, yA) et B (xB, yB) est: )()(22
yByAxBxA
Lycée Benguardène AS: 2008-2009 3/6
Exercice N°8
On considère l'ensemble des employés d'une entreprise. Un employé est défini par:
o Nom: de type chaîne de caractères o Ident: entier non signé o Sexe: de type caractère o Date de naissance: de type chaîne de caractères o Grade: de type caractère (C:cadre, O: ouvrier) o Salaire: de type réel o Prime: de type réel
Tous les employés sont enregistrés dans un fichier "C:\Travail\employe.dat"
On se propose d'écrire un programme Pascal qui permet de:
Créer le fichier et enregistrer les employés (la prime à calculer)
De calculer la prime de chaque employé: sachant que: Prime = salaire pour les ouvriers Prime = salaire augmenté de 10% pour les cadres.
De calculer et afficher le total des salaires des cadres.
De chercher un employé par son Ident
Modifier le grade d'un employé connaissant son ident
D'enregistrer tous les cadres dans un nouveau fichier.
T.A.F: 1) Ecrire une analyse et un algorithme pour chaque tâche. 2) Ecrire le programme Pascal correspondant.
Exercice N°9 Soit un fichier intitulé info_classe contenant les renseignements des élèves de la 4ème SI
(nom, prénom et moyenne de chaque élève en matière Algorithmique et Programmation), on demande d'écrire un programma Pascal qui permet de trier le fichier info_classe selon les moyennes des élèves.
Exercice N°10 Une société veut informatiser la gestion de ses clients, en sauvegardant dans un fichier ses
fiches de renseignements. Chaque fiche comporte les renseignements suivants: o Nom et prénom : chaîne o N° CIN: entier non signé o Rue: chaîne o Code: entier non signé o Ville: chaîne o N° de téléphone Ecrire un programme nommé "Gestion" permettant de réaliser les tâches suivantes: - La saisie et la sauvegarde des fiches dans le fichier "Client.doc" sur le disque "C". la fin
de la saisie est possible si nous répondons par "N" (Non) à la question "Continuer (O/N) ?".
- L'affichage des fiches (une par page) - Chercher la position d'un client dans ce fichier (-1 s'il n'existe pas).
Lycée Benguardène AS: 2008-2009 4/6
Exercice N°10 Le but de cet exercice est d'écrire un programme qui permet de lire le contenu d'un
fichier texte et d'afficher sur l'écran en respectant la remarque suivante: chaque retour à la ligne sera traduit par un retour à la ligne et un saut de ligne. Exemple:
Fichier Affichage sur l'écran
Classe: 4ème SI 1 Section: sciences de l'informatique
Classe: 4ème SI 1 Section: sciences de l'informatique
Exercice N°11 1) Ecrire un algorithme qui génère un fichier intitulé "Nombres.txt" contenant des nombres
entiers fournis par l'utilisateur puis affiche uniquement les nombres pairs. 2) Ecrire un programme permettant de réaliser les actions offertes par le menu suivant:
a) Déterminer le nombre d'éléments du fichier b) Renommer le fichier "Nombres.txt" en "valeurs.doc" c) Supprimer les éléments du fichier se trouvant après une position P donnée. d) Supprimer le fichier du disque.
Exercice N°12 On dispose d'un fichier de réels enregistrés sous le nom physique "Valeurs.FCH". Ce
fichier est déjà trié par ordre croissant. On désire insérer dans ce fichier et à sa bonne place une nouvelle valeur V donnée. Ecrire une analyse et l'algorithme d'une procédure nommée Insertion réalisant cette tâche. NB. L'insertion doit se faire directement dans le fichier et non pas à travers un transfert dans un tableau ou dans un autre fichier.
Exercice N°13 On donne la structure élève formée par les 4 champs suivants:
Nom Prénom Numéro scolaire Date de naissance
Ecrire un programme Pascal qui permet de:
Remplir un fichier intitulé "classe.dat" et sous la racine C:\ par des élèves. La saisie s'arrête
selon le choix de l'utilisateur en répondant à la question "Voulez-vous continuer ? O/N"
Offrir le menu ci-dessous à l'utilisateur. Ce dernier doit choisir l'opération qu'il désire
selon son numéro d'ordre.
Lycée Benguardène AS: 2008-2009 5/6
MENU PRINCIPAL 1- INSERER UN ELEVE DANS LE FICHIER 2- SUPPRIMER UN ELEVE DE FICHIER 3- MODIFIER UN ELEVE 4- RECHERCHER UN ELEVE 5- AFFICHER LE CONTENU DU FICHIER 6- QUITTER LE PROGRAMME
Donner le numéro de l'opération à effectuer s'il vous plaît:_
Indications
- Pour l'insertion, l'utilisateur doit saisir la position ou on va insérer cet enregistrement.
- Pour la suppression, l'utilisateur doit saisir la position de l'enregistrement à supprimer.
- Pour la modification, l'utilisateur doit saisir la position de l'enregistrement à modifier
par un nouvel enregistrement saisi au clavier
- La recherche d'un enregistrement est basée sur le numéro scolaire. Donc l'utilisateur
doit saisir le numéro scolaire de l'élève puis afficher tous ses informations s'il existe.
NB. clrscr; permet d'effacer l'écran.
Exercice N°14 On veut écrire un programme qui permet de charger un fichier par les notes
d’algorithmique des élevés 4SI nom (chaîne de caractère), note contrôle (réel), note TP (réel),
note synthèse (réel). Le nom physique est "C:\4SI.DAT".
La fin de saisie est contrôlée par la question (" vous les vous continuez (O/N)")
Stocker le nom et la moyenne de chaque élève dans un deuxième fichier dont le nom physique
est "C:\admis.DAT" en ajoutant un points pour les élevés qui n’ont pas une moyenne
Le formule de moyenne M= (NC+ NTP+2*NS)/4.
On veut aussi supprimer les élèves qui ont une moyenne inférieure ou égale à la moyenne de
la classe de deuxième fichier et afficher le contenue de fichier "admis.DAT".
Questions :
Lycée Benguardène AS: 2008-2009 6/6
1- Décomposer le problème en module
2- Quelles sont les structures de données adéquates à ce problème ? Justifier votre
Choix
3 Analyser et déduire l’algorithme du programme principal qui permet de Réaliser Le
Traitement décrit précédemment
4- Analyser chacun des modules envisagés et déduire les algorithmes Correspondants.
Exercice N°15 Les informations relatives à une personne sont :
Nom, prénom (chaîne) ; Téléphone (10 caractères) ; Numéro fiscal (entier) ; Adresse (rue (entier) ; ville (chaîne) ; code postal (entier non signé)) ;
Ecrivez les analyses et les algorithmes des différents modules d’un programme qui permet de:
* Remplir un fichier intitulé «data.dat » sous la racine C : par des personnes. La saisie s’arrête
selon le choix de l’utilisateur en répondant à la question « voulez-vous continuer ? O/N ».
* Afficher à l’écran les noms et les prénoms des personnes résidant dans une ville donnée.
* Saisir un numéro de téléphone TEL puis chercher et afficher le nom, le prénom et le numéro
fiscal de la personne ayant ce numéro de téléphone.
* Saisir le nom d’une ville puis calculer et afficher le nombre des personnes résidant dans
cette ville.
Recommended