L horaire d arrivée [dt02] - Exercice

Documents pareils
alg - Classes, instances, objets [oo] Exercices résolus

C++ - Classes, instances, objets [oo] Exercices résolus

Analyse des trajectoires acceptables en approche de virage assistance aux conducteurs

Feuille TD n 1 Exercices d algorithmique éléments de correction

M06/5/COMSC/SP1/FRE/TZ0/XX INFORMATIQUE NIVEAU MOYEN ÉPREUVE 1. Mardi 2 mai 2006 (après-midi) 1 heure 30 minutes INSTRUCTIONS DESTINÉES AUX CANDIDATS

Programmation linéaire

CORRECTION EXERCICES ALGORITHME 1

LES OPERATIONS (outils pédagogiques, types d'interventions) Département du Morbihan

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique

Ce document a été mis en ligne par le Canopé de l académie de Montpellier pour la Base Nationale des Sujets d Examens de l enseignement professionnel.

Synthèse «Le Plus Grand Produit»

Continuité et dérivabilité d une fonction

Algorithmique et programmation : les bases (VBA) Corrigé

AVENIR EMPRUNTEUR. Etude Personnalisée. Caractéristiques du (des) prêt(s) Cotisations ASSURE 1 ASSURE 2. Votre conseiller

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

Licence Sciences et Technologies Examen janvier 2010

COMMUNAUTE ECONOMIQUE ET MONETAIRE DE L AFRIQUE CENTRALE LA COMMISSION

Puissances d un nombre relatif

Polynômes à plusieurs variables. Résultant

Examen Médian - 1 heure 30

CA 3000 CA 3000 PROGRAMMATION PAR MINITEL

Cycle d e de f ormation fformation formation en Management de Pro ement de Pro ets selon la méthodologie PMI Tunis 2013

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

REGLEMENT DE CONSULTATION LOCATION ET MAINTENANCE D UNE MACHINE A AFFRANCHIR ET D UNE MACHINE A METTRE SOUS PLI POUR LE SERVICE DU COURRIER

La question est : dans 450 combien de fois 23. L opération est donc la division. Le diviseur. Le quotient

TSTI 2D CH X : Exemples de lois à densité 1

= constante et cette constante est a.

Exprimer ce coefficient de proportionnalité sous forme de pourcentage : 3,5 %

LES PRESTATIONS D ASSURANCE TRAITEMENT (Pour une invalidité de 104 semaines et moins)

Cours 1 : Qu est-ce que la programmation?

Cours d Analyse. Fonctions de plusieurs variables

L exclusion mutuelle distribuée

Masters informatique et MIAGE

1. Structure d'un programme FORTRAN 95

v Sygic, a.s. All rights reserverd. Manuel utilisateur

Formations FH des opérateurs de systèmes de transport à risques

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

UNIVERSITE PARIS 1 PANTHEON SORBONNE

Plan du cours : électricité 1

OFFRE DE FORMATION DANS LE SYSTÈME LMD

FORMATION AU PERMIS D EXPLOITATION DE LICENCES CHRD MODULE 2,5 JOURS * Arrêté d agrément du 07 Avril 2014 : NOR INTD A

Quelques algorithmes simples dont l analyse n est pas si simple

Nous serons heureux de vous y accueillir dans le cas de votre acceptation définitive et de vous souhaiter la bienvenue.

Pour chaque voyage, la meilleure offre

L apprentissage automatique

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

NOUVEAU COMPATIBLE COFRAC. Validez la conformité de vos échantillons en un seul geste. Le tube témoin enregistreur de température

Conditions d usage du service. «MS Dynamics CRM On Demand» V1.4

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12

I. DEFINITION DE NOTRE MISSION

L ensilage de maïs en Ardenne? D un point de vue alimentaire. Isabelle Dufrasne Ferme expérimentale Service de Nutrition FMV Université de Liège

ALLIANCE ASSURANCES TAHKOUT MAHIEDDINE. Police Flotte Automobile N

Présentation de notre solution de formation en ligne

techniques de tirs a l avant - partie 2

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

CHARTE DE MISE A DISPOSITION DES SALLES ET ORGANISATION D EVENEMENTS

Les différents types de données et leurs opérations de base

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

REPERTOIRE DES INTERPRETATIONS DE LA CCT DU SECTEUR SANITAIRE PARAPUBLIC VAUDOIS ETAT au

Utilisation de la Plateforme Office365 et d Oultlook Web App

ENVOI EN NOMBRE DE MESSAGES AUDIO

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

DOSSIER DE CANDIDATURE STAGE PEDAGOGIQUE DE COURTE DUREE BOURSE DE 2 SEMAINES EN FRANCE ÉTUDIANTS ET JEUNES PROFESSEURS

The list of all contracts involving expenditures of more than $ 2,000 concluded with the same contractor for a total exceeding $25,000

Représentation des Nombres

A V A N T A G E S E N N A T U R E F R A I S P R O F E S S I O N N E L S Bases de cotisations Sécurité Sociale. au 1er janvier 2013

LE TEMPS PARTIEL THÉRAPEUTIQUE? SALARIÉS, MÉDECINS, EMPLOYEURS En toute concordance!

Fiche d animation n 1 : Pêle-mêle

Plan du cours Cours théoriques. 29 septembre 2014

- Les établissements publics à caractère industriel et commercial

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

C f tracée ci- contre est la représentation graphique d une

LES STAGIAIRES. 1. Qui sont les «stagiaires» au sens de la réglementation?

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Conception des systèmes répartis

Application 1- VBA : Test de comportements d'investissements

UNIVERSITE PARIS 1 PANTHEON SORBONNE

Qu est-ce que VMIgreenlight? Solution de Gestion de Flotte facile et économique

CONVENTION DE STAGE SALARIÉ

- affichage digital - aiguille

Exemple de protocole d'accord Secteur privé.

Responsabilité Civile et Pénale du chef d entreprise. Association Sécurité Routière en Entreprises de Maine et Loire.

Schéma National de Formation des Sapeurs-Pompiers

Comparaison de fonctions Développements limités. Chapitre 10

Plus courts chemins, programmation dynamique

Technique opératoire de la division (1)

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Les problèmes de la finale du 21éme RMT

RISQUES CHIMIQUES Niveau 2 Agrément UIC n 01/95

Correction du baccalauréat ES/L Métropole 20 juin 2014

Jean-Philippe Préaux

Par combien de zéros se termine N!?

Cryptographie et fonctions à sens unique

EPFL TP n 3 Essai oedomètrique. Moncef Radi Sehaqui Hamza - Nguyen Ha-Phong - Ilias Nafaï Weil Florian

G TRAVAUX DE MENUISERIE

Transcription:

L horaire d arrivée [dt02] - Exercice Karine Zampieri, Stéphane Rivière, Béatrice Amerein-Soltner Unisciel algoprog Version 10 avril 2015 Table des matières 1 L horaire d arrivée / pg-horairea1 (alg) 1 1.1 Décomposition du problème......................... 1 1.2 Procédure saisirhms (saisie vérifiée d un moment)............. 2 1.3 Fonction nsecondes (équivalent secondes d un moment).......... 3 1.4 Procédure calculerhms (moment issu de secondes)............ 3 1.5 Procédure afficherhms (affichage d un moment).............. 4 1.6 Programme principal............................. 5 1 L horaire d arrivée / pg-horairea1 (alg) Mots-Clés Dates et Heures, Algorithmique, Programmation, C++. Requis Structures de base, Structures conditionnelles, Algorithmes paramétrés. Cet exercice reprend l exercice @[L horaire d arrivée] en réalisant une décomposition en procédures et fonctions. 1.1 Décomposition du problème L exercice @[L horaire d arrivée] demande un horaire de départ hms (heure, minutes, secondes) et la durée d un trajet hms, puis calcule et affiche l horaire d arrivée hms. Algorithme initial Constante NSECONDES <- 60 Constante NMINUTES <- 60 Constante NSECSHEURE <- NSECONDES * NMINUTES Algorithme pg_horaire1 Variable hr, mn, ss : Entier 1

Unisciel algoprog L horaire d arrivée / dt02 2 Variable nsecs, nduree : Entier Début Afficher ( "Horaire de départ (h m s)? " ) Saisir ( hr, mn, ss ) nsecs <- ( hr * NMINUTES + mn ) * NSECONDES + ss Afficher ( "Durée du trajet (h m s)? " ) Saisir ( hr, mn, ss ) nduree <- ( hr * NMINUTES + mn ) * NSECONDES + ss nsecs <- nsecs + nduree hr <- DivEnt ( nsecs, NSECSHEURE ) nsecs <- nsecs - hr * NSECSHEURE mn <- DivEnt ( nsecs, NSECONDES ) nsecs <- nsecs - mn * NSECONDES ss <- nsecs Afficher ( "Vous arrivez à ", hr, " h ", mn, " m ", ss, " s" ) Fin Exemple d exécution (Avec cet algorithme) Horaire de départ (h m s)? 5 20 30 Durée du trajet (h m s)? 1 52 41 Vous arrivez à 7 h 13 m 11 s Soient les versions téléchargeables de programmes. alg @[pg-horaire1.alg] Proposez une décomposition en procédures et fonctions. Les procédures et fonctions qui sont intéressantes ici sont : Une procédure saisirhms qui saisit un moment hms (heures, minutes, secondes). Une fonction nsecondes qui calcule l équivalent secondes d un moment hms depuis minuit. Une procédure duale calculerhms qui à partir d un nombre de secondes calcule le moment hms. Une procédure afficherhms qui affiche un moment hms. 1.2 Procédure saisirhms (saisie vérifiée d un moment) Un moment (h, m, s) est valide si : L heure h est dans [0..24[ Les minutes m dans [0..60[ Et les secondes s dans [0..60[

Unisciel algoprog L horaire d arrivée / dt02 3 Écrivez une fonction horaire(hr,mn,ss) qui teste et renvoie Vrai si un triplet d entiers (hr,mn,ss) représente un moment, Faux sinon. Déduisez une procédure saisirhms(hr,mn,ss) qui demande une heure dans hr (entier), des minutes dans mn (entier) et des secondes dans ss (entier) jusqu à ce que le triplet (hr,mn,ss) soit un moment (heures, minutes, secondes). Affichez l invite : h m s? Validez votre fonction et votre procédure avec la solution. alg @[saisirhmsa1.alg] 1.3 Fonction nsecondes (équivalent secondes d un moment) Écrivez une fonction nsecondes(hr,mn,ss) qui calcule et renvoie l équivalent secondes d un triplet d entiers (hr,mn,ss) représentant un moment (heures, minutes, secondes) par rapport à minuit. Exemple : nsecondes(10,12,58) ==> (10 * 60 + 12) * 60 + 58 Aide simple L expression convertit les heures en minutes et les minutes en secondes. Validez votre fonction avec la solution. alg @[nsecondesa1.alg] 1.4 Procédure calculerhms (moment issu de secondes) Soit un moment exprimé en (heures, minutes, secondes). Comment pouvez-vous calculer le moment correspondant à un «nombre de secondes»? Exemple : nsecs=6761 nombre de secondes correspondent à hr=1 heure, mn=52 minutes et ss=41 secondes : 6761 = (1 * 60 + 52) * 60 + 41

Unisciel algoprog L horaire d arrivée / dt02 4 Il suffit de réaliser deux divisions euclidiennes avec reste pour obtenir d abord les secondes, puis les minutes et enfin les heures. On peut également procéder dans l autre sens : d abord calculer les heures, puis les minutes et les secondes. Effectuez les calculs pour 6761 secondes. 6761 correspond à ss = nsecs mod 60 = 41 secondes. Il reste alors nsecs = 6761-41 = 6720 (à décomposer en minutes, heure). 6720 correspond à mn = (nsecs div 60) mod 60 = 52 minutes. Il reste nsecs = 6720-52*60 = 6720-3120 = 3600 (à décomposer en heure). 3600 correspond à hr = nsecs / 3600 = 1 heure. Et dans l autre sens : hr = nsecs div (60*60) = 1 heure. mn = (nsecs mod (60*60)) div 60 = 52 minutes. ss = nsecs mod 60 = 41 secondes. Écrivez une procédure calculerhms(nsecs,hr,mn,ss) qui, étant donné un nombre de secondes nsecs (entier), calcule et restitue le moment équivalent (heures, minutes, secondes) dans un triplet d entiers (hr,mn,ss). Validez votre procédure avec la solution. alg @[calculerhmsa1.alg] Commentaires La fonction définit des constantes locales SECS_PAR_MINUTE (nombre de secondes par minute) et SECS_PAR_HEURE (nombre de secondes par heure) pour des questions de lisibilité (et de pédagogie). Il n est pas nécessaire de procéder ainsi, le code étant très court. 1.5 Procédure afficherhms (affichage d un moment) Écrivez une procédure afficherhms(hr,mn,ss) qui affiche le moment d un triplet d entiers (hr,mn,ss) sous le format suivant (où [x] désigne le contenu de x) : [hr] h [mn] m [ss] s Validez votre procédure avec la solution.

Unisciel algoprog L horaire d arrivée / dt02 5 alg @[afficherhmsa1.alg] 1.6 Programme principal Ce problème ré-écrit un algorithme en utilisant les procédures et fonctions. Écrivez un algorithme qui demande un horaire de départ dans un triplet d entiers hr, mm, ss. Calculez dans nsecs (entier) l équivalent en secondes. Demandez la durée du trajet dans hr, mm, ss. Calculez dans nsecs l équivalent en secondes de l horaire d arrivée. Calculez dans hr, mm, ss l horaire d arrivée. Affichez l horaire d arrivée. Validez algorithme avec la solution. alg @[pg-horairea1.alg]