BEBUTANT JAVA

962 views
812 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
962
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
82
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

BEBUTANT JAVA

  1. 1. JAVAJoseph HOUNGBEMEviolonjo@gmail.comHOUNGBEME Joseph http://master1istri.blogspot.com/ 1
  2. 2. SommaireI-Petite programme en javaMini projet 1Java 0 : On veut afficher notre premier programmeJava 1 Nombre entier inférieur à 15Java 2 -0 Nombre paire inférieure à 20Java 2 Nombre paire inférieure à 20Java 3 Nombre impaire inférieure ou égale à 18Java 3 lire les entrés du clavierJava 4 Un nombre entier puis les 10 nombre suivantJava 5 CALCULE DU IMC (indice de masse corporelle )Java 6 Somme et Produit de deux entierJava 7Java 8 constantes maths;Exercice 1Exercice 2Exercice 3Montant payable II - Résume java niveau 1  Mini exercices solution 1  Mini exercices solution 2A - Conversion dhorloge javaB - Comparaison par min maxC - Montant en lettreB - Equation du 2ème degré.III - J2EE - Java 2 Enterprise Edition  Java Framework  Introduction à J2EE  Les API de J2EE  Les composants  Les servicesHOUNGBEME Joseph http://master1istri.blogspot.com/ 2
  3. 3. PETITE PROGRAMME EN JAVA BEBUTANT0° afficher Bonjour le monde !1° Un programme qui affiche les nombres entiers inférieure à15 ligne par ligne2° Un programme qui affiche les nombres pairs inférieurs a20 ligne par ligne3° Un programme qui affiche les nombresimpaire ne dépassant pas 18 linge par ligne4° Programme qui saisit un nombre entier puis affiche les 10nombre suivant5 ° Programme qui calcule lindice de masse corporelleIMC dun individus6 ° Programme qui saisit deux nombre entier puis affiche leursomme , leur produit7 ° Programme qui saisit un entier puis affiche : sa moitié,son carré, puis son double .8 ° Afficher la valeur de pi. valeur dexponentielle de sinus45 de cosinus 10 racine carrée de 10 de 10 puissance 5 dela partie entière 5HOUNGBEME Joseph http://master1istri.blogspot.com/ 3
  4. 4. RéponsesJutilise netbeansJava 0 : On veut afficher notre premier programmepackage bonjourmonde;public class BonjourMonde { public static void main(String[] args) { System.out.println("Bonjour le Monde !"); }}run:Bonjour le Monde !BUILD SUCCESSFUL (total time: 0 seconds)Noter que sans " ln " on ira pas à la ligne suivanteJava 1 Nombre entier inférieur à 15for (initialisation; condition; modification) { ...//Code à exécuter dans la boucle} for(int i=0; i<15 ;i++ ) { System.out.println(i); }HOUNGBEME Joseph http://master1istri.blogspot.com/ 4
  5. 5. 01234567891011121314BUILD SUCCESSFUL (total time: 0 seconds)Java 2 -0 Nombre paire inférieure à 20public static void main(String[] args) { for(int i=0; i<20;i=i+2 { System.out.println("Nombre paire " +i); }run:Nombre paire 0Nombre paire 2Nombre paire 4Nombre paire 6Nombre paire 8Nombre paire 10Nombre paire 12Nombre paire 14Nombre paire 16Nombre paire 18BUILD SUCCESSFUL (total time: 0 seconds)HOUNGBEME Joseph http://master1istri.blogspot.com/ 5
  6. 6. Java 2 Nombre paire inférieure à 20int i; for (i=0;i<20;i++) {if(i%2==0) System.out.println(+i); }run:Nombre paire 0Nombre paire 2Nombre paire 4Nombre paire 6Nombre paire 8Nombre paire 10Nombre paire 12Nombre paire 14Nombre paire 16Nombre paire 18BUILD SUCCESSFUL (total time: 0 seconds)Java 3 Nombre impaire inférieure ou égale à 18for(int i=0;i<=18;i=i++) { if(i%2!=0) System.out.println("Nombre impaire " +i); }run:135HOUNGBEME Joseph http://master1istri.blogspot.com/ 6
  7. 7. 7911131517BUILD SUCCESSFUL (total time: 0 seconds)Java 3 lire les entrés du clavier public static void main(String[] args){ System.out.println("Entrer un nom "); Scanner mot = new Scanner(System.in); String str = mot.nextLine(); System.out.println("Entrer le nombre "); int in = mot.nextInt(); System.out.println("vous avez bien entrez " +str + " est le numero N°" +in ); }run:Entrer un nomviolonjoEntrer le nombre1vous avez bien entrez violonjo est le numero N°1BUILD SUCCESSFUL (total time: 12 seconds)Java 4 Un nombre entier puis les 10 nombre suivant public static void main(String[] args) { System.out.println("Entrer le nombre entier"); Scanner nbr = new Scanner(System.in); int in = nbr.nextInt(); for(int i = 1; i <=11; i++)HOUNGBEME Joseph http://master1istri.blogspot.com/ 7
  8. 8. System.out.println(+in+i ); }RUNEntrer le nombre entier202122232425262728293031BUILD SUCCESSFUL (total time: 6 seconds)INTROif (boolean) { ...//Code à exécuter dans la condition}else if (boolean) { ...//Code à exécuter si la première condition est fausse et la deuxième vraie}else { ...//Code à exécuter si les précédentes conditions ne sont pa vérifiées}HOUNGBEME Joseph http://master1istri.blogspot.com/ 8
  9. 9. Java 5 CALCULE DU IMC (indice de masse corporelle )package imc;import java.util.Scanner;public class Imc { public static void main(String[] args) { System.out.println("-----------------------------------------------------------"); System.out.println(" Calulez votre indice corporelle(IMC) "); System.out.println("----------------------------------------------------------"); System.out.println("Donnez votre poids en kg: "); Scanner kg =new Scanner (System.in); double k = kg.nextDouble(); System.out.println("Donnez votre taille en metre: "); Scanner metr =new Scanner (System.in); double m = metr.nextDouble(); System.out.println("Votre indice corporelle IMC est ="+k/(m*m)); if (k/(m*m) <= 16.5) System.out.println(" grave!!!! quelle Dénutrition!"); if (k/(m*m)>16.5&&k/(m*m)<=18.5 )HOUNGBEME Joseph http://master1istri.blogspot.com/ 9
  10. 10. System.out.println("vous étes Maigre!!!!!"); if (k/(m*m)>18.5&&k/(m*m)<=25 ) System.out.println("Bon super !!!! Corpulence normale!"); if (k/(m*m)>25&&k/(m*m)<=30 ) System.out.println(" ehh !!!!Surpoids!"); if (k/(m*m)>30&&k/(m*m)<=35) System.out.println("Obésité modérée!"); if (k/(m*m)>35) System.out.println("Obésité morbide ou massive!"); }}run:------------------------------------------- Calulez votre indice corporelle (IMC)-------------------------------------------Donnez votre poids en kg:80Donnez votre taille en metre:1,80Votre indice corporelle IMC est = 24.691358024691358Bon super !!!! Corpulence normale!BUILD SUCCESSFUL (total time: 6 minutes 55 seconds)Java 6 Somme et Produit de deux entier public static void main(String[] args) { System.out.println("Premier entier "); Scanner ent1 = new Scanner(System.in);HOUNGBEME Joseph http://master1istri.blogspot.com/ 10
  11. 11. int i = ent1.nextInt(); System.out.println("Deuxième entier "); Scanner ent2 = new Scanner(System.in); int e = ent2.nextInt(); int som = i+e; int prod = i*e; System.out.println("somme de "+ i +" + "+ e + " = "+som ); System.out.println("produit de "+ i + " * "+ e + " ="+prod ); }run:Premier entier12Deuxième entier14somme de 12 + 14 = 26produit de 12 * 14 = 168BUILD SUCCESSFUL (total time: 4 seconds)Java 7 public static void main(String[] args) { System.out.println("Saisie un nombre entier "); Scanner ent = new Scanner(System.in); double i = ent.nextDouble(); System.out.println("moitié = "+i/2+"ncarré ="+i*i+"ndouble = "+i*2);HOUNGBEME Joseph http://master1istri.blogspot.com/ 11
  12. 12. run:Saisie un nombre entier9moitié = 4.5carré = 81.0double = 18.0BUILD SUCCESSFUL (total time: 3 seconds)Java 8package constantesmaths;public class ConstantesMaths { public static void main(String[] args) { System.out.println("valeur depi................................. = " + Math.PI); System.out.println("valeur de lexponentielle.......... = " + Math.E); System.out.println("valeur de sinus 45......................= " + Math.sin(45)); System.out.println("valeur de cosinus 10..................= " + Math.cos(10)); System.out.println("valeur de racine carrée de 10....=" + Math.sqrt(10)); System.out.println("valeur de 10 puissance5............= " + Math.pow(10,5)); System.out.println("valeur de la partie entière5.......= " + Math.ceil(5)); }}run:valeur de pi................... = 3.141592653589793valeur de lexponentielle ..... = 2.718281828459045valeur de sinus 45 .............= 0.8509035245341184valeur de cosinus 10 ...........= -0.8390715290764524valeur de racine carrée de 10...= 3.1622776601683795valeur de 10 puissance 5........= 100000.0valeur de la partie entière 5...= 5.0BUILD SUCCESSFUL (total time: 0 seconds)HOUNGBEME Joseph http://master1istri.blogspot.com/ 12
  13. 13. II-MINI PROJET 1 Exercice 1Un vendeur de boisson vend des fanta et des malta au prix de225 la fanta et 300 la malta. Dans la journée , il vend Xfanta et Y malta. Ecrire un programme java qui affiche le chiffre daffairefanta, le chiffre daffaire malta ,le chiffre daffairetotale des boissons vendues.Il doit payer à létat une taxe de 18% du montant de sesventes, afficher le montant payé à létat ainsi que lebénéfice réalisé dans la journée NB CA FANTA : XXXXXX CA MALTA : XXXXXX CA TOTAL : XXXXXX Mt ETAT : XXXXXX BENEFICE : XXXXXX CA chiffre daffaire X nombre de fanta et Y nombre de malta vendu : à votrechoix Exercice 2Initialiser deux variables , x et y ,x à 2.0 et y à 3.0HOUNGBEME Joseph http://master1istri.blogspot.com/ 13
  14. 14. Ecrire un programme Java qui calcule.  Le produit des 2 variables,  Sinus (a+b),  a à la puissance b. Exercice 3A) Quaffiche lextrait de ce code ? Sans saisir le programme for(int i = 0; i < 6; 1+=2) { System.out.println("Java");}B) Ecrire un programme qui affiche lalphabet de Z à A1) En utilisant la boucle for2) En utilisant la boucle while3) En utilisant la boucle do...while ...HOUNGBEME Joseph http://master1istri.blogspot.com/ 14
  15. 15. RéponsesExercice 1package boutique;import java.util.Scanner;public class Boutique { public static void main(String[] args) { System.out.println("Donnez le nombre de fanta venduTTC"); Scanner fanta = new Scanner(System.in); int nbrf = fanta.nextInt(); int pfanta = 225; double resultatCAF = (double)(pfanta*nbrf); System.out.println("Donnez le nombre de malta venduTTC");HOUNGBEME Joseph http://master1istri.blogspot.com/ 15
  16. 16. Scanner malta = new Scanner(System.in); int nbrm = malta.nextInt(); int pmalta = 300; double resultatCAM = (double)(pmalta*nbrm); System.out.println("Votre CA FANTA TTCest:"+resultatCAF+"f"); System.out.println("Votre CA MALTA TTCest:"+resultatCAM+"f"); double resultatCAT =(double)(resultatCAF+resultatCAM); System.out.println("Votre CA TOTAL TTCest:"+resultatCAT+"f"); double mtetat = (double)((18*resultatCAT)/100); System.out.println("Votre taxe TVA :MT ETAT"+mtetat+"f "); double benef = (double)(resultatCAT+mtetat); System.out.println("Votre reste Totale"+benef+"f"); }}HOUNGBEME Joseph http://master1istri.blogspot.com/ 16
  17. 17. run:Donnez le nombre de fanta vendu TTC50Donnez le nombre de malta vendu TTC90Votre CA FANTA TTC est:11250.0fVotre CA MALTA TTC est:27000.0fVotre CA TOTAL TTC est:38250.0fVotre taxe TVA :MT ETAT 6885.0fVotre reste Totale 45135.0fBUILD SUCCESSFUL (total time: 1 minute 0 seconds) Exercice 2public static void main(String[] args) { double x = 2.0, y = 3.0; double prod = (double)(x * y); System.out.println("les variables initialisées sont x= 2.0 et y = 3.0 : "); System.out.println("le produit des variables x et yest: "+prod); System.out.println("valeur de sinus(x+y) = " +(((Math.sin(x))*(Math.cos( y)))-((Math.cos(x))*(Math.sin(y)))) ); System.out.println("x à la puissance y =" +Math.pow(x, y)); }run:les variables initialisées sont x = 2.0 et y = 3.0 :le produit des variables x et y est: 6.0valeur de sinus(x+y) = -0.8414709848078964x à la puissance y =8.0BUILD SUCCESSFUL (total time: 1 second)HOUNGBEME Joseph http://master1istri.blogspot.com/ 17
  18. 18. Exercice 3A)javajavajavaB)1) En utilisant la boucle forchar c; for(c=Z;c>=A;c--) { System.out.println(c); }2) En utilisant la boucle while char c=Z; do { System.out.println(c); c--; }HOUNGBEME Joseph http://master1istri.blogspot.com/ 18
  19. 19. while(c>=A);3) En utilisant la boucle do...while ...char c =Z; while (c>=A) { System.out.println(c); c--; }HOUNGBEME Joseph http://master1istri.blogspot.com/ 19
  20. 20. Montant payableObjectif Ce projet a pour objectif dafficher le montant payabledans une banque ou autre : soit la fin du montant 0 ou 5Raison Du fait que sur les factures, nous avons des montantsdont 101 f certain clients , en remettant 105 f veulentà tout prix avoir leur reliquat de 4 f ou dautre danscasProblème Quelque solution proposez vous afin de palier ce problème Afficher le montant totale Afficher le montant payable Solution dans la programmation javapackage payarrondie;import java.util.Scanner;public class Payarrondie { public static void main(String[] args) { System.out.println("Saisir le premier montant"); Scanner nbr1 = new Scanner (System.in); double mt1 = nbr1.nextDouble();HOUNGBEME Joseph http://master1istri.blogspot.com/ 20
  21. 21. System.out.println("Saisir le deuxième montant"); Scanner nbr2 = new Scanner (System.in); double mt2 = nbr2.nextDouble(); double mt = (double)(mt1+mt2); System.out.println("Le montant totale est "+mt); if ((mt%10)>0 && (mt%10)<5) { double map =(mt+5)-(mt%10); System.out.println("-------------------------------- "); System.out.println(" Le montant payable est "+map); System.out.println("--------------------------------- "); } if ((mt%10)>5) { double map = (mt+10)-(mt%10); System.out.println("-------------------------------- "); System.out.println(" Le montant payable est "+map); System.out.println("--------------------------------- "); } }}HOUNGBEME Joseph http://master1istri.blogspot.com/ 21
  22. 22. run:Saisir le premier montant100Saisir le deuxième montant101Le montant totale est 201.0-------------------------------- Le montant payable est 205.0---------------------------------BUILD SUCCESSFUL (total time: 9 seconds)run:Saisir le premier montant104Saisir le deuxième montant102Le montant totale est 206.0-------------------------------- Le montant payable est 210.0---------------------------------BUILD SUCCESSFUL (total time: 34 seconds)HOUNGBEME Joseph http://master1istri.blogspot.com/ 22
  23. 23. RESUME JAVA NIVEAU 1 Mini Exercices 1 aHOUNGBEME Joseph http://master1istri.blogspot.com/ 23
  24. 24. bHOUNGBEME Joseph http://master1istri.blogspot.com/ 24
  25. 25. Le lien entre les questionnaires abc package mimiex; import java.util.Scanner; public class Mimiex { public void nbreDepiece(int mt, int p){ int nb=(mt/p); System.out.println("Il ya "+nb+" pièces"); } public static void main(String[] args) { Scanner sc=new Scanner(System.in); int nb,mt,p1=250,p2=200,p3=100,p4=50,p5=25,p6=10,p7=5,operateur; Double a=50.0,b=100.0,j,x,y,z,som,prod,sous,div,mod; System.out.println("1: Initialiser"); System.out.println("2: Calcule et Affichage"); System.out.println("3: Rendre de la monnaie"); System.out.print("Votre choix svp :"); operateur=sc.nextInt(); switch(operateur) { case 1: j=b-2*a; try { System.out.println(a/j); } catch(ArithmeticException k) { System.out.println("impossible de continuer"); } System.out.println("mon exception java"); break;HOUNGBEME Joseph http://master1istri.blogspot.com/ 25
  26. 26. case 2: System.out.print("donner la valeur de x= "); x=sc.nextDouble(); System.out.print("donner la valeur de y= "); y=sc.nextDouble(); som=x+y; System.out.println("La somme egal à ="+som); prod=x*y; System.out.println("Le produit egal à ="+prod); sous=x-y; System.out.println("La soustraction egal à ="+sous); if(y!=0){ div=x/y; mod=x%y; System.out.println("La division egal à :"+div); System.out.println("Le reste de la division entière egal à:"+mod); } else System.out.println("Impossible de diviser par zero"); break; case 3:System.out.print("Donnez un montant stp:"); mt=sc.nextInt(); nb=(mt/p1); System.out.println("Il ya "+nb+" pièces de 250 Francs"); nb=(mt/p2); System.out.println("Il ya "+nb+" pièces de 200 Francs"); nb=(mt/p3); System.out.println("Il ya "+nb+" pièces de 100 Francs"); nb=(mt/p4); System.out.println("Il ya "+nb+" pièces de 50 Francs"); nb=(mt/p5); System.out.println("Il ya "+nb+" pièces de 25 Francs"); nb=(mt/p6); System.out.println("Il ya "+nb+" pièces de 10 Francs"); nb=(mt/p7); System.out.println("Il ya "+nb+" pièces de 5 Francs"); break; default : System.out.println("cette opérateur inconnuen"); } } }HOUNGBEME Joseph http://master1istri.blogspot.com/ 26
  27. 27. run Ma FactureVous êtes chargé de réaliser une petite application qui saisit lenom dun produit , sa quantité , son prix unitaire.Calcule et affiche le montant hors taxe (mthva) le montant dela tva (mtva) le net à payer le montant payable sachant quonapplique une remise de 5% aux clients dont lemontant dépasse 50 000 francsHOUNGBEME Joseph http://master1istri.blogspot.com/ 27
  28. 28. Solution dans la programmation javajutilise netbeanspackage facturation;import java.util.Scanner;/* * @author jo */public class Facturation { public static void main(String[] args) { int qte; String design =""; double pu; double mht,mtva,nap,rem,map; System.out.println("-------------------------------------"); System.out.println(" Marché deFacturation "); System.out.println("-------------------------------------");HOUNGBEME Joseph http://master1istri.blogspot.com/ 28
  29. 29. Scanner nbr=new Scanner(System.in); System.out.println("Désignation de produit "); design=nbr.next(); System.out.println("Quantité du produit "); qte=nbr.nextInt(); System.out.println("Prix unitaire du produit"); pu=nbr.nextInt(); mht=pu*qte; mtva=(mht*18)/100; map=mht+mtva; System.out.println("Montant hors taxe.....="+mht); System.out.println("Montant de la tva.....="+mtva); if(map<50000.0) { if ((map%10)>0 && (map%10)<5) { nap =(map+5)-(map%10); System.out.println("Votre achat ne dépasse pas50000 fr"); System.out.println("Montant net a payer... =HOUNGBEME Joseph http://master1istri.blogspot.com/ 29
  30. 30. "+map);// cest le montant le totale System.out.println("Montant payable... ="+nap);// on rend le mont montant payable soit 0 ou 5 } else if ((map%10)>5) { nap = (map+10)-(map%10); System.out.println("Remise à plus de 50000fr dachat"); System.out.println("Montant totale... ="+map);// cest le montant le totale System.out.println("Montant payable (nep)...= "+nap);// on rend le mont montant payable soit 0 ou 5 } else if(map>50000.0) { System.out.println("Vous avez une remise de5%"); rem=(map*5)/100; nap=map-rem; if ((map%10)>0 && (map%10)<5) { nap =(map+5)-(map%10); System.out.println("La remise est.........="+rem); System.out.println("Montant totale...=HOUNGBEME Joseph http://master1istri.blogspot.com/ 30
  31. 31. "+nap); System.out.println("Montant payable(nep)... = "+nap);// on rend le mont montant payablesoit 0 ou 5 } else if ((map%10)>5) { nap = (map+10)-(map%10); System.out.println("La remiseest.........= "+rem); System.out.println("Montant totale...="+nap); System.out.println("Montant payable(nep)... = "+nap);// on rend le mont montant payablesoit 0 ou 5 } } } } }HOUNGBEME Joseph http://master1istri.blogspot.com/ 31
  32. 32. Equation du 2ème degré.Algorithme pour résoudre léquation du deuxième degré: ax2 + bx + c = 0Si a = 0, on se ramène à une équation du premier degré.Si a est différent de 0, on calcule le discriminant Delta = b2 - 4 * a * c si Delta>0 léquation a 2 racines réelles distinctesque lon calcule avec (-b+ Delta)/(2*a) et (-b- Delta)/(2*a) si Delta=0, les 2 formules ci-dessus sont encorevalables et fournissent 2 valeurs égales -b/(2*a) si Delta<0, les 2 formules contenant Delta ne sont plus valables dans les réels et il faut passerdans lensemble des nombres complexes pour obtenir des réponses -b/(2*a) +i -Delta /(2*a) -b/(2*a) -i -Delta /(2*a) NOTE: i est un symbole tel que 2i =-1 Solution dans la programmation javaHOUNGBEME Joseph http://master1istri.blogspot.com/ 32
  33. 33. jutilise netbeanspackage equation;import java.util.Scanner;/** * * @author jo */public class Equation { public static void main(String[] args) { System.out.println(" Resolveur dEquation duSecond dégrern -------------------------------------" ); Scanner nbr=new Scanner(System.in); double a,b,c,X1,X2,delta; System.out.println(" Valeur de a"); a=nbr.nextDouble(); System.out.println(" Valeur de b"); b=nbr.nextDouble(); System.out.println(" Valeur de c"); c=nbr.nextDouble(); System.out.println(" léquationf(x)="+a+"x²+"+b+"y+"+c); System.out.println("----------------- Résolution----------------- ");HOUNGBEME Joseph http://master1istri.blogspot.com/ 33
  34. 34. if(a==0) { System.out.println("Equation du premier Dégrer"); if(b==0) { System.out.println("Cest une constante f(x)="+c); } else{ System.out.println("Cest une fonction affine f(x) ="+b+"x + "+c+"net x = "+ -c/b); } } if(a!=0) { delta=(b*b)-4*a*c; if(delta>0) {//printf("il y a deuxracinesdistincts.n",X1,X2), X1=((-b-Math.sqrt(delta)/2*a)); X2=((-b+Math.sqrt(delta)/2*a)); System.out.println("Deux racine distincts:"+X1+" et X2 = "+X2); } else if(delta==0) { X1=(-b/2*a);HOUNGBEME Joseph http://master1istri.blogspot.com/ 34
  35. 35. X2=X1; System.out.println("il ya une racine doubleX1=X2 ="+X2); } if(delta<0) { System.out.println(" Première racine complexesconjuguée: "+-b/(2*a)+ " +i" +Math.sqrt(-delta) /(2*a)); System.out.println(" Deuxième racine complexesconjuguée: "+-b/(2*a)+ " -i" +Math.sqrt(-delta) /(2*a)); System.out.println("NOTEZ QUE i² = -1"); } } } } CONVERSION DHORLOGE JAVAEcrire un programme qui permet de convertir les secondesen année mois jour heure secondeHOUNGBEME Joseph http://master1istri.blogspot.com/ 35
  36. 36. Solution dans la programmation javajutilise netbeanspackage minsecond;import java.util.Scanner;/*** @author jo*/public class Minsecond { public static void main(String[] args) {System.out.println("Entrer le nombre de secondes:n");Scanner nbr = new Scanner (System.in); int temp = nbr.nextInt(); int annee = temp / 60 / 60 / 24 / 365; int jour = temp / 60 / 60 / 24 % 365; int heure = temp / 60 / 60 % 24; int minute = temp / 60 % 60; int seconde = temp % 60;System.out.println("Le temps entré "+temp+ " est égale à n"+annee+" an(s)n"+jour+" journ"+heure+" heuren"+minute+" minutesn"+ seconde+" secondes"); }HOUNGBEME Joseph http://master1istri.blogspot.com/ 36
  37. 37. }RUN:Entrer le nombre de secondes:123456789Le temps entré 123456789 est égale à3 an(s)333 jour21 heure33 minutes9 secondesBUILD SUCCESSFUL (total time: 12 seconds) COMPARAISON PAR MIN MAXUn programme qui compare deux nombre Solution dans la programmation javaHOUNGBEME Joseph http://master1istri.blogspot.com/ 37
  38. 38. package minmax;import java.util.Scanner;/* * @author jo */public class Minmax { public static void main(String[] args) { Scanner val = new Scanner (System.in); System.out.println("Entrez la première valeur àcomparer "); int x = val.nextInt(); System.out.println("Entrez la deuxième valeur àcomparer "); int y = val.nextInt(); System.out.println(" la plus grande valeur entre "+x + " et " +y+ " est = " + Math.max(x, y)); System.out.println(" la plus petite valeur entre "+x + " et " +y+ " est = " + Math.min(x,y)); }}run:Entrez la première valeur à comparer23Entrez la deuxième valeur à comparer90 la plus grande valeur entre 23 et 90 est = 90 la plus petite valeur entre 23 et 90 est = 23BUILD SUCCESSFUL (total time: 6 seconds)HOUNGBEME Joseph http://master1istri.blogspot.com/ 38
  39. 39. Montant en lettrepackage nombre;import java.util.Scanner;/** * * @author jo */ public class Nombre { /** * Représentaion en lettre de 0 */ public static final String ZERO="zéro"; /** * Représentaion en lettre de 1 */ public static final String UN="un"; /** * Représentaion en lettre de 2 */ public static final String DEUX="deux"; /** * Représentaion en lettre de 3 */ public static final String TROIS="trois"; /** * Représentaion en lettre de 4 */ public static final String QUATRE="quatre"; /** * Représentaion en lettre de 5 */ public static final String CINQ="cinq"; /**HOUNGBEME Joseph http://master1istri.blogspot.com/ 39
  40. 40. * Représentaion en lettre de 6 */ public static final String SIX="six"; /** * Représentaion en lettre de 7 */ public static final String SEPT="sept"; /** * Représentaion en lettre de 8 */ public static final String HUIT="huit"; /** * Représentaion en lettre de 9 */ public static final String NEUF="neuf"; /** * Représentaion en lettre de 10 */ public static final String DIX="dix"; /** * Représentaion en lettre de 11 */ public static final String ONZE="onze"; /** * Représentaion en lettre de 12 */ public static final String DOUZE="douze"; /** * Représentaion en lettre de 13 */ public static final String TREIZE="treize"; /** * Représentaion en lettre de 14 */ public static final String QUATORZE="quatorze"; /** * Représentaion en lettre de 15 */ public static final String QUINZE="quinze"; /** * Représentaion en lettre de 16 */ public static final String SEIZE="seize";HOUNGBEME Joseph http://master1istri.blogspot.com/ 40
  41. 41. /** * Représentaion en lettre de 20 */ public static final String VINGT="vingt"; /** * Représentaion en lettre de 30 */ public static final String TRENTE="trente"; /** * Représentaion en lettre de 40 */ public static final String QUARANTE="quarante"; /** * Représentaion en lettre de 50 */ public static final String CINQUANTE="cinquante"; /** * Représentaion en lettre de 60 */ public static final String SOIXANTE="soixante"; /** * Représentaion en lettre de 100 */ public static final String CENT="cent"; /** * Représentaion en lettre de 1000 */ public static final String MILLE="mille"; /** * Représentaion en lettre de 1000000 */ public static final String MILLION="million"; /** * Représentaion en lettre de 1000000000 */ public static final String MILLIARD="milliard"; /** * Représentaion en lettre de - */ public static final String MOINS="moins"; //Nom des différents types de paquet de nombreHOUNGBEME Joseph http://master1istri.blogspot.com/ 41
  42. 42. private static final String[] tab={"",MILLE,MILLION,MILLIARD,MILLE+""+MILLIARD, MILLION+" de "+MILLIARD,MILLIARD+" de "+MILLIARD}; /** * Renvoie la représentation en lettre dun chiffre, cest à dire dun nombre ente0 et 9 */ public static String getChiffre(int l) { if((l<0)||(l>9)) throw new IllegalArgumentException("Un chiffre est entre 0 et 9, donc "+l+"est interdit"); switch(l) { case 0 : return ZERO; case 1 : return UN; case 2 : return DEUX; case 3 : return TROIS; case 4 : return QUATRE; case 5 : return CINQ; case 6 : return SIX; case 7 : return SEPT; case 8 : return HUIT; case 9 : return NEUF; } return null; } //Retourne la représentation en lettre dun paquet. Un paquet est formé de toischiffres, comme 123, 012, 001, 100, 101,... private static String paquet(int p) { //On initialise la réponse String reponse="";HOUNGBEME Joseph http://master1istri.blogspot.com/ 42
  43. 43. //Si on a un chiffre des centaines if(p>100) { //Si la valeur est >199 alors, on va mettre devant le chiffre des centaine if(p/100>1) reponse=getChiffre(p/100)+" "; //Cest une centaine, donc on ajoute ensuite "cent" reponse += CENT+" "; //On récupére ce qui nest pas la centaine p=p%100; } //c chiffre des dizaines //u chaiffre des unitées int c=p/10; int u=p%10; switch(c) { //Si la dizaine est nule, alors le nombre est un chiffre case 0 : if(u!=0) reponse += getChiffre(u); break; case 1 : switch(u) { case 0 : reponse += DIX; break; case 1 : reponse += ONZE; break; case 2 : reponse += DOUZE; break; case 3 : reponse += TREIZE; break; case 4 : reponse += QUATORZE; break; case 5 : reponse += QUINZE; break; case 6 : reponse += SEIZE;HOUNGBEME Joseph http://master1istri.blogspot.com/ 43
  44. 44. break; default : reponse += DIX+" "+getChiffre(u); } break; case 2 : reponse += VINGT; if(u==1) reponse += " et"; if(u>0) reponse += " "+getChiffre(u); break; case 3 : reponse += TRENTE; if(u==1) reponse += " et"; if(u>0) reponse += " "+getChiffre(u); break; case 4 : reponse += QUARANTE; if(u==1) reponse += " et"; if(u>0) reponse += " "+getChiffre(u); break; case 5 : reponse += CINQUANTE; if(u==1) reponse += " et"; if(u>0) reponse += " "+getChiffre(u); break; case 6 : reponse += SOIXANTE; if(u==1) reponse += " et"; if(u>0) reponse += " "+getChiffre(u); break; case 7 : reponse += SOIXANTE+" "; if(u==1) reponse += " et"; switch(u)HOUNGBEME Joseph http://master1istri.blogspot.com/ 44
  45. 45. { case 0 : reponse += DIX; break; case 1 : reponse += ONZE; break; case 2 : reponse += DOUZE; break; case 3 : reponse += TREIZE; break; case 4 : reponse += QUATORZE; break; case 5 : reponse += QUINZE; break; case 6 : reponse += SEIZE; break; default : reponse += DIX+" "+getChiffre(u); } break; case 8 : reponse += QUATRE+" "+VINGT; if(u>0) reponse += " "+getChiffre(u); break; case 9 : reponse += QUATRE+" "+VINGT+" "; switch(u) { case 0 : reponse += DIX; break; case 1 : reponse += ONZE; break; case 2 : reponse += DOUZE; break; case 3 :HOUNGBEME Joseph http://master1istri.blogspot.com/ 45
  46. 46. reponse += TREIZE; break; case 4 : reponse += QUATORZE; break; case 5 : reponse += QUINZE; break; case 6 : reponse += SEIZE; break; default : reponse += DIX+" "+getChiffre(u); } break; } //On renvoie la réponse, à laquelle on retire les éventuels espaces surperflus return reponse.trim(); } /** * Renvoie le nombre en lettre, <BR> * ex: 1234567890 devient : un milliard deux cent trente quatre million cinqcent soixante sept mille huit cent quatre vingt dix */ public static String getLettre(long l) { //Cas zéro if(l==0L) return ZERO; String signe=""; //Cas négatif if(l<0L) { //On prned la valeur absolue l=-l; //On ajoutera moins devant signe=MOINS+" "; } //Initilisation de la réponse String reponse=""; //Rang du paquet actuel, on va parcourir le nombre de gauche à droite, lepremier paquet de 123456 sera donc : 456 int rang=0; while(l>0L)HOUNGBEME Joseph http://master1istri.blogspot.com/ 46
  47. 47. { //on ajoute le paquet devant la réponse reponse=paquet((int)(l%1000L))+" "+tab[rang]+" "+reponse; //on passe au paquet suivant l=l/1000L; rang++; } //on ajoute le signe éventuel reponse=signe+reponse; //On renvoie la réponse, à laquelle on retire les éventuels espaces surperflus return reponse.trim(); } public static void main(String args[]) { Scanner val = new Scanner (System.in); System.out.println("Entrez la première montant "); int a= val.nextInt(); System.out.println("Entrez la deuxième montant "); int b = val.nextInt(); int x = a+b; System.out.println("n ---------------------------------- "); System.out.println("La somme des deux montant "+a+" (+) "+b+" = "+x+"francs "); System.out.println(" Soit : "+getLettre (x)+" francs "); System.out.println("n ---------------------------------- ");HOUNGBEME Joseph http://master1istri.blogspot.com/ 47
  48. 48. III - J2EE - Java 2 Enterprise EditionIntroduction au Java FrameworkLe «Java Framework» (Java 2 Platform) est composé detrois éditions, destinées à des usages différents :  J2ME : Java 2 Micro Edition est prévu pour le développement dapplications embarquées, notamment sur des assistants personnels et terminaux mobiles ;  J2SE : Java 2 Standard Edition est destiné au développement dapplications pour ordinateurs personnels ;  J2EE : Java 2 Enterprise Edition, destiné à un usageHOUNGBEME Joseph http://master1istri.blogspot.com/ 48
  49. 49. professionnel avec la mise en oeuvre de serveurs.Chaque édition propose un environnement complet pour ledéveloppement et lexécution dapplications basées sur Java etcomprend notamment une machine virtuelle Java (Java virtualmachine) ainsi quun ensemble de classes.Introduction à J2EEJ2EE (Java 2 Enterprise Edition) est une norme proposée parla société Sun, portée par un consortium de sociétésinternationales, visant à définir un standard de développementdapplications dentreprises multi-niveaux, basées sur descomposants.On parle généralement de «plate-forme J2EE» pour désignerlensemble constitué des services (API) offerts et delinfrastructure dexécution. J2EE comprend notamment :  Les spécifications du serveur dapplication, cest-à-dire de lenvironnement dexécution : J2EE définit finement les rôles et les interfaces pour les applications ainsi que lenvironnement dans lequel elles seront exécutées. Ces recommandations permettent ainsi à des entreprises tierces de développer des serveurs dapplication conformes aux spécifications ainsi définies, sans avoir à redévelopper les principaux services.  Des services, au travers dAPI, cest-à-dire des extensions Java indépendantes permettant doffrir en standard un certain nombre de fonctionnalités. Sun fournit une implémentation minimale de ces API appelée J2EE SDKHOUNGBEME Joseph http://master1istri.blogspot.com/ 49
  50. 50. (J2EE Software Development Kit).Dans la mesure où J2EE sappuie entièrement sur le Java, ilbénéficie des avantages et inconvénients de ce langage, enparticulier une bonne portabilité et une maintenabilité du code.De plus, larchitecture J2EE repose sur des composantsdistincts, interchangeables et distribués, ce qui signifienotamment :  quil est simple détendre larchitecture ;  quun système reposant sur J2EE peut posséder des mécanismes de haute-disponibilité, afin de garantir une bonne qualité de service ;  que la maintenabilité des applications est facilitée.Les API de J2EELes API de J2EE peuvent se répartir en trois grandescatégories :  Les composants. On distingue habituellement deux familles de composants : o Les composants web : Servlets et JSP (Java Server Pages). Il sagit de la partie chargée de linterface avec lutilisateur (on parle de logique de présentation). o Les composants métier : EJB (Enterprise Java Beans). Il sagit de composants spécifiques chargés des traitements des données propres à un secteur dactivité (on parle de logique métier ou de logique applicative) et de linterfaçage avec les bases de données.  Les services, pouvant être classés par catégories : o Les services dinfrastructures : il en existe un grandHOUNGBEME Joseph http://master1istri.blogspot.com/ 50
  51. 51. nombre, définis ci-dessous :  JDBC (Java DataBase Connectivity) est une API daccès aux bases de données relationnelles.  JNDI (Java Naming and Directory Interface) est une API daccès aux services de nommage et aux annuaires dentreprises tels que DNS, NIS, LDAP, etc.  JTA/JTS (Java Transaction API/Java Transaction Services) est un API définissant des interfaces standard avec un gestionnaire de transactions.  JCA (J2EE Connector Architecture) est une API de connexion au système dinformation de lentreprise, notamment aux systèmes dits «Legacy» tels que les ERP.  JMX (Java Management Extension) fournit des extensions permettant de développer des applications web de supervision dapplications. o Les services de communication :  JAAS (Java Authentication and Authorization Service) est une API de gestion de lauthentification et des droits daccès.  JavaMail est une API permettant lenvoi de courrier électronique.  JMS (Java Message Service) fournit des fonctionnalités de communication asynchrone (appelées MOM pour Middleware Object Message) entre applications.  RMI-IIOP est une API permettant la communication synchrone entre objets.Larchitecture J2EE permet ainsi de séparer la coucheprésentation, correspondant à linterface homme-machine(IHM), la couche métier contenant lessentiel des traitementsHOUNGBEME Joseph http://master1istri.blogspot.com/ 51
  52. 52. de données en se basant dans la mesure du possible sur desAPI existantes, et enfin la couche de données correspondantaux informations de lentreprise stockées dans des fichiers,dans des bases de données relationnelles ou XML, dans desannuaires dentreprise ou encore dans des systèmesdinformation complexes.  Les codes sources sont ci-joint FinHOUNGBEME Joseph http://master1istri.blogspot.com/ 52

×