correction tp java
TRANSCRIPT
-
8/17/2019 Correction TP Java
1/2
Correction du TP#3 Introduction to Programming – BECS1 – Laurent Debrauwer
Exercice 1 – Minimum
Ecrire un programme qui calcule le minimum de deux, trois puis quatre nombres entiers.
Solution : le programme utilise une variable min qui contient au fur et à mesure le minimumdes nombres déjà saisis par l’utilisateur.
import j ava. ut i l . *; public class Mi ni mum {
public static void mai n( St r i ng[ ] ar gs) {int nombre, mi n;Scanner r eader = new Scanner ( Syst em. in) ;
Syst em. out. pr i nt l n( "ent r ez l e pr emi er nombr e : " ) ;mi n = r eader . nextI nt ( ) ;
Syst em. out. pr i nt l n( "ent r ez l e deuxi ème nombre : " ) ;nombr e = r eader. next I nt ( ) ;if ( nombr e < mi n) mi n=nombr e;
Syst em. out. pr i nt l n( "ent r ez l e t r oi si ème nombr e : " ) ;nombr e = r eader. next I nt ( ) ;if ( nombr e < mi n) mi n=nombr e;
Syst em. out. pr i nt l n( "ent r ez l e quat r i ème nombr e : " ) ;nombr e = r eader. next I nt ( ) ;if ( nombr e < mi n) mi n=nombr e;
Syst em. out. pr i nt l n( " l e mi ni mumdes quat r e nombes est : "+mi n) ;
}}
Exercice 2 – Année bissextile
Une année bissextile comporte un 29 février. Les années divisibles par 4 sont bissextiles. Il
existe une exception : les années divisibles par 100 ne sont pas bissextiles sauf si elles sont
divisibles par 400.
Ecrire un programme qui détermine si une année est bissextile ou non. Proposer deux
solutions :
-
l’une en imbriquant les tests ;- l’autre sans imbrication.
Solution :
Il faut bien comprendre qu’une année bissextile est :
- soit une année divisible par 400 ;
- soit une année divisible par 4 non divisible par 100.
A partir de là, il est possible d’établir le programme suivant :
page 1
-
8/17/2019 Correction TP Java
2/2
Correction du TP#3 Introduction to Programming – BECS1 – Laurent Debrauwer
import j ava. ut i l . * ; public class Bi ssext i l e {
public static void mai n( St r i ng[ ] ar gs) {Scanner r eader = new Scanner ( Syst em. in) ;
Syst em. out. pr i nt l n( "ent r ez l e pr emi er nombre : " ) ;int annee = r eader . nextI nt ( ) ;
/ / méthode sans i mbr i cat i onif ( ( annee%400==0) | | ( annee%4==0) &&( annee%100! =0) )
Syst em. out. pr i nt l n( "l ' année est bi ssext i l e" ) ;else
Syst em. out. pr i nt l n( "l ' année n' est pas bi ssext i l e" ) ;/ / méthode avec i mbri cat i on
if ( annee%400==0)Syst em. out. pr i nt l n( "l ' année est bi ssext i l e" ) ;
else if ( annee%100==0)
Syst em. out. pr i nt l n( "l ' année n' est pas bi ssext i l e" ) ;else
if ( annee%4==0)Syst em. out. pr i nt l n( "l ' année est bi ssext i l e" ) ;else
Syst em. out. pr i nt l n( "l ' année n' est pas bi ssext i l e" ) ;}
}
Exercice 3 – Calcul de l’impôt sur le revenu des collectivitésL’impôt sur le revenu des collectivités est calculé par tranche :
- 20% sur la tranche des revenus de 0 € à 10 000 € ;
- 26% sur la tranche des revenus de 10001 € à 15000 € ;
- 22% sur la tranche des revenus à partir de 15001 €.
Ecrire un programme qui calcule l’impôt sur le revenu d’une collectivité. Comme dans le cas
précédent, proposer une solution avec imbrication et une autre sans imbrication.
Le programme suivant intègre d’abord une solution avec imbrication puis sans imbrication.
Dans le cas de l’imbrication, l’idée est de calculer progressivement l’impôt sur les tranches
inférieures au revenu puis de calculer le complément sur la dernière tranche
import j ava. ut i l . * ; public class I mpot {
public static void mai n( St r i ng[ ] args) {Syst em. out. pr i nt l ent r ez l e r evenu : " ) ;n( "
Scanner r eader = new Scanner ( Syst em. in) ;int revenu = r eader. next I nt ( ) ;long i mpot;
/ / méthode avec i mbri cat i onif ( r evenu