ING 1 - POO Java année 2016 -2017 Correction Rappel Syntaxe

ING 1 - POO Java année 2016 -2017
Correction
TD n°1
Rappel Syntaxe
En Java, la boucle pour a la forme suivante :
for (var = b1 ; var <= b2 ; var = var + val)
instructions ou bloc d’instructions
Exemple :
int i ;
for (i=1 ; i<= n ; i= i+1)
System.out.println.println(‘‘Iteration numero ‘‘+ i) ;
2. En Java, la boucle tant que a la forme suivante :
while (condition) instructions ou bloc d’instructions
Exemple :
int n = 0 ;
while(n * n < K) {
n++ ; System.out..println(n);
}
Boucle For Exercice 1 :
Affichage
1. Écrire un programme qui affiche une ligne contenant n symboles *, n étant entré par
l’utilisateur
2. Écrire un programme qui affiche un carré plein de n par n.
public class Ex0101 {
public static void main(String [] args){
nal int n = 15;
for(int i = 0; i < n; i++){
for(int j = 0; j < n; j++)
System.out.print("*");
System.out.print("\n");
}
}
}
Exercice 2 : Puissance d’un nombre
1. écrire un programme qui calcule la nième puissance d’un nombre x entré par l’utilisateur
2,53 = 15,625
import java.util.Scanner;
public class Ex0102 {
/**
Calcul de la puissance
n-ième d'un nombre rentré par l'utilisateur */
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
double x;
int n;
System.out.print("Entrez le nombre ");
x = sc.nextDouble();
System.out.print("Entrez la puissance ");
n = sc.nextInt();
double resultat = 1.0;
for(int i = 1; i <= n; i++)
resultat *= x;
System.out.println("\n" + x + "^" + n + "=" +resultat);
}
}
Exercice 3 : Une suite
écrire un programme qui calcule la somme des carrés des n premiers nombres pairs.
Par exemple : 22 + 42 +62 =
Exercice 4 : deux suites
On définit trois suites :
A0=1B0=
1
2C0=1
4
An+1=( An+Bn)/2Bn+1=
AnBnCn+1=Cn2n((AnBn)
2)
On admet que
lim
n
((An+Bn)2
4Cn)
converge vers
π
Écrire le programme qui calcule l’approximation de
π
Note/Rappel : la méthode Math.sqrt(x) calcule la racine carrée de x
Note supplémentaire : visiblement comme cela a été vu en TP, la suite ne converge pas du tout vers
π
!
import java.util.Scanner;
public class Ex0104 {
/**
Calcul de la puissance
n-ième d'un nombre rentré par l'utilisateur */
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
double a,b,c;
int iter;
a = 1.0;
b = Math.sqrt(1.0/2.0);
c = 1.0/4.0;
System.out.println("Entrez le nombre d'itérations ");
iter = sc.nextInt();
double ancienA, ancienB;
for(int i = 1; i < iter; i++){
ancienA = a;
ancienB = b;
a = (a + b)/2.0;
b = Math.sqrt(ancienA*ancienB);
c = c - Math.pow(2.0,i)*((ancienA - ancienB)/2.0)*((ancienA - ancienB)/2.0);
}
double resultat = (a + b)*(a + b)/(4.0 * c);
System.out.println(resultat);
}
}
Exercice 5 : Boucle while : la suite de Syracuse
La suite de Syracuse est définie de la manière suivante à partir d’un entier n saisi au clavier
U0=n
Un+1=Un/2si n est pair
Un+1=3Un+1sinon
Écrire un programme qui affiche tous les termes de la suite de Syracuse jusqu’au moment où celle-
ci arrive à la valeur 1. On n’est pas certain que la suite converge vers 1 mais on a jamais jusqu’à
maintenant trouvé de contre-exemple
import java.util.Scanner;
public class Ex0105 {
// Suite de Syracuse
public static void main(String [] args){
Scanner sc = new Scanner(System.in);
System.out.print("Entrez un entier ");
int nombre = sc.nextInt();
while (nombre != 1){
System.out.print(nombre + " ");
// cas o¨ le nombre est pair ou impair
if ((nombre % 2) == 0)
nombre /= 2;
else
nombre = 3*nombre + 1;
}
System.out.println(nombre);
}
}
1 / 5 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !