Exercices de Synthèses Java

5
M3 PROGRAMMATION JAVA SERIE D’EXERCICES SYNTHESES TSDI1 GC CFHN 2006/2007 PAR Mr AZZI 1/5 EXERCICES DE SYNTHESES EN JAVA Exo1 : Écrire un programme qui affiche le salaire brut d’un ouvrier sachant que les heures supplémentaires de 172 heures sont payées à 50% de tarifs d’horaire en plus? Exo2 : Calculer le montant de la facture d’un client ayant commandé une quantité d’un produit avec un prix unitaire hors taxe Le taux de T.V.A est : 20% Les frais de transport sont 0.8 DH de Km , Le client est disposé du frais de transport si le montant est supérieur 4500 DH Exo3 : Une bibliothèque fait des réductions sur l’achat des livres : 25% pour les étudiants. 15% pour les enseignants Écrire un programme qui calcule et affiche le prix à payer selon le type du client? Exo4 : Un patron décide de calculer le montant de la participation au prix du repas de ses employés de la façon suivante : o S’il est célibataire : participation 20% du pris de repas. o S’il est marie : participation 25% du pris de repas. o S’il a des enfants : participation 10% supplémentaire par enfant. La participation est plafonnée à 50%. Si le salaire mensuel est inférieur à 6000 DH, la participation est majorée à 10%. Exo5 : Le représentant d’une société de distribution des produits d’affichage électroniques sont rémunérés de façon suivante : un fixe mensuel de 4000 DH une commission a pourcentage variable sur chaque tranche du chiffre d’affaire mensuel : une commission de 5% pour un chiffre d’affaire compris entre 0 et 1000. une commission de 10% pour un chiffre d’affaire compris entre 1000 et 3000. une commission de 14% pour un chiffre d’affaire supérieur à 3000. Écrire un programmr qui permet de calculer et afficher le montant total de la rémunération de chaque représentant.

Transcript of Exercices de Synthèses Java

Page 1: Exercices de Synthèses Java

M3 PROGRAMMATION JAVA SERIE D’EXERCICES SYNTHESES

TSDI1 GC CFHN 2006/2007 PAR Mr AZZI

1/5

EXERCICES DE SYNTHESES EN JAVA

Exo1 : Écrire un programme qui affiche le salaire brut d’un ouvrier sachant que les heures supplémentaires de 172 heures sont payées à 50% de tarifs d’horaire en plus? Exo2 : Calculer le montant de la facture d’un client ayant commandé une quantité d’un produit avec un prix unitaire hors taxe Le taux de T.V.A est : 20% Les frais de transport sont 0.8 DH de Km , Le client est disposé du frais de transport si le montant est supérieur 4500 DH Exo3 : Une bibliothèque fait des réductions sur l’achat des livres : 25% pour les étudiants. 15% pour les enseignants Écrire un programme qui calcule et affiche le prix à payer selon le type du client? Exo4 : Un patron décide de calculer le montant de la participation au prix du repas de ses employés de la façon suivante : o S’il est célibataire : participation 20% du pris de repas. o S’il est marie : participation 25% du pris de repas. o S’il a des enfants : participation 10% supplémentaire par enfant. La participation est plafonnée à 50%. Si le salaire mensuel est inférieur à 6000 DH, la participation est majorée à 10%. Exo5 : Le représentant d’une société de distribution des produits d’affichage électroniques sont rémunérés de façon suivante : un fixe mensuel de 4000 DH une commission a pourcentage variable sur chaque tranche du chiffre d’affaire mensuel : une commission de 5% pour un chiffre d’affaire compris entre 0 et 1000. une commission de 10% pour un chiffre d’affaire compris entre 1000 et 3000. une commission de 14% pour un chiffre d’affaire supérieur à 3000. Écrire un programmr qui permet de calculer et afficher le montant total de la rémunération de chaque représentant.

Page 2: Exercices de Synthèses Java

M3 PROGRAMMATION JAVA SERIE D’EXERCICES SYNTHESES

TSDI1 GC CFHN 2006/2007 PAR Mr AZZI

2/5

Exo6 : Le service des prêts d’une bibliothèque à adopter le règlement suivant : Tous les lecteurs de la catégorie A peuvent empreinter des livres pour une durée maximale de 20 jours. Un lecteur de la catégorie B peut conserver des livres pour une durée maximale de 30 jours. Un lecteur de la catégorie C peut conserver des livres pour une durée maximale de 45 jours. Aucun lecteur ne pourra avoir en sa possession plus de 5 ouvrages. Écrire un programme qui affiche la durée d’empreinte et est ce qu’il a le droit d’empreinter ? Exo7 : écrire un algorithme qui lit un entier N et imprime N ligne(s) ayant l'allure suivante : * ** *** …. A la ligne i, il y a i étoile(s) Exo8 : écrire un algorithme qui lit un entier N et imprime N ligne(s) ayant l'allure suivante :

* ***

***** ……………..

Exo9 : écrire un algorithme qui lit une chaîne de caractères et imprime des lignes ayant l'allure suivante : T TU TUR TURB TURBO C'est la trace pour chaîne = "TURBO" Exo 10 : Donnez l ‘algorithme qui à partir d ‘un nombre compris entre 1 et 7 imprime le jour correspondant (1 = Dimanche, 2 = Lundi, 3 = Mardi….) Exo11 : On souhaite écrire un programme Java de résolution dans R de l'équation du second degré : Ax2 + Bx +C = 0

Page 3: Exercices de Synthèses Java

M3 PROGRAMMATION JAVA SERIE D’EXERCICES SYNTHESES

TSDI1 GC CFHN 2006/2007 PAR Mr AZZI

3/5

Exo 12 : On dénomme nombre de Armstrong un entier naturel qui est égal à la somme des cubes des chiffres qui le composent. Exemple : 153=13+53+33 153 = 1 + 125 + 27, est un nombre de Armstrong. Exo13 : On souhaite écrire un programme java de calcul des n premiers nombres parfaits. Un nombre est dit parfait s’il est égal à la somme de ses diviseurs, 1 compris. Exemple : 6 = 1+2+3 , est un nombre parfait. Exo 14 : On souhaite écrire un programme de calcul du pgcd de deux entiers non nuls, en Java à partir de l’algorithme de la méthode d'Euclide. Algo Algorithme Pgcd Entrée: a,b N* x N* Sortie: pgcd N Local: r,t N x N début lire(a,b); Si ba Alors t = a ; a = b ; b= t Fsi; Répéter r = a mod b ; a = b ; b = r jusquà r = 0; pgcd a; ecrire(pgcd) FinPgcd class ApplicationEuclide { public static void main(String[ ] args) { …….. } static int pgcd (int a, int b) { //méthode …….. } } La méthode pgcd renvoie le pgcd des deux entiers p et q .

Page 4: Exercices de Synthèses Java

M3 PROGRAMMATION JAVA SERIE D’EXERCICES SYNTHESES

TSDI1 GC CFHN 2006/2007 PAR Mr AZZI

4/5

Exo 15 : On souhaite écrire un programme de calcul du pgcd de deux entiers non nuls, en Java à partir de l’algorithme de la méthode dite "Égyptienne " Voici une spécification de l'algorithme de calcul du PGCD de deux nombres (entiers strictement positifs) p et q. Algo : Lire (p, q ) ; Tantque p q faire Si p > q alors p = p – q sinon q = q – p FinSi FinTant; Ecrire( " PGCD = " , p ) Exo 16 : On souhaite écrire un programme Java de calcul et d'affichage des n premiers nombres premiers. Un nombre entier est premier s’il n’est divisible que par 1 et par lui-même On opérera une implantation avec des boucles while et do...while. Exo17 : On souhaite écrire un programme Java de calcul et d'affichage des n premiers nombres premiers. Un nombre entier est premier s’il n’est divisible que par 1 et par lui-même. On opérera une implantation avec des boucles for imbriquées. Exo18 : Test de pallindrome :vérifier si une chaine de caractères est pallindrome. Première version : Ecrire les méthode compresser et Inverser , La méthode compresser élimine les caractères non recevables comme : blanc, virgule, point et apostrophe de la String s passée en paramètre. La méthode Inverser construira une chaîne locale à la méthode caractère par caractère avec une boucle for à un seul indice. Deuxième version : utiliser un tableau. Exo 19 : Ecrire un programme Java effectuant une recherche séquentielle dans un tableau linéaire (une dimension) non trié. Exo 20 : Ecrire les programmes qui permettent de calculer les sommes suivantes, en utilisant les schémas : pour, tant que et répéter : • S1= 3+6+9+…+n • S2= 2+4+6+…+n • S3=1 !+2 !+3 !+….+n ! • S4=1/1 !+1/2 !+1/3 !+…+1/n ! • S5=n !/((p !*(n-p) !)

Page 5: Exercices de Synthèses Java

M3 PROGRAMMATION JAVA SERIE D’EXERCICES SYNTHESES

TSDI1 GC CFHN 2006/2007 PAR Mr AZZI

5/5

Exo 20 : Compter de 5 en 5 Ecrire un programme qui compte de 5 en 5 de 0 jusqu'à 100 puis affiche la somme des nombres trouvés. Exo 21 : Minimum, maximum et somme Ecrire un programme qui place 3 nombres passés en paramètres dans un tableau, puis calcule et affiche le minimum, le maximum et la somme de ces nombres. Exo 22 : Ecrire un programme qui lit le nombre entier entre 1 et 12 passés en paramètre et qui affiche le nom du mois correspondant. On pourra utiliser un tableau ou l'instruction switch. Exo23 : Concevoir un programme permettant de calculer le salaire net d’un employé sachant que ce dernier et constitué des valeurs suivantes : Le salaire de base (SB), une prime (P), une retenue (R) tel que : SB= nombre d’heures * taux horaire P= taux de prime *SB R= taux de retenue*SB Exo 24: Ecrire un algorithme qui permet de remplir un tableau M de deux dimensions (trois lignes et cinq colonnes) avec les nombres de 1 à 15. Exo 25 : Ecrivez un algorithme qui trie un tableau dans l’ordre décroissant. Vous écrirez bien entendu deux versions de cet algorithme, l'une employant le tri par sélection, l'autre le tri à bulles. Exo 26 : Le président d'un Club sportif a soumis chaque joueur du club à un questionnaire, lui demandant de citer trois de ses coéquipiers qu'il juge les plus utiles pour le club. au point de vue motivation. On propose de stocke les réponses dans des tableaux. Les tableaux doivent contenir comme informations • Le nom du joueur ayant répondu au questionnaire (le nombre des joueurs est 31 ) ; • Les noms des trois joueurs choisis par le précédent. Travail à faire : 1. Déclarer les tableaux nécessaires pour l'application Ecrire les algorithmes permettant de : 2. Saisir le nom et: les réponses de chaque joueur. 3. Chercher et afficher les joueurs ayant choisi un Joueur donné, dont on saisit le nom au clavier. 4. Trier la liste des joueurs par ordre alphabétique 5. Calculer dans un nouveau tableau pour chaque joueur le nombre de votes qu'il a reçus. 6. Trier la liste des joueurs par ordre décroissant du nombre de votes reçus. 7. Afficher la liste des joueurs qui ont reçu plus que 10 votes (Nom joueur. Nombre de votes).