Exercices en Java (01-Introduction aux applications Java)

Sébastien ESTIENNE

Ce premier chapitre, comme son nom l'indique est une introduction aux applications Java. Il comporte trois exercices simples. Le premier est un exercice simple qui affiche un simple message. Le deuxième est un exercice qui effectue des opérations simples avec des nombres. Le troisième exercice permet de vérifier si un premier nombre est multiple d'un second.

Les principales notions abordées sont les suivantes :

- Affichage d'information ;

- Saisie de données ;

- Type de données ;

- Opérateurs arithmétiques ;

- Conversion de types ;

- Structure de sélection if.

Pour faire et comprendre ces exercices, vous aurez besoin d'un certain nombre de notions sur le Java en rapport avec le chapitre. Pour cela, vous pouvez consulter les tutoriels java de developpez à l'adresse suivante : https://java.developpez.com/cours/

La documentation de l'API sur le site de Sun est aussi une mine d'or : http://java.sun.com/javase/6/docs/api/ ♪

- Titre : Exercices en Java (01-Introduction aux applications Java)

- Auteur : Sébastien ESTIENNE

- Parution : 28 mars 2007

- Mise à jour : 24 juillet 2007

- Licence : Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ® 2007 Sébastien ESTIENNE. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Bienvenue

- I-1. Énoncé

- I-2. Aperçu

- I-3. Démonstration

- I-4. Solution

- II. Calculs

- II-1. Énoncé

- II-2. Aperçu

- II-3. Démonstration

- II-4. Solution

- III. Multiple

- III-1. Énoncé

- III-2. Aperçu

- III-3. Démonstration

- III-4. Solution

- IV. Remerciements

I - Bienvenue

I-1 - Énoncé

Écrivez un programme qui affiche à l'écran l'expression « Bonjour! ».

Classes de l'API utilisées :

- java.lang.System

I-2 - Aperçu

Aperçu du résultat.

I-3 - Démonstration

Télécharger le fichier jar.

Note : pour voir le résultat, ouvrez une console et tapez : java -jar Bienvenue.jar.

I-4 - Solution

Bienvenue.java

1. /*

2. * Fichier: Bienvenue.java

3. * Crée le: 30 novembre 2006.

4. * Modifié: 7 juillet 2007.

5. * Auteurs: Sébastien ESTIENNE.

6. * SiteWeb: http://www.prog-info.org/

7. *

8. * This program is free software; you can redistribute it and/or modify

9. * it under the terms of the GNU General Public License as published by

10. * the Free Software Foundation; either version 2 of the License, or

11. * (at your option) any later version.

12. *

13. * This program is distributed in the hope that it will be useful,

14. * but WITHOUT ANY WARRANTY; without even the implied warranty of

15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

16. * GNU General Public License for more details.

17. *

18. * You should have received a copy of the GNU General Public License

19. * along with this program; if not, write to the Free Software

20. * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

21. */

23. package chapitre1;

27. /**

28. * <p>Classe Bienvenue.</p>

29. * @author Sébastien ESTIENNE.

30. */

31. public class Bienvenue

32. {

33. /**

34. * <p>Débute l'exécution de l'application.</p>

35. * @param args Les paramètres de la ligne de commande.

36. */

37. public static void main(String[] args)

38. {

39. System.out.println("Bienvenue!");

41. // Termine l'application.

42. System.exit(0);

43. }

44. }

II - Calculs

II-1 - Énoncé

Écrire un programme qui demande à l'utilisateur de saisir 3 nombres entiers (boîte de dialogue).
Le programme doit ensuite afficher la somme, la moyenne et le produit de ces 3 nombres dans une boîte de message.
Le calcul de la moyenne doit donner un résultat entier.

Classes de l'API utilisées :

- java.lang.System

- javax.swing.JOptionPane

II-2 - Aperçu

Aperçu du résultat.

II-3 - Démonstration

Lancer avec Java Web Start

Note : javaws -viewer (accessible aussi dans le panneau de configuration Java) permet de voir les différentes applications JWS en cache et de les gérer.

II-4 - Solution

Calculs.java

1. /*

2. * Fichier: Calculs.java

3. * Crée le: 30 novembre 2006.

4. * Modifié: 7 juillet 2007.

5. * Auteurs: Sébastien ESTIENNE.

6. * SiteWeb: http://www.prog-info.org/

7. *

8. * This program is free software; you can redistribute it and/or modify

9. * it under the terms of the GNU General Public License as published by

10. * the Free Software Foundation; either version 2 of the License, or

11. * (at your option) any later version.

12. *

13. * This program is distributed in the hope that it will be useful,

14. * but WITHOUT ANY WARRANTY; without even the implied warranty of

15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

16. * GNU General Public License for more details.

17. *

18. * You should have received a copy of the GNU General Public License

19. * along with this program; if not, write to the Free Software

20. * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

21. */

23. package chapitre1;

27. import javax.swing.JOptionPane;

31. /**

32. * <p>Effectue des opérations arithmétiques.</p>

33. * @author Sébastien ESTIENNE.

34. */

35. public class Calculs

36. {

37. /**

38. * <p>Débute l'exécution de l'application.</p>

39. * @param args Les paramètres de la ligne de commande.

40. */

41. public static void main(String[] args)

42. {

43. // Chaines saisies par l'utilisateur.

44. String premierNombre = "", deuxiemeNombre = "", troisiemeNombre = "";

46. // Chaine de sortie.

47. String resultat = "";

49. // Nombres correspondants aux chaines saisies.

50. int nombre1 = 0, nombre2 = 0, nombre3 = 0;

52. // Lis 3 nombres saisis par l'utilisateur sous forme de String.

53. premierNombre = JOptionPane.showInputDialog("Entrer le premier entier :");

54. deuxiemeNombre = JOptionPane.showInputDialog("Entrer le deuxième entier :");

55. troisiemeNombre = JOptionPane.showInputDialog("Entrer le troisième entier :");

57. // Convertir les nombres du type String au type int.

58. try

59. {

60. nombre1 = Integer.parseInt(premierNombre);

61. nombre2 = Integer.parseInt(deuxiemeNombre);

62. nombre3 = Integer.parseInt(troisiemeNombre);

63. }

64. // Si au moins une des trois valeurs n'est pas un nombre entier, cela génère exception qui

65. // implique un traitement particulier.

66. catch(NumberFormatException e)

67. {

68. // Afficher le message d'erreur.

69. JOptionPane.showMessageDialog(null,

70. "Erreur, les 3 saisies doivent être des nombres entiers.", "Calculs",

71. JOptionPane.ERROR_MESSAGE);

73. // Terminer l'application.

74. System.exit(0);

75. }

77. // Nombres entrés par l'utilisateur.

78. resultat = "Vous avez saisi les nombres : " + nombre1 + ", " + nombre2 + " et " + nombre3

79. + ".\n";

81. // Calculer la somme.

82. resultat = resultat + "La somme est : " + (nombre1 + nombre2 + nombre3) + ".\n";

84. // Calculer la moyenne.

85. resultat = resultat + "La moyenne est : " + ((nombre1 + nombre2 + nombre3) / 3) + ".\n";

87. // Calculer le produit.

88. resultat = resultat + "Le produit est : " + (nombre1 * nombre2 * nombre3) + ".\n";

90. // Afficher les résultat.

91. JOptionPane.showMessageDialog(null, resultat, "Calculs", JOptionPane.INFORMATION_MESSAGE);

93. // Terminer l'application.

94. System.exit(0);

95. }

96. }

III - Multiple

III-1 - Énoncé

Écrire un programme qui demande à l'utilisateur de saisir deux nombres entiers (boîte de dialogue).
Le programme doit ensuite afficher si le premier est multiple du second.

Classes de l'API utilisées :

- java.lang.System

- javax.swing.JOptionPane

III-2 - Aperçu

Aperçu du résultat.

III-3 - Démonstration

Lancer avec Java Web Start

Note : javaws -viewer (accessible aussi dans le panneau de configuration Java) permet de voir les différentes applications JWS en cache et de les gérer.

III-4 - Solution

Multiple.java

1. /*

2. * Fichier: Multiple.java

3. * Crée le: 02 décembre 2006.

4. * Modifié: 7 juillet 2007.

5. * Auteurs: Sébastien ESTIENNE.

6. * SiteWeb: http://www.prog-info.org/

7. *

8. * This program is free software; you can redistribute it and/or modify

9. * it under the terms of the GNU General Public License as published by

10. * the Free Software Foundation; either version 2 of the License, or

11. * (at your option) any later version.

12. *

13. * This program is distributed in the hope that it will be useful,

14. * but WITHOUT ANY WARRANTY; without even the implied warranty of

15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

16. * GNU General Public License for more details.

17. *

18. * You should have received a copy of the GNU General Public License

19. * along with this program; if not, write to the Free Software

20. * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

21. */

23. package chapitre1;

27. import javax.swing.JOptionPane;

31. /**

32. * <p>Vérifie si un premier nombre est un multiple d'un second.</p>

33. * @author Sébastien ESTIENNE.

34. */

35. public class Multiple

36. {

37. /**

38. * <p>Débute l'exécution de l'application.</p>

39. * @param args Les paramètres de la ligne de commande.

40. */

41. public static void main(String[] args)

42. {

43. // Chaines saisies par l'utilisateur.

44. String premierNombre = "", deuxiemeNombre = "";

46. // Nombres correspondants aux chaines saisies.

47. int nombre1 = 0, nombre2 = 0;

49. // Lire les nombres de l'utilisateur sous forme de String.

50. premierNombre = JOptionPane.showInputDialog("Entrer le premier entier :");

51. deuxiemeNombre = JOptionPane.showInputDialog("Entrer le deuxième entier :");

53. // Converti les nombres du type String en type int.

54. try

55. {

56. nombre1 = Integer.parseInt(premierNombre);

57. nombre2 = Integer.parseInt(deuxiemeNombre);

58. }

59. // Si au moins une des trois valeurs n'est pas un nombre entier, cela génère exception qui

60. // implique un traitement particulier.

61. catch(NumberFormatException e)

62. {

63. // Afficher le message d'erreur.

64. JOptionPane.showMessageDialog(null,

65. "Erreur, les 2 saisies doivent être des nombres entiers.", "Calculs",

66. JOptionPane.ERROR_MESSAGE);

68. // Terminer l'application.

69. System.exit(0);

70. }

72. // Affiche le résultat.

73. if(nombre2 % nombre1 == 0)

74. {

75. JOptionPane.showMessageDialog(null, nombre2 + " est un multiple de " + nombre1,

76. "Multiple", JOptionPane.INFORMATION_MESSAGE);

77. }

78. else

79. {

80. JOptionPane.showMessageDialog(null, nombre2 + " n'est pas un multiple de " + nombre1,

81. "Multiple", JOptionPane.INFORMATION_MESSAGE);

82. }

84. // Terminer l'application.

85. System.exit(0);

86. }

87. }

IV - Remerciements

Je remercie ChristopheJ et et Ioan pour leur aide et le support.
Merci à Anomaly et mathieu pour la mise en place des démos avec JWS.
Je tiens à remercier Ricky81, vbrabant, Ioan, bbclone pour les conseils, remarques et relectures.
Je remercie aussi www.developpez.com me permettant de publier cet article et Nono40 pour ses outils.