Guide TD2- Programmation II
Prof. Ilham Benyahia
Hiver 2025
1. Rappel des entrées sorties en java :
1.1 Exemples de classes de jdk – librairie de java qui sont
impliquées dans des opérations d’etrée sortie
1) Scanner
2) System
3) PrintString
Classe Scanner : permet de lire à partir d’une console en réutilisant la
classe Scanner qui est importée de la librairie de java via le chenin :
java.util.Scanner
Pour les opérations d’entrées la classe Scanner peut être instanciée avec un paramètre spécifique
aux entrées. Le paramètre System.in est utilisé en java pour lire à partir d’un clavier- on parle
de flux d’entrée.
System : classe de la librairie de java qui permet des accès standard d’entrée et de sortie. Cette
classe permet aussi l’affichage de flux d’erreurs. Cette classe est définie par des méthodes de
classe (elle ne s’instancie pas).
Exemples de méthodes de la classe System : 1) in : pour les flux d’entrée- System.in, out pour
les affichages (sorties) : System.out
System.out.println() : - println() : est une méthode publique de la classe PrintStream. Les
classes System et PrintStream sont reliées par la relation d’agrégations. Ceci explique
pourquoi la classe system a accès à la méthode print () qui se situe au niveau au de PrintStream.
1.2 Étape de lecture d’une variable à partir de la console :
1) Utiliser la classe Scanner
1
2) Déclarer une variable qui va stocker la valeur qui sera saisie selon le type qui sera accepté (par
rapport au contexte du programme : entier, double, ..)
3) Récupérer la valeur saisie à partir du clavier : scanner.nextDouble(); // permet de valider le
type attendu.
4) scanner.close(): // optionnelle
Exemple :
import java.util.Scanner;
public class Example {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Entrer une valeur: ");
double value = scanner.nextDouble();
System.out.println("Vous avez entré: " + value);
scanner.close(); // optionnele mais recommandé. }
2. Classes réutilisables de java
Plusieurs classes d’entrées sortie vue dans la section 1 en plus d’autres c lasses qui présentent
différentes utilités.
Exemples :
Class Math : Pour travailler sur des fonctions mathématiques, java possède la class math
qui peut être importée via le chemin java.lang :
Exemple de fonctions (méthodes) définies dans la classe Math sont statiques (méthodes de
classe) pas besoin de créer des instances pour les appeler. Exemples :
1) Racine carré- Math.sqrt(),
2) Trigonométriques : sin(), cos(), tan(),
3) Précisions : arrondir dans un sens ou l’autre : exemple : ceil () qui arrondie un réel à
l’entier le plus proche,
4) chercher des valeurs constantes comme : 1) PI-Math.PI ((π)
5) utiliser des méthodes de la classe Math pour comparer des valeurs : max(x,y), min
(x,y), etc.
2
Classe Random : cette classe permet de générer des nombres aléatoires de
manière plus générale que la méthode random( ) de la classe Math. La
classe Random offre plus de flexibilité relativement aux variables aléatoires.
3. Boucles d’itérations
La boucle For
Les boucles sont considérées lorsqu’une ou plusieurs instructions un certain nombre de fois. Pour
la boucle for, on utilise la forme for-initialisation de la variable qui sert de compteur -la
condition d’arrêt- l’évolution de la variable qui sert de compteur. Au niveau de la syntaxe, on
met un point-virgule entre chaque composante de la boucle for.
Exemple :
public class ForExample {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
System.out.println(i + 1 + ". Hello!");
La boucle Do while
Un autre exemple de boucle en java est le do… while. Une condition est
donnée et tant que cette condition est vraie une ou plusieurs instructions
(bloc) sont exécutées plusieurs fois. La boucle se termine lorsque la condition
n’est plus valide. Une évolution de la valeur de la condition permettra
d’invalider la condition nécessaire pour l’exécution.
Exemple 1
int i = 0;
do {
3
System.out.println(i);
i++;
} while (i <= 5);
Exemple 2
public class Main {
public static void main(String[] args) {
int x = 10;
do {
System.out.println(x);
x++;
} while (x < 20);