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
Précédent

- 77/220

Suivant