Pour chacune des classes à concevoir dans les exercices ci-dessous, vous écrirez un programme de test indépendant. Il sera peut-être nécessaire de prévoir des constructeurs et/ou des méthodes supplémentaires pour les affichages.
Exercice 1
On souhaite établir des statistiques à partir de relevés de températures mensuels. On choisit de définir une classe ReleveTemperatures avec les attributs min, max, moy et mois qui indiquent respectivement la température minimale, maximale, moyenne du relevé et le mois durant lequel ce relevé a été effectué.
Question 1 : Programmer la méthode de saisie d'un mois. cette méthode demande à l'utilisateur de saisir un numéro de mois et le prévient si le nombre est inférieur à 1 ou supérieur à 12 et lui demande alors d'entrer à nouveau une valeur. Cette demande est répétée tant que l'entrée est incorrecte.
Question 2 : Programmer la méthode de saisie du relevé. Elle lit le mois, le nombre de températures relevées puis les différentes valeurs du relevé pour en déduire le minimum, le maximum et la moyenne.
Proposition au format txt
Considérons la classe NombreEntier ayant comme attribut un entier valeur. Programmer les méthodes permettant de répondre à chacune des questions suivantes.
Question 1 : Donner la représentation binaire d'un nombre de la classe NombreEntier sous la forme d'une chaîne de caractères.
Question 2 : Calculer le produit de deux nombres de la classe NombreEntier de valeur positive, sans faire appel à l'opérateur de multiplication.
Question 3 : Calculer le quotient q de la division euclidienne de a par b, où a et b sont deux nombres de la classe NombreEntier strictement positifs, en utilisant uniquement les opérateurs d'addition et de soustraction.
Question 4 : L'algorithme de multiplication utilisé dans la question 2 procède par sommes successives. Le produit x*y consiste à sommer y fois la valeur de x. Toutefois, on peut améliorer cet algorithme rudimentaire en multipliant x par deux et en divisant y par deux chaque fois que la valeur de y est paire. Les opérations de multiplication et de division par deux sont des opérations très efficaces puisqu'elles consistent à décaler un bit vers la gauche ou vers la droite. Réaliser ce calcul rapide de produit.
Proposition au format txt
Remarque
Tous les algorithmes permettant de répondre à ces questions ont été écrits dans le module d'"algo". Il s'agit ici simplement de les traduire. Voir ici.
1 commentaire:
Et bien, ça me paraît pas mal du tout pour un début! :)
Keep on movin' kit!
Enregistrer un commentaire