Série d`exercices (n° 1) Algorithme et Langage C

publicité
TDI 1ère Année
Algorithme et Langage C
26/09/2011
Série d’exercices (n° 1)
Algorithme et Langage C
Exercice n° 1 : Écrire un algorithme saisissant 2 variables entières qui calcule et affiche leur moyenne.
Exercice n° 2 : Calculer et afficher le carré d’un nombre.
Exercice n° 3 : Calcul de la surface d’un cercle
Exercice n° 4 : Ecrire un programme qui lit le prix HT d’un article, le nombre d’article et le taux de TVA, et qui fournit le prix
total TTC correspondant. Faire en sorte que les libelles apparaissent clairement.
Exercice n° 5 : Ecrire un algorithme qui calcule et d’afficher le périmètre d’un cercle dont l’utilisateur fournira le rayon. La
formule est 2 * Pi * Rayon. (Pi = 3.141592).
Exercice n° 6 : Écrire un algorithme saisissant le prix "TTC" d'une marchandise et affichant le prix "Hors Taxe" sachant que
cet article a une T.V.A. de 18,6%.
Exercice n° 7 : Ecrire un algorithme qui calcule et affiche la surface de 2 cercles, l’un de rayon 3 m et l’autre de 4,50 m,
ainsi que la différence entre les deux surfaces.
Exercice n° 8 : Entrer la quantité d’articles achetés. Si la quantité est supérieur à 100 alors le prix de gros est PU = 0.6 *
prix normal, sinon PU = prix normal. Afficher le prix à payer.
Exercice n° 9 : Écrire un algorithme permettant la saisie d’une note et son affichage. Afficher en plus un message si la note
est en dessous de la moyenne.
Exercice n° 10 : Ce programme permet de saisir un salaire et son affichage et calcule bénéficient et vérifier est ce que le
personne est Mariée ou étudiant si le personne mariées bénéficient de 5 % de réduction sur
Certains articles, et les étudiants bénéficient de 10 % si personne mariée et étudiant bénéficient 15%
Exercice n° 11 : Ce programme permet de saisir un salaire et son affichage et calcule la retenue de la CNSS et vérifier est
ce que le salaire est plafond de 5000 DH .si Salaire inférieure de 5000 alors le retenue de la CNSS est salaire foi 2.2% sinon
si salaire est supérieur 5000 le retenue de la CNSS est 5000 fois 2.2%
Exercice n° 12 : Ecrire un algorithme permettant d’éditer une facture d’achat d’une bouteille de boisson de prix 10.50 Dh.
L’utilisateur fournira les éléments suivants :
- le nom du client
- la quantité du produit
- le prix total hors taxe
- le prix total toutes taxes, sachant que la TVA est de 20 %.
Exercice n° 13 : Supposons que T1, T2 et T3 soient en mémoire et donnent des résultats à des tests. Etablir l'algorithme qui
trouve le Nombre de résultats supérieurs ou égaux à 15.
Exercice n° 14 : C’est un algorithme permet de calculer la somme des heures.
Exercice n° 15 : Ecrire un algorithme permettant de calculer le montant de la prime annuelle pour les Employés tel que: Le
montant = 50% du salaire
+ 2% du salaire pour chaque année de service
- 1% du salaire pour 20 jours d'absence
Exercice n° 16 : Ecrire un algorithme qui permet de lire au clavier le salaire brut d’une employé et en déduire sa retenue de
la CNSS. La retenue de la CNSS est égale à 2,2 % du salaire brut pour un plafond de 5000 DH du salaire brut. NB : Cet
algorithme doit être écrit de telle sorte que l’on ne soit pas obligé de relancer le programme pour chaque employé.
Exemple :
Si salaire = 2500 alors RCNNS = 2500 x 2,2 / 100
Si salaire = 7000 alors RCNNS = 5000 x 2,2 / 100
Exercice n° 17 : Ecrire le programme qui édite la conversion des degrés Celsius en degrés Fareinheit sachant que la formule
de conversion est la suivante : F = 9/5 C + 32. L’utilisateur choisira les bornes.
Exercice n° 18 : Vous devez écrire un algorithme qui permet la saisie des scores de quatre candidats au premier tour. Cet
algorithme traitera ensuite uniquement le candidat numéro 1 : il affichera s’il est élu, battu, s’il se trouve en ballotage
favorable (il participe au second tour en étant arrivé en tête à l’issue du premier tour) ou défavorable (il participe au second
tour sans avoir été en tête au premier tour)
Exercice n° 19 : Ecrire un algorithme permettant d’échanger les valeurs de deux variables A et B, et ce quel que soit leur
contenu préalable.
Une variante du précédent : on dispose de trois variables A, B et C.
Ecrivez un algorithme transférant à B la valeur de A, à C la valeur de B et
à A la valeur de C (toujours quels que soient les contenus préalables de ces variables).
Exercice n° 20 : Traduire par un algorithme le texte suivant : « Dans un magasin, les personnes mariées bénéficient de 5 %
de réduction sur certains articles, alors que les étudiants bénéficient de 10 % »
Abdellah HARCHI
Page 1 sur 4
Algorithme et Langage C
TDI 1ère Année
26/09/2011
Exercice n° 21 : Créer un algorithme puis le programme en langage C demandant à une personne de saisir au clavier son
genre (H/F), sa taille (en cm) et son poids (en Kg) et affichant les messages :
"Vous devriez surveiller votre alimentation" si l’indice de masse corporelle (poids/(taille*taille)) est supérieur ou égal à
25 pour un homme ou 23 pour une femme.
"Vous devriez prendre des forces" s’il est inférieur ou égal à 19 pour un homme ou 18 pour une femme.
"Vous êtes à votre poids de forme" sinon.
Exercice n° 22 : Ecrire un algorithme qui :
• Lit 3 valeurs positives A, B, C en ordre.
• Vérifie si A, B, C forment les trois côtés d’un triangle quelconque, sachant qu’un triangle quelconque vérifie la condition
suivante :
côté1< côté2+côté3 (je suppose que côté1 > côté2 et côté1 > côté3).
Si la condition n’est pas vérifiée alors l’algorithme doit afficher le message: «ce n’est pas un triangle ».
• Si le triangle existe, l’algorithme doit afficher le type du triangle :

Scalène (triangle quelconque sans propriétés particulières)

Rectangle (vérifie le théorème de Pythagore)

Isocèle-Rectangle (vérifie le théorème de Pythagore et les 2 côtés adjacents sont égaux)

Equilatéral (3 côtés égaux).

Isocèle (2 côtés égaux)
Rappel : Le théorème de Pythagore dit que :
Hypoténuse^2 = Adjacent1^2+Adjacent2^2.
Conseil : Penser à déterminer d’abord laquelle des trois valeurs A, B, C est la plus grande.
Exercice n° 23 : Ecrire un algorithme permettant de déterminer le plus petit, le plus grand, la somme, la moyenne et trier 3
nombres entiers.
Exercice n° 24 : Un patron décide de calculer le montant de sa participation au prix du repas de ses employés de la façon
suivante:

S'il est célibataire participation de 20%.

S'il est marié participation de 25%.

S'il a des enfants participation de 10% supplémentaires par enfant.

La participation est plafonnée à 50%.

Si le salaire mensuel est inférieur à 6000f la participation est majorée de 10%.
Écrire le programme qui lit les informations au clavier et affiche pour un salarié, la participation à laquelle il a droit.
Exercice n° 25 : On veut saisir le prix HT d’articles, le type des articles au regard de la TVA (livres, disques, articles
spéciaux ou autres articles) et calculer leur prix TTC, connaissant le taux de TVA associé à chaque type (livres : 5,5 %,
disques : 20,6 %, articles spéciaux: 33,5 %, autres : 20,6 %). On souhaite faire en fin de journée le bilan du nombre
d’articles vendus et des montants HT et TTC totaux et moyens.
On suppose maintenant que chaque taux de TVA est associé à un code connu de l’utilisateur (Ex. livres = 1, disques = 2,
etc.). Améliorer les structures de données de l’exercice précédent pour simplifier l’algorithme.
Exercice n° 26 : Monsieur X est un fonctionnaire dont l’indice est de 500 points. Ecrire l’algorithme qui calcule son salaire
net sachant que la valeur d’un point est de 10.50 Dh et que les retenues représentent 1/10 du salaire brut.
Exercice n° 27 : Ecrire un algorithme qui lit 4 nombres et affiche la valeur du plus grand d’entre eux.
On n’étudie pas toutes les combinaisons mais on compare les maxima de deux couples.
Exercice n° 28 : Ecrire un algorithme qui effectue :
- la demande de prénom de l’utilisateur
- la demande de la date de naissance de l’utilisateur
- la demande de la date de jour.
On considèrera que vous disposez d’une procédure « D » qui transforme une date saisie sous forme d’une chaîne de
caractères en trois entiers : jour, mois et année.
Vous contrôlerez la validité des dates saisies :
- jour compris entre 1 et 31
- mois compris entre 1 et 12
- année inférieure ou égale à 1995.
Si une date n’est pas valide, le programme s’arrête.
Vous calculerez l’âge de la personne (en nombre d’années entières).
De plus, si la date du jour correspond à l’anniversaire de la personne, l’algorithme affichera « joyeux anniversaire » suivi du
prénom.
Exercice n° 29 : Trois entiers positifs a, b, c où a < b < c forment un triplet de Pythagore si a2 + b2 = c2
Etablir un algorithme, qui permet de déterminer si trois nombres quelconques forment bien un triplet de Pythagore?
Exercice n° 30 : Supposons que la cotisation de sécurité sociale soit déduite du salaire d'un employé selon la règle suivante:

Cotisation = 9,75 si célibataire

16,25 si marié sans enfants

24,50 si marié avec enfant
Etablir l'algorithme qui permet de calculer cette cotisation pour un employé déterminé.
Corriger l'exercice précédent (exercice 1) pour que l'on ne soit pas obligé de relancer le programme pour chaque employé
Abdellah HARCHI
Page 2 sur 4
Algorithme et Langage C
TDI 1ère Année
26/09/2011
Exercice n° 31 : La commission d'un employé sur les ventes totales est : si ventes < 50 DH, il n'y a pas de commission ; si
50 DH < ventes < 500 DH, la commission est égale à 10% des ventes ; si ventes > 500 DH, la commission est égale à 50 DH
+ 8% des ventes au-dessus de 500 DH.
Exercice n° 32 : Saisir trois nombres a, b et c et donner les en ordre croissant.
Exercice n° 33 : Lors d’un examen, un candidat a 4 notes d’écrit et 2 notes d’oral. On veut afficher :
- le total de l’écrit ;
- le total de l’oral ;
- le total général ;
Ecrire l’algorithme correspondant sachant que les 6 notes sont lues.
N.B. : Les notes sont exprimées par des nombres.
Exercice n° 34 : Ecrire un algorithme qui demande deux nombres à l’utilisateur et l’informe ensuite si le produit est négatif
ou positif (on inclut cette fois le traitement du cas où le produit peut être nul). Attention toutefois, on ne doit pas calculer le
produit !
Exercice n° 35 : Soit un élevage comportant des poules et des lapins. On désire connaître le capital représenté par
l’ensemble de bêtes, sachant que le nombre des poules, le prix d’une poule, le nombre de lapins et le prix d’un lapin sont des
données.
Ecrire un algorithme qui :
- lit et affiche les données ;
- calcule et affiche le capital ;
- calcule et affiche le nombre total de pattes des animaux de l’élevage.
Exercice n° 36 : Ecrire un algorithme permettant de résoudre une équation de second degré, les données fournies en entrée
sont les coefficients de l’équation tel que :
Equation 2.5 X² -6X +6 =0
En entrée : 2.5
-6
6
En sortie : les solutions de l’équation
Indication ; la racine carrée de x est rac2(x)
Le carrée d’un nombre x est x ^ 2
Exercice n° 37 : Ecrire un algorithme qui demande un nombre à l’utilisateur, et l’informe ensuite si ce nombre est positif ou
négatif (on laisse de côté le cas où le nombre vaut zéro).
Exercice n° 38 : L’entreprise DEBECQ accorde une ristourne annuelle à ses clients selon les conditions suivantes :
Si le chiffre d’affaires annuel est supérieur à 12000 F, la ristourne est de 12%. En deça, le taux de ristourne est nul.
Représenter l’algorithme permettant d’obtenir le montant de la ristourne à accorder à un client.
Exercice n° 39 : Ecrire un programme qui lit le prix HT d’un article, le nombre d’articles et le taux de TVA, et qui fournit le
prix total TTC correspondant. Faire en sorte que des libellés apparaissent clairement.
Exercice n° 40 : Ecrire un algorithme qui demande l’âge d’un enfant à l’utilisateur. Ensuite, il l’informe de sa catégorie :
- « Poussin » de 6 à 7 ans
- « Pupille » de 8 à 9 ans
- « Minime » de 10 à 11 ans
- « Cadet » après 12 ans
Peut-on concevoir plusieurs algorithmes équivalents menant à ce résultat ?
Exercice n° 41 : Les élections législatives dans un pays obéissent à la règle suivante :
o
Lorsque l’un des candidats obtient plus de 50% des suffrages, il est élu dès le premier tour.
o
En cas de deuxième tour, peuvent participer uniquement les candidats ayant obtenu au moins 12,5% des voix au
premier tour.
Exercice n° 42 : Ecrire un algorithme permettant de calculer le montant des frais de déplacement des employés tel que :
Le montant = frais de transport + frais de séjour
Les frais de transport sont :

Si l’employé a utilisé une voiture de service alors il n’a pas droit aux frais de transport

Si il a utilisé sa voiture personnelle alors il reçoit un montant qui dépend de la puissance fiscale du véhicule tel que:
o Entre 1 et 6 cv : 2 Dh /Km
o Entre 7 et 9 Cv : 2.5 Dh /Km
o Plus de 10 Cv : 3 Dh /Km

Si il a utilisé le transport en commun : 1 Dh /Km
Les frais de séjour dépendent de l’échelle de l’employé tel que :
o
Echelle de 1 à 6 : 50 Dh /Jour
o
Echelle de 7 à 9 : 80 Dh //Jour
o
Echelle >=10 : 150 Dh /jour
Données en entées :
o
Le nom de l’employé
o
L’échelle de l’employé
o
Le mode de transport utilisé
o
Si le mode est une voiture personnelle alors le nombre de cv sera demandé
o
Le nombre de jours
o
Le nbre de KM
Abdellah HARCHI
Page 3 sur 4
Algorithme et Langage C
TDI 1ère Année
26/09/2011
Exercice n° 43 : Les établissements DRAGORE accordent à leur client un escompte selon les conditions suivantes :
« Bénéficient d’un escompte de règlement de 2% les clients réglant par chèque ou virement bancaire dans les huit jours de la
réception de la facture ; cette réduction ne s’applique qu’aux factures dont le montant HT est supérieur à 250 F ; par contre,
pour toute facture supérieure à 1000 F, le délai ci-dessus est porté à 12 jours. Dans tous les cas, le droit à escompte n’est
acquis que si le solde du compte du client présente un solde nul lors de l’émission de cette facture.
Travail à faire :
Présenter l’algorithme de calcul de l’escompte à l’aide d’un langage structuré, vous utiliserez les variables suivantes:
- MONTFACT : Montant de la facture
- DTEFAC : Date de la facture
- MONTSOLD : Montant du solde du compte client (avant prise en compte de la facture évidemment)
- ESC: montant de l’escompte
Exercice n° 44 : Les élèves issus de la deuxième année de BEP peuvent, s’ils le désirent, poursuivre leurs études au lycée
technique en classe de première d’adaptation en vue de passer le bac.. La commission chargée d’étudier les dossiers se
réfère au texte ci-après :
« Les candidats âgés de moins de 18 ans auront dû obtenir un avis favorable du conseil des professeurs et bien sûr le BEP.
Toutefois, on pourra réétudier en septembre les dossiers des candidats qui auraient dépassé la limite d’âge (liste
supplémentaire).
Travail à faire :
Présentez en langage structuré la description de l’algorithme de recrutement des candidats de 1ère d’adaptation.
Exercice n° 45 : Ecrire un algorithme permettant de calculer le montant de la prime annuelle pour les employés tel que :
Le montant =50% du salaire
+ 2% du salaire pour chaque année de service
- 1% du salaire pour 20 jours d’absences
Données en entées :
o
Le nom de l’employé
o
Le salaire
o
L’ancienneté
o
Le nombre de jours d’absence
Exemple :
nom : xxxxxxxx
Salaire : 10000
Ancienneté : 10 ans
Nombre de jours d’absence : 45
Le montant de la prime est : 10000 * (50% + 10 * 2% – 2 * 1%)
Exercice n° 46 : Quelles seront les valeurs des variables a et b après exécution des instructions suivantes?
Algo Exo1
A, B : Entier
Début
A5
B A - 15
Si A > 5 Alors
AA–B
B0
Sinon Si B < 0 Alors
BB–A
A0
Sinon
A  -10
B5
FinSi
FinSi
Ecrire (A)
Ecrire (B)
Fin
Exercice n° 47 : Écrire un algorithme permettant la saisie d’une note et son affichage. Afficher en plus un message si la note
est en dessous de la moyenne.
Ajouter à l’algorithme précédent une vérification de la note (nombre compris entre 0 et 20). Une note incorrecte ne doit pas
être affichée (message d’erreur).
Abdellah HARCHI
Page 4 sur 4
Téléchargement