Vous êtes sur la page 1sur 6

Ministère de l’Enseignement Supérieur Institut Supérieur d’Informatique

et de Recherche Scientifique

P.O.O (Java) 
TP4

Exercice 1 :

Réaliser un programme java qui permet de conjuguer au présent les verbes du


premier groupe (regarder, afficher, dessiner, etc.).

Le programme est composé des classes suivantes :


 La classe VerbeGroupe1 : elle contient l’attribut verbeAConjuger et la
méthode conjuguerVerbe() qui permet de conjuguer le verbe.
 La classe Test : A partir de la méthode main, entrez le verbe au niveau de la
console et utilisez la méthode conjuguerVerbe() de la classe VerbeGroupe1.

Votre programme doit fonctionner selon le modèle suivant :


Entrez un verbe :
Regarder
Le verbe "regarder" au présent :
Je regarde
Tu regardes
Il/Elle regarde
Nous regardons
Vous regardez
Ils/Elles regardent

Remarque : le programme doit vérifier si le verbe saisi est un verbe du premier


groupe. Sinon, il affiche le message suivant : « Désolé, ce n’est pas un verbe du
premier groupe ! ».

N.B. : la réalisation de ce programme nécessite l’utilisation des tableaux

1/6 Année Universitaire 2021/2022


Ministère de l’Enseignement Supérieur Institut Supérieur d’Informatique
et de Recherche Scientifique

Correction :
La classe VerbeGroupe1 :
package exercice1;
public class VerbeGroupe1 {

public String verbeAConjuguer ;


public void conjuguerVerbe() {
int indice = verbeAConjuger.length() - 1; //regarder ; indice = 7;
String det = verbeAConjuguer.substring(indice-1); //regarder ; det = er

if (det.equals("er")) {
String p1 = verbeAConjuguer.substring(0, indice - 1); //regarder ; p1 = regard
String sujet[] = { "Je", "Tu", "Il/Elle", "Nous", "Vous", "Ils/Elles" };
String fin[] = new String[6];
fin[0] = "e";
fin[1] = "es";
fin[2] = "e";
fin[3] = "ons";
fin[4] = "ez";
fin[5] = "ent";
for (int i = 0; i < 6; i++) {
System.out.print(sujet[i] + " " + p1 + fin[i] + "\n");
}
}
else {
System.out.println("Désolé, ce n'est pas un verbe du premier groupe");
}
}
}

La classe Test :
package exercice1;
import java.util.Scanner;

public class Test1 {

public static void main(String[] args) {


VerbeGroupe1 v = new VerbeGroupe1();
Scanner sc = new Scanner(System.in);
System.out.println("Entrez le verbe : ");
v.verbeAConjuguer = sc.next();
v.conjuguerVerbe();
sc.close();

}
}

2/6 Année Universitaire 2021/2022


Ministère de l’Enseignement Supérieur Institut Supérieur d’Informatique
et de Recherche Scientifique

Exercice 2 :
Modifier le programme de l’exercice 1 afin de conjuguer les verbes suivants :
 regarder et dessiner (verbe du premier groupe)
 choisir et finir (verbe du deuxième groupe)
 confondre et descendre (verbe du troisième groupe)

Remarque : le programme n’accepte que les verbes mentionnés ci-dessus. Sinon, il


affiche le message suivant : « Désolé, il faut conjuguer que les verbes de l'énoncé !».

Correction :

La classe Verbe :
package exercice2;
public class Verbe {

public String nom;


public void conjuguer() {
String verbes[] = { "regarder", "dessiner", "choisir", "finir",
"confondre", "descendre" };
int indice = nom.length() - 1;
String det = nom.substring(indice - 1); // er ou ir ou re
String p1 = nom.substring(0, indice - 1);
String sujet[] = { "Je", "Tu", "Il/Elle", "Nous", "Vous", "Ils/Elles" };
String fin[] = new String[6];
switch (det) {
case "er":
fin[0] = "e";
fin[1] = "es";
fin[2] = "e";
fin[3] = "ons";
fin[4] = "ez";
fin[5] = "ent";
break;
case "ir": // deuxième groupe : choisir, finir,...
fin[0] = "is";
fin[1] = "is";
fin[2] = "it";
fin[3] = "issons";
fin[4] = "issez";
fin[5] = "issent";
break;
case "re": // troisième groupe : confondre, descendre
fin[0] = "s";

3/6 Année Universitaire 2021/2022


Ministère de l’Enseignement Supérieur Institut Supérieur d’Informatique
et de Recherche Scientifique

fin[1] = "s";
fin[2] = "";
fin[3] = "ons";
fin[4] = "ez";
fin[5] = "ent";
break;
default:
System.out.println("verbe invalide !");
}
boolean trouver = true;
for (String verbe : verbes) {
if (nom.equals(verbe)) {
for (int i = 0; i < 6; i++) {
System.out.print(sujet[i] + " " + p1 +
fin[i] + "\n");
}
} else {
trouver = false;
}
}
if (!trouver) {
System.out.println("Désolé, il faut saisir que les
verbes de l'énoncé !");

}
}

Exercice 3 :

Réaliser un programme java qui permet de compter et afficher le nombre de voyelles


d’un mot saisi au niveau de la console. Voici un exemple qui montre le résultat de ce
programme :

Entrez le mot :
Anticonstitutionnellement

a existe 1 fois.
e existe 3 fois.
i existe 3 fois.
u existe 1 fois.
o existe 2 fois.
y existe 0 fois.

4/6 Année Universitaire 2021/2022


Ministère de l’Enseignement Supérieur Institut Supérieur d’Informatique
et de Recherche Scientifique

Correction :
La classe CompterVoyelles :
package exercice3;
public class CompterVoyelles {
public char voyelles[] = { 'a', 'e', 'i', 'u', 'o', 'y' };
public int compte[] = { 0, 0, 0, 0, 0, 0 };

public void compter(String mot) {

for (int i = 0; i < voyelles.length; i++) {


int k = 0;
for (int j = 0; j < mot.length(); j++) {
if (voyelles[i] == mot.charAt(j)) {
compte[i] = ++k;
}
}
}

for (int i = 0; i < 6; i++) {


System.out.println(voyelles[i] + " existe " + compte[i] + " fois.");
}
}
}

La classe Test2 :

package exercice2;
import java.util.Scanner;
public class Test2 {

public static void main(String[] args) {


Verbe v = new Verbe();
Scanner sc = new Scanner(System.in);
System.out.println("Entrez le verbe : ");
v.nom = sc.next();
v.conjuguer();
sc.close();

}
}

Exercice 4 :
Réaliser un programme java qui permet de crypter et décrypter un mot. Voir
l’exemple suivant :

Entrez le mot à crypter :


azerty
Mot crypté : y839t839r839e839z839a839

5/6 Année Universitaire 2021/2022


Ministère de l’Enseignement Supérieur Institut Supérieur d’Informatique
et de Recherche Scientifique

Mot décrypté : azerty

Correction :
La classe Cryptage :

package exercice4;
public class Cryptage {

public String crypter(String origine) {


String crypte = "";
int taille = origine.length();
for (int i = taille - 1; i >= 0; i--) {
crypte = crypte + origine.charAt(i) + "839";
}
return crypte;
}

public String decrypter(String crypte) {


String origine = "";
crypte = crypte.replace("839", "");
int taille = crypte.length();
// System.out.println(crypte);
for (int i = taille - 1; i >= 0; i--) {
origine = origine + crypte.charAt(i);
}
return origine;
}
}

La classe Test4 :
package exercice4;
import java.util.Scanner;

public class Test4 {


public static void main(String[] args) {
Cryptage cr = new Cryptage();
Scanner sc = new Scanner(System.in);
System.out.println("Entrez le mot à crypter : ");
String origine = sc.next();
String crypte = cr.crypter(origine);
System.out.println("Mot crypté : "+crypte);
String origine2 = cr.decrypter(crypte);
System.out.println("Mot décrypté : "+origine2);
sc.close();
}
}

6/6 Année Universitaire 2021/2022

Vous aimerez peut-être aussi