• Aucun résultat trouvé

Document de travail pour le TP2Ressources : test1.java, essaiScanner.java

N/A
N/A
Protected

Academic year: 2022

Partager "Document de travail pour le TP2Ressources : test1.java, essaiScanner.java"

Copied!
2
0
0

Texte intégral

(1)

Module Info31 – L2 Sciences & Techniques Université de Bourgogne Dominique Michelucci

Document de travail pour le TP2 Ressources : test1.java, essaiScanner.java (question 1) ;

matrices.java (question 2) ;

1- Envoi d'information à un programme Java

Vous devez tester deux méthodes permettant d'envoyer des informations à un programme Java lors de son exécution : le passage de paramètres au lancement et la saisie au clavier pendant l'exécution.

Passage de paramètres- pour récupérer dans un programme Java des paramètres fournis lors de l'exécution, vous pouvez utiliser la variable du programme main(), souvent notée args. Chaque paramètre est récupéré sous forme d'une chaîne de caractères (args[0] pour le premier, args[1] pour le second, etc.).

Vous pouvez utiliser :

args.length pour connaître le nombre de paramètres passés au programme,

– diverses fonctions de conversion usuelles : Integer.parseInt(), String.charAt(), String.valueOf() pour ramener le paramètre au format attendu (par exemple, un caractère sera à l'indice 0 dans la chaîne de caractères du paramètre qui le contient),

– la fonction toUpperCase() qui, appliquée à une variable de classe String, transforme une chaîne de caractères en majuscules (parfois utile pour limiter les erreurs de saisie des paramètres).

Par exemple, l'extrait de programme ci-dessous récupère deux paramètres (un entier dans la variable n et un caractère majuscule dans la variable cc) :

public static void main (String[] args) { int n = Integer.parseInt(args[0]);

char cc = args[1].toUpperCase().charAt(0);

...

Vous trouverez un exemple dans le fichier test1.java.

Sous Windows ou Linux, vous pouvez utiliser la ligne de commande pour lancer l'exécution de votre programme.

Si vous souhaitez tester l'envoi de paramètres à un programme avec NetBeans : pour donner la liste de paramètres, vous devez utiliser le menu Run, choisir Set Project Configuration puis Customize et saisir vos paramètres dans la zone « Arguments ». Vous pouvez ensuite lancer l'exécution de votre programme.

Saisie au clavier- pour permettre à un utilisateur de saisir au clavier des données, vous pouvez utiliser la classe Scanner. Vous disposez de méthodes pour la lecture formatée (nextBoolean() nextInt() nextLong() nextFloat() nextDouble()) mais aussi de méthodes de lecture sous forme de String (du prochain élément

next() ou de la fin de ligne nextLine()).

Schéma d'utilisation :

Scanner essai = null;

try { essai = new Scanner(System.in);

if ( essai != null)

{ // début des lectures

ville=essai.next(); // un String heure=essai.nextInt(); // un entier

essai.close() ; }

}

catch ( Exception e)

{ e.printStackTrace();

}

Voir un exemple de programme : essaiScanner.java

TP2-1-

(2)

Module Info31 – L2 Sciences & Techniques Université de Bourgogne Dominique Michelucci

Voir les documentations :

– « classe Scanner », N . B. Dale, Université du Texas, à l'adresse

http://www.cs.utexas.edu/users/ndale/Scanner.html – documentation Oracle, à l'adresse:

http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html

2- Puissance rapide

a) écrivez et testez un programme récursif de puissance rapide pour un entier. La puissance doit être passée en paramètre à votre programme à l'exécution.

b) testez les fonctions de multiplications de matrices et de matrice-vecteur qui vous sont fournies dans le fichier matrices.java.

c) écrivez et testez un programme récursif de puissance rapide pour une matrice. La puissance doit être passée en paramètre à votre programme à l'exécution.

3- Fibonacci

a) Ecrivez et testez un programme récursif de calcul de la suite de Fibonacci. Comparez vos résultats avec, par exemple :

- les valeurs 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987

1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 - les résultats du programme test1.java qui vous est fourni

b) utilisez les fonctions de l'exercice 2) pour programmer le calcul matriciel de la suite de Fibonacci.

4- Cascade des appels récursifs

Programmez et testez les deux calculs récursifs qui affichent un par un, respectivement à l'endroit et à l'envers, les chiffres constituant un entier donné.

5- Tours de Hanoï

Ecrivez et testez un programme récursif affichant les déplacements à effectuer pour les tours de Hanoï. Le nombre de galets sera passé en paramètre au programme. Les tours sont D (départ), I (intermédiaire), A (arrivée). Les déplacements élémentaires sont affichés sous la forme D → A

D → I I → A ...

En Java, pour afficher la flèche (→) avec une instruction System.out.println(), vous devez utiliser son codage unicode " \u2192 ".

6- Fonction d'Ackerman

a) Allez voir une table des premières valeurs de la fonction d'Ackerman, par exemple à l'adresse

http://www-users.cs.york.ac.uk/susan/cyc/a/ackermnn.htm.

b) programmez et testez le calcul de la fonction Ackerman.

TP2-2-

Références

Documents relatifs

Dans nos exemples, ils sont inclus systématiquement pour les classes Personne, Utilisateur et Membre (même s'ils ne sont pas tous utilisés.. dans le contexte de notre

Aggregation. If a project is made of a modules, Maven thinks about the modules as about separated projects which are aggregated into another project called multi-module project.

Returns the index in this list of the first occurrence of the specified element, or -1 if the List does not contain this element. Retourner l’indice de la première occurence

Epreuve Classe Examinateur Sujet n° Coef.. 1pt 9) En utilisant la fonction ci-dessus, écrire un algorithme qui demande 10 nombres à l’utilisateur en les stockant dans un

ü pour pouvoir utiliser la JDK, il faut paramétrer le PATH pour l’outil Java et le CLASSPATH pour les classes de l’utilisateur}.

ü java est l’interpréteur de java, c’est la commande à utiliser pour exécuter un programme java1. ü jdb est le débogueur de java, c’est un l’outil utilisé pour débogué

Une classe est l’abstraction d’un ensemble d’objets qui possèdent une structure identique (attributs) et un même comportement (opérations, méthodes). Un objet est une

– écrire et tester le programme de création du triangle de Penrose vu en TD, – faire une copie d'écran de la fenêtre graphique que génère votre programme, – laisser dans