0% ont trouvé ce document utile (0 vote)
33 vues28 pages

Java 2structuredecontrle

Le document présente les structures de contrôle en Java, qui permettent de modifier l'exécution séquentielle des instructions en fonction des données. Il décrit les branchements conditionnels, les itérations et les boucles conditionnelles, ainsi que les erreurs courantes à éviter. Enfin, il aborde la portée des variables et les bonnes pratiques de déclaration dans le code Java.

Transféré par

itglpromotion2023
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Thèmes abordés

  • exécution de séquences,
  • conditions simples,
  • déclaration de blocs,
  • saisie utilisateur,
  • structure de boucle,
  • erreurs de logique,
  • branchement conditionnel,
  • structure de contrôle,
  • contrôle d'itération,
  • opérateurs logiques
0% ont trouvé ce document utile (0 vote)
33 vues28 pages

Java 2structuredecontrle

Le document présente les structures de contrôle en Java, qui permettent de modifier l'exécution séquentielle des instructions en fonction des données. Il décrit les branchements conditionnels, les itérations et les boucles conditionnelles, ainsi que les erreurs courantes à éviter. Enfin, il aborde la portée des variables et les bonnes pratiques de déclaration dans le code Java.

Transféré par

itglpromotion2023
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Thèmes abordés

  • exécution de séquences,
  • conditions simples,
  • déclaration de blocs,
  • saisie utilisateur,
  • structure de boucle,
  • erreurs de logique,
  • branchement conditionnel,
  • structure de contrôle,
  • contrôle d'itération,
  • opérateurs logiques

Le langage Java

Structures de contrôle

Les structures de contrôle 1


Le langage Java

Notion de structure de contrôle


Jusqu’ici, dans un programme,
 Les instructions sont exécutées séquentiellement (dans l’ordre où elles apparaissent).
 Les instructions opèrent sur les données (les valeurs des variables) grâce à des opérateurs

Les structures de contrôle permettent aux données, à leur tour, d’influencer les traitements

Il y a 3 structures de contrôle:
 les branchements conditionnels
 les itérations
 les boucles conditionnelles

Les structures de contrôle 2


Le langage Java

Branchement conditionnel
Démo : Exécution pas à pas, branchement conditionnel ou structure alternative

1 Structure alternative réduite 2 Structure alternative complète

La notion de bloc – séquence d’instruction représentant une entité


 Lorsque l'on veut regrouper plusieurs instructions, nous devons créer ce que l'on appelle un bloc, c'est-à-dire un
ensemble d'instructions compris entre les accolades { et }.
 Quand un bloc contient une seule instruction, il n'est pas obligatoire d'utiliser des accolades (déconseillé).

Les structures de contrôle 3


Le langage Java

Exercice - Structure de Choix imbriqués


Exemples :
 x = 1, y = 1, z = 1
 x = 1, y = 1, z = 2
 x = 1, y = 2, z = 1
 x = 1, y = 2, z = 2
 x = 1, y = 2, z = 3

INTRODUCTION 4
Le langage Java
Les conditions simples

 Une condition est toujours entourée de parenthèses.


 Une condition simple compare deux expressions grâce un opérateur de comparaison
 Une condition est un cas particulier d'expression, qui ne peut prendre que deux valeurs.
 En Java, ces valeurs se notent true et false.

Opérateurs de comparaison

Opérateur de comparaison Signification


< inférieur à
> supérieur à
== égal à
<= inférieur ou égal à
>= supérieur ou égal à
!= différent de

INTRODUCTION 5
Le langage Java

Exercice - Qu’affichent les séquences d’instructions suivantes ?

INTRODUCTION 6
Le langage Java

Les opérateurs logiques

Les opérateurs logiques permettent de relier des conditions


simples et ainsi créer des conditions composées (complexes).

L'opérateur logique ET : (a < b) && (c < d)


=> est vraie uniquement si les deux conditions (a < b) et (c < d) sont toutes les deux vraies.

Exercice : donner les résultats de l’exécution de la séquence suivante pour n ayant comme valeur 0, 4, 8, 10 et 12.

L'opérateur logique OU : (a < b) || (c < d)

=> est vraie si au moins une des deux conditions (a < b) ou (c < d) est vraie.

INTRODUCTION 7
Le langage Java

Exercice : donner le résultat de l’exécution de la séquence suivante pour n et m ayant comme valeur :
(-1,-1), (-1,1), (0,0) et (1,1)

L'opérateur logique NON : !(a < b)


=> est vraie si (a < b) est fausse, et fausse si (a < b) est vraie.

Note : opérateur Non est un opérateur unaire, il n’attend qu’un seul opérande.

INTRODUCTION 8
Le langage Java

Quelques erreurs classiques


1. Le test d'égalité s'écrit ==, et pas =

2.

3.

 a vaut 1 est toujours affiché quelle que soit la valeur de a!


 Le point-virgule est considéré comme une instruction, qui ne fait rien.

4. Ne pas oublier les accolades, l'indentation ne suffit pas:

INTRODUCTION 9
Le langage Java

Quiz

 Qu’affiche ce programme quand l’utilisateur saisit 1 et 2 ?


 Qu’affiche ce programme quand l’utilisateur entre 1 et 3 ?
 Qu’affiche ce programme quand l’utilisateur entre 2 et 1 ?

INTRODUCTION 10
Le langage Java

Itération – concept
Imaginons que l’on veuille affiche la table de multiplication de 5.

=> il faut utiliser une boucle for pour éviter cette répétition.

La variable i prend ici les valeurs de 1 à 10.

INTRODUCTION 11
Le langage Java

Itération – la boucle for

 Une boucle for permet de répéter un nombre donné de fois la même séquence d'instructions (bloc).
 On utilise une variable de contrôle d’itération caractérisée par sa valeur initiale, sa valeur finale, son pas de
variation.
 Elles sont utilisées quand le nombre de répétitions est connu avant d'entrer dans la boucle.

Note : Dans cette forme, La durée de vie de la variable d’itération i est la boucle.

INTRODUCTION 12
Le langage Java

Syntaxe de l'instruction for

Exercice : Que s'affiche-t-il quand on exécute le


programme ?

INTRODUCTION 13
Le langage Java

Exemples d'autres formes de boucles for

=> la variable p prendra les valeurs de 0, 2, 4, 6, 8 (p += 2 est équivalent à p = p + 2)

=> la variable k prendra les valeurs 10, 9, 8 … jusqu’à 1

=> la condition est toujours vraie (du moins dans le principe). La boucle est répétée indéfiniment

INTRODUCTION 14
Le langage Java

Boucles infinies et erreur classiques


1. On s'est trompé sur la condition:

2. On s'est trompé sur l'incrémentation:

3. Pas de point-virgule (;) à la fin de l'instruction for

4. Attention aux accolades

INTRODUCTION 15
Le langage Java

Exemple : moyenne de 4 notes

Programme équivalent
avec la boucle for

Exercice : Comment modifier le code pour laisser l'utilisateur choisir le nombre de notes ?

INTRODUCTION 16
Le langage Java

Boucles imbriquées
Reprenons l'exemple précédent de la table de multiplication par 5:

Affiche 9 fois la table de multiplication par 5

Affiche la table de multiplication par 1, puis par 2, jusque 10.

INTRODUCTION 17
Le langage Java

Programme complet

INTRODUCTION 18
Le langage Java

Quiz
Que s'affiche-t-il quand on exécute les séquences de code suivantes :

INTRODUCTION 19
Le langage Java

Les boucles conditionnelles - concept


 Elles sont utilisées quand le nombre de répétitions est inconnu avant d'entrer dans la boucle,
 Les boucles conditionnelles permettent de répéter une séquence d’instruction définit par un bloc
 L’itération se fera par une condition.

Tant que la condition est vraie nous itérons.

INTRODUCTION 20
Le langage Java

Les structures do…while et while


Deux structures de boucle conditionnelle

Syntaxes

 Le bloc d’instructions de la structure do…while sont toujours exécutées au moins une fois.
 Pour la structure while, la condition est testée avant d’entrer dans la boucle (le bloc peut ne jamais être exécuté).
 La condition peut utiliser des opérateurs logiques.
 Les parenthèses autour de la condition sont obligatoires.
 Si la condition ne devient jamais fausse, les instructions dans la boucle sont répétées indéfiniment !

Forcer l’utilisateur à saisir un nombre de note supérieur à 0

INTRODUCTION 21
Le langage Java

L’instruction do…while

Exercice : Que s'affiche-t-il quand on exécute les séquences d’instructions suivantes?

INTRODUCTION 22
Le langage Java

Quelques erreurs classiques


Il n'y a pas de ; à la fin de la condition du while

En revanche, il y a un point-virgule à la fin du do..while:

INTRODUCTION 23
Le langage Java

Programme complet

INTRODUCTION 24
Le langage Java

Choix boucle for/while/do…while


Utiliser la boucle for quand le nombre d'itérations (de répétitions) est connu avant d'entrer dans la boucle :

Sinon, utiliser une structure boucle conditionnelle


 Utiliser la boucle do…while quand les instructions doivent être effectuées au moins une fois

 Sinon, utiliser la forme while

Démo : Améliorer le programme « lire le nombre de note » avertir l’utilisateur de saisie erroné & ne pas
dupliquer le test (nombre_de_notes <= 0)

INTRODUCTION 25
Le langage Java

Comment trouver la condition ?


Exemple :
 Comment forcer l'utilisateur à entrer une note supérieure à 0 et inférieur ou égal à 10 ?
 On veut répéter la boucle tant que le nombre de notes est incorrect
 Le nombre de notes est incorrect s’il est inférieur ou égal à 0 ou si il est supérieur à 10,

Etude de cas : Le nombre mystère

INTRODUCTION 26
Le langage Java

Les blocs
 En Java, les instructions peuvent être regroupées en blocs.
 Les blocs sont identifiés par des délimiteurs de début et de fin : { et }
 Ils peuvent contenir leurs propres déclarations et initialisation de variables:

Notion de portée

Les variables déclarées à l'intérieur d'un bloc sont appelées variables locales (au bloc).
Elles ne sont accessibles qu'à l'intérieur du bloc.

 Les variables déclarées en dehors de tout bloc (même du bloc main(){}) sont appelées variables globales (au
programme). Elles sont accessibles dans l'ensemble du programme. A EVITER

 La portée d'une variable, c'est l'ensemble des lignes de code où cette variable est accessible, autrement dit où elle
est définie, existe, a un sens donc un espace mémoire réservé.

INTRODUCTION 27
Le langage Java
Bonne pratique : Déclarer les variables au plus près de leur utilisation
Exemple :

plutôt que

Règles de résolution de portée


En cas d'ambiguïté, c'est-à-dire quand plusieurs variables de portées différentes portent le même nom:
la variable « la plus proche » est choisie (en terme de bloc)
Portée : cas des itérations
La déclaration d'une variable à l'intérieur d'une itération est une déclaration locale au bloc de la boucle, et aux deux
instructions de test et d'incrément.

INTRODUCTION 28

Vous aimerez peut-être aussi