Séance : TD #1 SRC Meaux

Transcription

Séance : TD #1 SRC Meaux
Séance : TD #1
SRC Meaux
1. Programme avec utilisation d'un argument
Ecrire le programme suivant dans un éditeur de texte. Compiler (javac Bonjour) et
exécuter avec un argument (java Bonjour toto).
public class Bonjour {
public static void main(String args[]) {
System.out.println("Bonjour");
if(args.length>0)
System.out.println(args[0]);
} //main()
} // Bonjour
2. Afficheur d'arguments passés sur la ligne de commande
Saisir le programme, compiler (javac Arguments) et exécuter (java Arguments 45 6
99 23).
public class Arguments {
public static void main(String args[]) {
for(int i=0; i<args.length; i++)
System.out.println( (i+1)+" : "+ args[i]);
} // main()
} // Arguments
3. Additionneur d'entiers
Saisir le programme, compiler (javac Additionneur) et exécuter (java Additionneur 5
6 7 8 9).
public class Additionneur {
public static void main(String args[]) {
int somme=0;
for( int i=0; i<args.length;i++)
somme += Integer.parseInt(args[i]);
System.out.println("Somme ="+ somme);
} // main()
} //Additionneur
4. Additionneur d'euros
Comprendre le programme suivant:
public class AddEuros {
public static void main(String args[]) {
double somme=0.0;
for( int i=0; i<args.length;i++)
somme += arrondi(Double.parseDouble(args[i]));
System.out.println("Somme ="+arrondi(somme));
}//main()
static double arrondi(double d) {
return Math.round(d*100)/100.0;
} //arrondi()
}// AddEuros
5. Pour obtenir des valeurs aléatoires, on peut utiliser l'instruction Math.random().
Celle-ci va renvoyer une valeur réelle (une variable du type double) en 0 et 1. On peut
donc obetnir une valeur entre 0 et 100 avec l'instruction suivante: Math.random()*100;
Par exemple :
double val;
val = Math.random()*100;
Si on veut des valeurs entières, on exploite le transtypage ("casting") :
int val;
val = (int) Math.random()*100;
Vous devez écrire un programme qui va afficher 10 valeurs aléatoires comprises
entre 2 et 18.
Vous devez ensuite afficher le minimum, le maximum et la moyenne des 10
valeurs (sans l'utilisation d'un tableau).
6. Ecrire un programme qui affiche les 10 premiers nombres premiers en suivant
la méthode suivante: dans le programme principal (main) vous allez tester des
valeurs entières (en partant de 1 par exemple) et appeller une fonction
booléenne, premier(int n), qui va tester si le nombre est premier ou pas. Pour
cela, il suffit de lui trouver un diviseur autre que 1 et lui-même, dans ce cas il
n'est pas premier. Si il n'existe pas de tel diviseur alors le nombre est permier.
7. Décomposition d'un cube en somme de nombres impaires. Le mathématicien
grec Nikomakhos (1er siècle après JC) écrit dans son Introduction arithmétique
que tout cube est égal à la somme de nombres impairs consécutifs.
Par exemple :
13 = 1 = 1
23 = 8 = 3 + 5
33 = 27 = 7 + 9 + 11
43 = 64 = 31 + 33
= 1 + 3 +5 +7 +9 + 11 + 13
= 13 + 15 + 17 + 19
Vous devez écrire un programme proposant d'élever la valeur 5 au cube et de
chercher une décomposition en somme de nombres impaires.