cpt←cpt+1
FinTantQue
Si signe=1 Alors
Resultat←1/resultat
FinSi
Ecrire resultat
Fin
Ce qui donne en Java :
import java.io.*;
class chap4_puissance {
public static void main(String[] args) {
long x=1,n=1,cpt;
double resultat;
boolean signe=false;
String t1="",t2="";
BufferedReader saisie;
saisie=new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("x,y ?");
t1=saisie.readLine();
t2=saisie.readLine();
}
catch(Exception excp) {
System.out.println("Erreur");
}
x=Long.parseLong(t1);
n=Long.parseLong(t2);
if(n<0) {
n=-n;
signe=true;
}
cpt=1;
resultat=1;
while(cpt<=n) {
resultat=resultat*x;
cpt++;
}
if(signe) resultat=1/resultat;
System.out.println(resultat);
}
}
d. Toutes les tables de multiplication
Tout comme les tests, il est tout à fait possible d’imbriquer les boucles, c’estàdire de mettre une boucle dans une
autre boucle, sur autant de niveaux que vous le souhaitez. Vous pouvez envisager 1, 2, 3, n niveaux, mais ça risque
de devenir difficilement lisible. Voici un exemple à deux niveaux. Il s’agit tout simplement de calculer et d’afficher
toutes les tables de multiplication de 1 à 10. Pour cela deux boucles doivent être utilisées. La première va
représenter la table à calculer, de 1 à 10. La seconde à l’intérieur de la première va multiplier la table donnée de 1 à
10. Vous avez donc deux boucles de 1 à 10. Simulez ce qu’il se passe :
q Première boucle, table des 1. Seconde boucle : exécution de 1*1, 1*2, 1*3 … 1*10
q Première boucle, table des 2. Seconde boucle : exécution de 2*1, 2*2, 2*3 … 2*10
q Première boucle, table des 3. Seconde boucle : exécution de 3*1, 3*2, 3*3 … 3*10
q …
q Première boucle, table des 10. Seconde boucle : exécution de 10*1, 10*2, 10*3 …
- 5 -
© ENI Editions - All rigths reserved - Jonifar lina
77
FinTantQue
Si signe=1 Alors
Resultat←1/resultat
FinSi
Ecrire resultat
Fin
Ce qui donne en Java :
import java.io.*;
class chap4_puissance {
public static void main(String[] args) {
long x=1,n=1,cpt;
double resultat;
boolean signe=false;
String t1="",t2="";
BufferedReader saisie;
saisie=new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("x,y ?");
t1=saisie.readLine();
t2=saisie.readLine();
}
catch(Exception excp) {
System.out.println("Erreur");
}
x=Long.parseLong(t1);
n=Long.parseLong(t2);
if(n<0) {
n=-n;
signe=true;
}
cpt=1;
resultat=1;
while(cpt<=n) {
resultat=resultat*x;
cpt++;
}
if(signe) resultat=1/resultat;
System.out.println(resultat);
}
}
d. Toutes les tables de multiplication
Tout comme les tests, il est tout à fait possible d’imbriquer les boucles, c’estàdire de mettre une boucle dans une
autre boucle, sur autant de niveaux que vous le souhaitez. Vous pouvez envisager 1, 2, 3, n niveaux, mais ça risque
de devenir difficilement lisible. Voici un exemple à deux niveaux. Il s’agit tout simplement de calculer et d’afficher
toutes les tables de multiplication de 1 à 10. Pour cela deux boucles doivent être utilisées. La première va
représenter la table à calculer, de 1 à 10. La seconde à l’intérieur de la première va multiplier la table donnée de 1 à
10. Vous avez donc deux boucles de 1 à 10. Simulez ce qu’il se passe :
q Première boucle, table des 1. Seconde boucle : exécution de 1*1, 1*2, 1*3 … 1*10
q Première boucle, table des 2. Seconde boucle : exécution de 2*1, 2*2, 2*3 … 2*10
q Première boucle, table des 3. Seconde boucle : exécution de 3*1, 3*2, 3*3 … 3*10
q …
q Première boucle, table des 10. Seconde boucle : exécution de 10*1, 10*2, 10*3 …
- 5 -
© ENI Editions - All rigths reserved - Jonifar lina
77
