• Aucun résultat trouvé

Java DUT 1 Feuille TD7 Université Paris-Est Marne-la-Vallée

N/A
N/A
Protected

Academic year: 2022

Partager "Java DUT 1 Feuille TD7 Université Paris-Est Marne-la-Vallée"

Copied!
2
0
0

Texte intégral

(1)

Java DUT 1 Feuille TD7 Université Paris-Est Marne-la-Vallée

Exercice 1.—

Flots d’octets en lecture

a) Tester le programme suivant. Que fait-il ? import java.io.*;

public class ReadTest {

public static void main(String[] args){

try {

int i = System.in.read();

System.out.println(i);

} catch (IOException e) {};

} }

b) Modifiez le pour qu’il lise une ligne de caractères entrée au clavier, cara- tère par caractère, et affiche ensuite le code ASCII de chaque caractère de la ligne. La ligne se termine par le caractère de passage à la ligne\n.

Exercice 2.— Lecture d’entiers avec la classeScanner.

a) Que fait la méthodemain de la classe suivante ? import java.util.*;

class IntRead {

public static void main (String[] args) { Scanner sc = new Scanner(System.in);

int i;

if (sc.hasNext()){

i = sc.nextInt();

System.out.println(i);

}

sc.close();

} }

b) Modifier cette méthode pour pouvoir lire plusieurs entiers entrés au cla- vier.

Exercice 3.— Lecture de mots avec la classeScanner.

a) Ecrire une méthode main dans une classe StringRead qui permet de lire des mots entrés au clavier et de les afficher. On complètera le code suivant.

import java.util.*;

class StringRead {

public static void main (String[] args) { Scanner sc = new Scanner(System.in);

String s;

...

System.out.println(s);

1

(2)

sc.close();

} }

b) Modifier cette méthode pour afficher les mots en les mettant en majus- cule.

Exercice 4.—

Lire un texte sur l’entrée standard.

a) Que fait la méthode main de la classe suivante ? La méthode String readLine()de la classeBufferedReaderretourne la ligne de caractères suivante dans le flot (le caractère de fin de ligne non compris) sous forme deString.

class Test {

public static void main(String[] args) throws IOException { BufferedReader in = null;

try {

in = new BufferedReader(

new InputStreamReader(System.in));

String s;

if ((s = in.readLine()) != null) { System.out.println(s);

}

} catch (IOException e) { } finally {

if (in != null) in.close();

} } }

b) Lethrowsdans l’entête de la méthodemain est-il nécessaire ?

c) Pourquoi la ligneBufferedReader in = null;est-elle en dehors du bloc try-catch ?

d) Modifier le programme pour lire toutes les lignes et les afficher.

e) Modifier le programme pour lire toutes les lignes et les afficher en mettant les mots en majuscule.

Exercice 5.—

Ecrire des classes et méthodes pour lire un fichier texte et afficher ensuite un histogramme du texte : la liste des mots présents dans le texte et pour chacun d’eux, leur nombre d’occurences.

On pourra traitre l’entrée standard et utiliser les redirection pour traiter un fichier.

2

Références

Documents relatifs

La classe Index sera utilisée par la classe IndexTest suivante public class IndexTest {.. public static

Aide. Les arguments mot1 et mot2 seront les éléments d’indice 0 et 1 du tableau args qui contient des chaînes de caractères. Pour mettre une chaîne de caractères en majuscule,

d) Écrire dans la classe Segment une méthode toString permettant d’afficher les deux points d’un segment. On utilisera la méthode toString de Pixel selon la technique de

pour que le programme lise au clavier une chaîne de caractères puis l’af- fiche en la mettant en majuscule. On trouvera la documentation sur la classe String du packetage java.lang

c) Écrire une classe SegmentTest destinée à tester les classes Segment et Pixel. Elle contiendra une méthode main où on crée un segment s1 avec le premier constructeur et un segment

On définit un classe Polygon qui représente un polygone défini par une suite de points. Les Polygon peuvent avoir un nombre différent de points mais on veut que le nombre maximal

On initialisera le champ author avec "no author" dans ce cas. Comment le compilateur fait-il pour savoir quel constructeur appeler ?. e) Comment faire maintenant pour que

g) Sachant qu’un carnivore à besoin du quart de son poids en viande par semaine, écrire une méthode getMeatForAWeek dans la classe Animal qui renvoit la quantité de viande