_ _ _ | | | | | | | | ___ ___ | |__ ___ _ _ ___| | ___ ___ | | / _ \/ __| | '_ \ / _ \| | | |/ __| |/ _ \/ __| | |___| __/\__ \ | |_) | (_) | |_| | (__| | __/\__ \ |______\___||___/ |_.__/ \___/ \__,_|\___|_|\___||___/ —————————————————————————————————————————————————————— ————————————————— ————————— while ~~~~~ "While", c'est une boucle "tant que" à précondition. /====================\ / \ NO ---> o Condition est vrai ? o ---+ | \ / | | \====================/ | | | | | | OUI | | | | | \ / | | v | | /------------------------\ | | | | | | | faire quelque chose | | | | | | | \------------+-----------/ | | | | | | | +------------------/ | | /-------------------------\ | | | | | la suite du programme | <--/ | | \-------------------------/ Sa syntaxe : while (condition) { faire; quelque; chose; } Par exemple le code suivant : a = 0; while (a < 5) { System.out.println (a); a++; } va afficher : 0 1 2 3 4 do ... while ~~~~~~~~~~~~ "do ... while ", c'est une boucle "jusqu'à ce que" à postcondition, sa syntaxe : do { faire; quelque; chose; } while (condition); /------------------------\ | | ---> | faire quelque chose | | | | | \------------+-----------/ | | | | | \ / | v | /====================\ | OUI / \ NO +---- o Condition est vrai ? o ---+ \ / | \====================/ | | | /-------------------------\ | | | | | la suite du programme | <--/ | | \-------------------------/ for ~~~ La syntaxe : for (initialisation; condition; incrément) { faire; quelques; choses; } L'exemple : int i; for (i = 0; i < 10; i++) { System.out.println (i); } System.out.println ("Au revoir"); Le diagramme d'exemple : /==========================\ | | | i = 0; // initialisation | | | \============+=============/ | | \ / v /======================\ / \ NO ----> o // Condition est vrai ? o-----------+ | \ i < 10; / | | \ / | | \=========+==========/ | | | | | | OUI | | \ / | | v | | /--------------------------\ | | | | | | | System.out.println (i); | | | | | | | \------------+-------------/ | | | | | | | | \ / | | v | | /==========================\ | | | | | +------+ i++; // incrément | | | | | \============+=============/ | | | /----------------------------------\ | | | | | // la suite du programme | <--- | System.out.println("Au revoir") | | | \----------------------------------/ Exercices ————————— 1) Écrire un programme qui affiche : a) la liste de nombres entiers de 1 jusqu'à N b) la liste de carrés de nombres entiers de 1 jusqu'à N c) la liste de N premiers nombres paires d) un triangle de taille N. Par exemple si N = 5, on affiche : # ## ### #### ##### e) les phrases suivantes : Il y a 99 bouteilles du lait fermenté dans le frigo de Jérôme. Il a bu une bouteille. Il y a 98 bouteilles du lait fermenté dans le frigo de Jérôme. Il a bu une bouteille. ... Il y a dernière bouteille du lait fermenté dans le frigo de Jérôme. Bah! Il a bu cette bouteille. Zero bouteilles, zero bouteilles dans le frigo de Jérôme. Il faut aller au magasin. (Regarder aussi http://www.99-bottles-of-beer.net) 2) Écrire un programme qui calcule a) la factorielle de n n! = 1*2*3*...(n-1)*n b) la somme de nombres saisis par l'utilisateur. (à la fin l'utilisateur dit "STOP") 1 2 3 4 9 STOP SOMME = 19 c) la moyenne de nombres saisis par l'utilisateur (à la fin l'utilisateur dit "STOP") 1 2 1 2 8 22 STOP MOYENNE = 6 Exercices plus difficiles ————————————————————————— La suite de Fibonacci : 0 1 1 2 3 5 8 13 ... 1) Afficher N premiers nombres de la suite de Fibonacci 2) Écrire un programme qui affiche la représentation binaire d'un nombre décimal. 3) Écrire un programme qui affiche la representation hexadécimale d'un nombre décimal.