360 likes | 633 Views
COURS DE LOGIQUE DE PROGRAMMATION. 1 ère Multimédia IAD. Professeur: Mauricio Caroca. Introduction. La logique de programmation, pourquoi ?. Elle facilite l’analyse d’un programme. Elle facilite l’écriture du programme. Elle facilite sa compréhension. Exercice 1 :.
E N D
COURS DE LOGIQUE DE PROGRAMMATION 1 ère Multimédia IAD Professeur: Mauricio Caroca
Introduction • La logique de programmation, pourquoi ? • Elle facilite l’analyse d’un programme • Elle facilite l’écriture du programme • Elle facilite sa compréhension
Exercice 1: • A l’aide de votre logique et d’un schéma séquentiel, réalisez une suite d’ instructions à donner au µp pour réaliser la moyenne de trois côtes sur 20, si la moyenne est >10 on imprime « réussi », si elle est < 10 on imprime « à recommencer » et on recommence la séquence jusqu’à la réussite.
Outils : • Les Ordinogrammes • décomposer un programme en différents éléments moins complexes. • Représenter par un schéma le cheminement à imposer au micro-ordinateur
Ordinogramme exercice 1 DEBUT Entrer: a,b,c X = (a+b+c)/3 « à recommencer » non X > 10 oui « reussi » FIN
Les figures utilisées Indique le début, la fin ou l’interruption de la procédure. Indique l’entrée de données ou la sortie de résultats Indique un traitement de données Symbolise une question, un test. Connecteur fin de page Connecteur de flux Direction des flux
Exercice 2 : • Etablissez un ordinogramme permettant à un joueur de trouver un chiffre de 0 à 9 en interrogeant le µp. ce dernier devra répondre « EXACT » en cas de réponse correcte et « TROP GRAND » ou « TROP PETIT » suivant le cas. Le chiffre à trouver est introduit par un autre joueur au début du programme.
Ordinogramme exercice 2 DEBUT Entrer: x Entrer: y « trop grand » « trop petit » oui non non y > x y = x oui « exact » FIN
Récapitulatif • L’analyse d’un programme. • La logique de programmation facilite : • Son écriture. • Sa compréhension. • Les Ordinogrammes: • Représentent un cheminement à imposer au µ-processeur • Décomposer un programme en élements moins complexes.
Exercice 3 Representez le problème suivant sous forme d’ordinogramme : - Détailler la procédure de calcul du salaire net en gérant les heures supplémentaires payées 150% et 200% en sachant que : 1.- Si un employé travaille 40 hrs par semaine ou moins, il est payé au salaire horaire multiplié par le nombre d’heures travaillées. 2.- Si un employé travaille entre 40 et 50 hrs. Par semaine, il est payé au salaire horaire multiplié par 40 hrs. Plus le salaire horaire multiplié par 1,5 et par le nombre d’heures comprises entre 40 et 50 heures par semaine. 3.- Si un employé travaille plus de 50 hrs. Par semaine, il est payé pour chaque semaine au salaire horaire multiplié par deux pour les heures dépassant les 50 hrs hebdomadaires, plus 10 heures à 1,5 fois le salaire horaire, plus 40 fois le salaire horaire par semaine.
Solution exercice 3: Début Nbre d’hrs? oui Paye = Taux horaire * nbre hrs A Hrs < 40 ? non Hrs.supp = 1.5 * (nbre d’hrs – 40)* taux horaire oui Paye = Taux horaire * 40 Tot = Paye + Hrs.supp A Hrs < 50 ? non 1
Solution suite : 1 Paye = Taux horaire * 40 Hrs.supp = 1.5 *10*taux horaire Hrs.supp dble = 2*(nbre d’hrs – 50 )*taux horaire Tot = paye + hrs.supp + hrs.supp dble A Imprimer chéque Fin
Exercice 4 Etablissez l’ordinogramme qui permet d’imprimer le résultat de la factorielle n ( n! = le produit des n premiers nombres)
Solution exercice 4 Début A Entrer N ? Non R=N B R=0 oui Z=1 Imprimer Z B R=R+1 fin Z=Z*R A
Exercice 5 Etablissez l’ordinogramme pour un joueur qui décide de risquer une somme d’argent à la roulette. Il veut jouer dix fois de suite en rajoutant sur la mise précédente le double de celle-ci; imprimer le numéro de la mise, le montant, le total joué. Exemple : Numéro de la mise = 1 Montant de la mise = 100 euro Total joué = 100 euro Numéro de la mise = 2 Montant de la mise = 200 euro Total joué = 300 euro Numéro de la mise = 3 Montant de la mise = 400 euro Total joué = 700 euro
Solution exercice 5 Début A Entrer M ? Z=Z+M Imprimer num. de la mise N N=0 Z=0 Imprimer montant M B N=N+1 Imprimer total joué Z oui A N 10 M=M*2 Non B fin
Exercice 6 Representez l’ordinogramme d’un appel téléphonique à un ami 1.- Supposez que vous n’entendiez pas la tonalité lorsque vous décrochez le combiné. 2.- Supposez que le téléphone de votre ami sonne occupé. 3.- Supposez que votre ami soit chez lui et qu’il réponde. 4.- Supposez que votre ami soit absent. 5.- Supposez que votre ami soit absent, mais que sa mère réponde
Solution exercice 6 Début A Aller au téléphone Décrocher le combiné Non Tonalité ? B racrocher le combiné Oui Composer le numéro Oui occupé ? racrocher le combiné Attendre 10 minutes A Non Pas de réponse ? Oui racrocher le combiné Attendre 2 heures A Non 1
Suite solution : 1 Oui il repond? Parler à votre ami C Non Demander votre ami Oui Est-il Chez lui? Attendre votre ami Parler à votre ami C C Non Racrocher le combiné B Fin
Exercice 7 • Etablissez l’ordinogramme permettant d’une part d’afficher les carrés des nombres de 5 à 10 et ensuite de calculer et afficher le nombre qui est égal à la somme du carré précédent et celui en cours.
Solution exercice 7 A DEBUT N=I*I M=0 Imprimer N I=4 B S=M+N I=I+1 Imprimer S Non A I >10 M=N Oui B FIN
Exercice 8 • Etablissez l’ordinogramme permettant d’obtenir l’intérêt simple d’un capital (C) placé pendant 2,4,6,8,10,12 mois (N) au taux (R). La formule est : I =C*R*N / (12*100) C et R sont introduits en Input. Exemple de présentation : capital = 1000.000 Taux = 7 % Durée = 2 Intérêt = 11.667
Solution exercice 8 A DEBUT N=N+2 INPUT C I = C*R*N / ( 12*100) INPUT R Imprimer Capital = C N=0 B Imprimer Taux = R Non A N = 12 Imprimer Durée = N Oui Imprimer Intérêt = I FIN B
Exercice 9 • Etablissez l’ordinogramme permettant d’entrer uniquement des nombres paires, si ce n’est pas le cas afficher « on ne peut entrer que des nombres paires » si c’est un nombre paire afficher « bravo ».
Solution exercice 9 DEBUT INPUT N N = N - 2 Non « on ne peut entrer que des nombres paires » Oui Non N < 0 N = 0 Oui « Bravo » Fin
exercice 10 • Etablissez l’ordinogramme permettant d’afficher ou imprimer Z en sachant que: - on entre la variable N (seulement nombres paires) - la variable C égale à toutes les factorielles des nombres paires. (en dessous et y compris N) - la variable A égale à toutes les factorielles des nombres impaires (en dessous et y compris N+1). - B = A*A - Z = B – C (« C » étant la factorielle du nombre paire juste précédent A) Exemple • N = 2 • C=2 A = 2*3 = 6 et B = 6*6 =36 Z = 36 – 2 = 34 Afficher « 34 » • N = 4 • Première boucle C=2 A = 2*3 = 6 et B = 6*6 =36 Z = 36-2 = 34 Afficher « 34 » - Deuxième boucle C= 2*3*4 =24 A = 2*3*4*5 = 120 et B = 120*120 =14400 Z = 14400-24 = 14376 Afficher « 14376 »
Solution exercice 10 DEBUT INPUT N W=N Uniquement nombres paires W=W-2 Non Oui Non Oui W = 0 W < 0 1
1 A X = 0 Non X > N Y = 3 U = Y - 1 Oui Fin A = 1 A = A*Y*U C = 1 B=A*A B X = X + 2 Z = B - C T = X - 1 Imprimer Z C = C*X*T Y = Y + 2 A B
Exercice 11 • Faire l’ordinogramme du programme qui permettra de faire la somme du coût des articles achetés dans un magasin ainsi que le payement et le remboursement éventuel sur le montant à payer; le payement peut s’effectuer en liquide ou par carte (Bancontact, proton).
P = Prix article N = Total à payer M = Payement Solution exercice 11 B DEBUT N = 0 Non Non Payement liquide A Bancontact INPUT P Oui Insérer carte PROTON Oui N = N + P Payement =M Composer code R = M - N Encore des articles A Oui Imprimer Ticket Rendre R Non Fin A payer = N Fin 1 B
Suite exercice 11 1 Montant Plus important Non Oui Insérer carte Bancontact Insérer carte Bancontact Composer code (client) Composer code (client) Imprimer Ticket Imprimer Ticket Fin Donner différence Fin
Exercice 12 • On rentre dans un ordinateur 5 nombres quelconques mais différents, veuillez faire l’ordinogramme du programme qui permettra d’afficher les 4 premiers nombres du plus petit au plus grand et le 5ème nombre à la 5ème place. • Exemple : Chiffre 1 = 1500 Chiffre 2 = 300 Chiffre 3 = 700 Chiffre 4 = 1450 Chiffre 5 = 200 Affichage : 300 , 700, 1450, 1500, 200
Solution exercice 12 DEBUT INPUT a,b,c,d,e a Oui 1 Oui b Oui Non c < d a < b b < c Non c Non x = b x = d x = c d b = a d = c c = b e a = x c = x b = x Fin 1 1 1