Ministère de l’Enseignement Supérieur, de la Recherche Scientifique
et des Technologies de l'Information et de la Communication
Université de Carthage
Faculté des Sciences
de Bizerte
Département
Informatique
Classes : SI2-B gTP2
Matière : PROGRAMMATION ORIENTEE OBJET
Enseignants : W. Fantazi
A-U : 15/16
Semaine du : 24/11/2014
Durée : 1 semaine
TP JAVA N°2
Exercice 1 :
1) Compléter la squelette de la classe ParcoursTableau présentée ci-dessous : class
ParcoursTableau { Private int [] tab ; //constructeur : alloue un tableau de dimension n
ParcoursTableau (int n) { //... }
/méthode remplir : remplit le tableau par des valeurs générés aléatoirement entre 0 et 100 /
void remplir() { //... }
/* méthode moyenne : calcule la moyenne des éléments du tableau
*/ float moyenne () { //... }
/*méthode somme : calcule la somme des éléments du tableau
*/ int somme () { //... }
/*méthode max : retourne la plus grande valeur dans le tableau
*/ int max() { //... }
/*méthode min : retourne la plus petite valeur dans le tableau
*/ int min () { //... }
/*méthode recherche : recherche un élément dans le tableau, retourne son indice s'il est trouvé
et -1 sinon
Publicité
*/ int recherche (int e) { //... }
/*méthode affiche : affiche sur écran les éléments du tableau
*/ void affiche() { //... } }
2) Ecrire la classe TestParcoursTableau pour tester toutes les méthodes définies plus haut.
Exercice 2 :
On appelle palindrome un mot qui se lit de la même façon de gauche à droite ou de droite à
gauche par exemple rotor, elle. On souhaite écrire un programme qui teste si un mot est un
palindrome ou non.
Exercice 3 :
1) Implémenter une classe chaîne offrant les méthodes suivantes :
nbr_mot : qui détermine le nombre des mots d’une chaîne de caractère.
cons_voy : qui permet d’insérer les voyelles d’une chaîne dans un tableau VOY et les
consonnes dans un autre tableau CONS, enfin afficher le résultat.
numerique : qui permet d’afficher sur l’écran seulement les caractères numériques
d’une chaîne.
2) Ajouter la méthode main pour tester les méthodes ci-dessus.
1
import java.io.*;
public class chaine{
public static void main(String []arg){
...
}//fin main
//Définition de la méthode nbr_mot
public static int nbr_mot(String ch){
...
}
//Définition de la méthode cons_voy
public static void cons_voy (String ch){
...
}
Publicité
//Définition de la méthode numerique
public static String numerique (String ch){
...
}
}//fin de la classe chaine
Corrction Exercice 03 :
import java.util.Scanner;
public class chaine{
public static int nbr_mot(String ch)
{
int n = 0;
// pour ne pas compter les espaces de début ni de fin 'ch.trim()'
String [] mots = ch.trim().split(" ");
for (int i = 0; i < mots.length; i++)
{if(!mots[i].equals("")) n++; }
return (n);
}
/////////////////////////////
public static void cons_voy(String ch)
{
//conversion mot lu en tableau
char[] phrase=ch.toCharArray();
//creation de deux table tab_voy et tab_cons
2
Ministère de l’Enseignement Supérieur, de la Recherche Scientifique
et des Technologies de l'Information et de la Communication
Université de Carthage
Faculté des Sciences
de Bizerte
Département
Publicité
Informatique
int l=ch.length();
char[] tab_voy=new char[l];
char[] tab_cons=new char[l];
int ind_c=0;
int ind_v=0;
//boucle sur le tableau
for (int ind=0;ind<l;ind++)
{char cx=phrase[ind];
if (cx=='a'||cx=='e'||cx=='i'||cx=='o'||cx=='u'|cx=='y')
{tab_voy[ind_v]=cx;
ind_v++;}
if(cx=='b'||cx=='c'||cx=='d'||cx=='f'||cx=='g'||cx=='h'||cx=='j'||cx=='k'||c
x=='l'||cx=='m'
||cx=='n'|cx=='p'||
cx=='q'||cx=='r'||cx=='s'||cx=='t'||cx=='v'|cx=='x'||cx=='z')
{tab_cons[ind_c]=cx;
ind_c++;}}
//afficher tableau des voyelles
System.out.print("\nLes voyelles :\t");
for (int i=0;i<ind_v;i++)
System.out.print("\t"+tab_voy[i]);
//afficher tableau des consonnes
System.out.print("\nLes consonnes :\t");
for (int i=0;i<ind_c;i++)
System.out.print("\t"+tab_cons[i]);
}
////////////////////////////////////////////
public static String numerique(String ch)
{
Publicité
String ch_num="";
int index = 0;
while ( index < ch.length())
{char carac = ch.charAt(index);
if (carac >='0' && carac <='9')
ch_num=ch_num+String.valueOf(carac);
return(ch_num);
}
index++;}
///////////////////////////////////////////////////////
public static void main(String[] arg)
{
Scanner lectureclavier= new Scanner(System.in);
String texte =lectureclavier.nextLine();
//texte.toLowerCase();
//test de la méthode nbr_mot
int my_val=nbr_mot(texte);
System.out.println("\nLe nbre de mot est "+my_val);
//test de la méthode cons_voy
cons_voy(texte);
3
//test de la méthode numerique
String txt=numerique(texte);
System.out.println("\n\n Les caractères numériques :"+txt);
}}
4