Précédent
- 1
- 2
bon il me reste le tri et la supprision
j ai un bléme dans le tri
voilà ma fonction :
public static void trier(){
for (int i = 0; i < cmpt; i++) {
if((tab[i].age)>(tab[i+1].age)){
Client t=tab[i];
tab[i]=tab[i+1];
tab[i+1]=t;
}}
}
j ai un bléme dans le tri
voilà ma fonction :
public static void trier(){
for (int i = 0; i < cmpt; i++) {
if((tab[i].age)>(tab[i+1].age)){
Client t=tab[i];
tab[i]=tab[i+1];
tab[i+1]=t;
}}
}
re
j ai preceque terminer mon exercice voilà mon code :
classe client
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
public class Client implements Comparable{
String Nom;
String Prenom;
int age;
int cmpt=0;
Client []tab=new Client[100];
public Client(String nom, String prenom, int age) {
Nom = nom;
Prenom = prenom;
this.age = age;
}
public Client() {
}
public void remplir(){
Scanner in=new Scanner(System.in);
char car =' ';
int i=0;
do{
System.out.println("Entrer le nom du client ?");
Nom=in.next();
System.out.println("Entrer le prenom du client ?");
Prenom=in.next();
System.out.println("Entrer l'age du client ?");
age=in.nextInt();
Client c=new Client(Nom,Prenom,age);
tab[i]=new Client(Nom,Prenom,age);
i++;
cmpt++;
System.out.println("voulez vous continuez à saisir ?");
car=in.next().charAt(0);
}while(car!='n' && car!='N');
}
public String toString(){
return "************Client************\rNom Client : "+Nom+"\r Prenom Client : "+Prenom+"\r Age Client : "+age+"\r*******************************";
}
public void Afficher(){
for (int i = 0; i <cmpt; i++) {
System.out.println(tab[i].toString());
}
}
public void trier(){
for (int i = 0; i < cmpt; i++) {
for (int j =i+1; j < cmpt-1; j++) {
Client t=tab[i];
tab[i]=tab[i+1];
tab[i+1]=t;
}
}
Afficher();
}
public void AjouterClient(){
Scanner in=new Scanner(System.in);
String Nom;
String Prenom;
int age;
int i=0;
System.out.println("Entrer le nom du client ?");
Nom=in.next();
System.out.println("Entrer le prenom du client ?");
Prenom=in.next();
System.out.println("Entrer l'age du client ?");
age=in.nextInt();
Client c=new Client(Nom,Prenom,age);
tab[cmpt++]=new Client(Nom,Prenom,age);
System.out.println("votre Client a bien été ajouter Merci !!");
}
public void supprimer(){
Scanner in=new Scanner(System.in);
System.out.println("entrer l'indice de l element que vous voulez supprimer SVP ?");
int indice=in.nextInt();
for (int i = 0; i < cmpt; i++) {
if(indice==i){
tab[i]=tab[i+1];
cmpt--;
}
}
System.out.println("votre client a bien été supprimer Merci !!");
}
@Override
public int compareTo(Object o) {
Client c=(Client) o;
if(age>c.age) return 1;
else if(age<c.age) return -1;
else if(Nom.compareTo(c.Nom)>0) return 1;
else if(Nom.compareTo(Nom)<0) return -1;
else if(Prenom.compareTo(Prenom)>0) return 1;
else if(Prenom.compareTo(Prenom)<0) return -1;
return 0;
}
}
il me reste un probléme dans le tri j ai implementé l'interface comparable et la methode comaprto ui est en haut dans le code et j ai fait une methodede tri sa fonction et ne génére aucune exception main le probléme que cette methode de tri ne tri pas croissant ou decroissant mais il change les emplacement sans aucune notion croissant ou decroissant voilà comment il me donne l exection
********Menu***********
1.Remplir un tableau de clients
2.Afficher la liste des clients
3.Trier la liste des clients
4.Ajouter un client
5.Supprimer un client et décaler le reste à gauche
6.Quitter
******* ******************
entrez votre choix SVP ?
3
************Client************
Nom Client : sd
Prenom Client : sdf
Age Client : 21
*******************************
************Client************
Nom Client : sqdf
Prenom Client : sqdf
Age Client : 19
*******************************
************Client************
Nom Client : sdf
Prenom Client : sdf
Age Client : 28
*******************************
j ai preceque terminer mon exercice voilà mon code :
classe client
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
public class Client implements Comparable{
String Nom;
String Prenom;
int age;
int cmpt=0;
Client []tab=new Client[100];
public Client(String nom, String prenom, int age) {
Nom = nom;
Prenom = prenom;
this.age = age;
}
public Client() {
}
public void remplir(){
Scanner in=new Scanner(System.in);
char car =' ';
int i=0;
do{
System.out.println("Entrer le nom du client ?");
Nom=in.next();
System.out.println("Entrer le prenom du client ?");
Prenom=in.next();
System.out.println("Entrer l'age du client ?");
age=in.nextInt();
Client c=new Client(Nom,Prenom,age);
tab[i]=new Client(Nom,Prenom,age);
i++;
cmpt++;
System.out.println("voulez vous continuez à saisir ?");
car=in.next().charAt(0);
}while(car!='n' && car!='N');
}
public String toString(){
return "************Client************\rNom Client : "+Nom+"\r Prenom Client : "+Prenom+"\r Age Client : "+age+"\r*******************************";
}
public void Afficher(){
for (int i = 0; i <cmpt; i++) {
System.out.println(tab[i].toString());
}
}
public void trier(){
for (int i = 0; i < cmpt; i++) {
for (int j =i+1; j < cmpt-1; j++) {
Client t=tab[i];
tab[i]=tab[i+1];
tab[i+1]=t;
}
}
Afficher();
}
public void AjouterClient(){
Scanner in=new Scanner(System.in);
String Nom;
String Prenom;
int age;
int i=0;
System.out.println("Entrer le nom du client ?");
Nom=in.next();
System.out.println("Entrer le prenom du client ?");
Prenom=in.next();
System.out.println("Entrer l'age du client ?");
age=in.nextInt();
Client c=new Client(Nom,Prenom,age);
tab[cmpt++]=new Client(Nom,Prenom,age);
System.out.println("votre Client a bien été ajouter Merci !!");
}
public void supprimer(){
Scanner in=new Scanner(System.in);
System.out.println("entrer l'indice de l element que vous voulez supprimer SVP ?");
int indice=in.nextInt();
for (int i = 0; i < cmpt; i++) {
if(indice==i){
tab[i]=tab[i+1];
cmpt--;
}
}
System.out.println("votre client a bien été supprimer Merci !!");
}
@Override
public int compareTo(Object o) {
Client c=(Client) o;
if(age>c.age) return 1;
else if(age<c.age) return -1;
else if(Nom.compareTo(c.Nom)>0) return 1;
else if(Nom.compareTo(Nom)<0) return -1;
else if(Prenom.compareTo(Prenom)>0) return 1;
else if(Prenom.compareTo(Prenom)<0) return -1;
return 0;
}
}
il me reste un probléme dans le tri j ai implementé l'interface comparable et la methode comaprto ui est en haut dans le code et j ai fait une methodede tri sa fonction et ne génére aucune exception main le probléme que cette methode de tri ne tri pas croissant ou decroissant mais il change les emplacement sans aucune notion croissant ou decroissant voilà comment il me donne l exection
********Menu***********
1.Remplir un tableau de clients
2.Afficher la liste des clients
3.Trier la liste des clients
4.Ajouter un client
5.Supprimer un client et décaler le reste à gauche
6.Quitter
******* ******************
entrez votre choix SVP ?
3
************Client************
Nom Client : sd
Prenom Client : sdf
Age Client : 21
*******************************
************Client************
Nom Client : sqdf
Prenom Client : sqdf
Age Client : 19
*******************************
************Client************
Nom Client : sdf
Prenom Client : sdf
Age Client : 28
*******************************
re
j ai preceque terminer mon exercice voilà mon code :
classe client
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
public class Client implements Comparable{
String Nom;
String Prenom;
int age;
int cmpt=0;
Client []tab=new Client[100];
public Client(String nom, String prenom, int age) {
Nom = nom;
Prenom = prenom;
this.age = age;
}
public Client() {
}
public void remplir(){
Scanner in=new Scanner(System.in);
char car =' ';
int i=0;
do{
System.out.println("Entrer le nom du client ?");
Nom=in.next();
System.out.println("Entrer le prenom du client ?");
Prenom=in.next();
System.out.println("Entrer l'age du client ?");
age=in.nextInt();
Client c=new Client(Nom,Prenom,age);
tab[i]=new Client(Nom,Prenom,age);
i++;
cmpt++;
System.out.println("voulez vous continuez à saisir ?");
car=in.next().charAt(0);
}while(car!='n' && car!='N');
}
public String toString(){
return "************Client************\rNom Client : "+Nom+"\r Prenom Client : "+Prenom+"\r Age Client : "+age+"\r*******************************";
}
public void Afficher(){
for (int i = 0; i <cmpt; i++) {
System.out.println(tab[i].toString());
}
}
public void trier(){
for (int i = 0; i < cmpt; i++) {
for (int j =i+1; j < cmpt-1; j++) {
Client t=tab[i];
tab[i]=tab[i+1];
tab[i+1]=t;
}
}
Afficher();
}
public void AjouterClient(){
Scanner in=new Scanner(System.in);
String Nom;
String Prenom;
int age;
int i=0;
System.out.println("Entrer le nom du client ?");
Nom=in.next();
System.out.println("Entrer le prenom du client ?");
Prenom=in.next();
System.out.println("Entrer l'age du client ?");
age=in.nextInt();
Client c=new Client(Nom,Prenom,age);
tab[cmpt++]=new Client(Nom,Prenom,age);
System.out.println("votre Client a bien été ajouter Merci !!");
}
public void supprimer(){
Scanner in=new Scanner(System.in);
System.out.println("entrer l'indice de l element que vous voulez supprimer SVP ?");
int indice=in.nextInt();
for (int i = 0; i < cmpt; i++) {
if(indice==i){
tab[i]=tab[i+1];
cmpt--;
}
}
System.out.println("votre client a bien été supprimer Merci !!");
}
@Override
public int compareTo(Object o) {
Client c=(Client) o;
if(age>c.age) return 1;
else if(age<c.age) return -1;
else if(Nom.compareTo(c.Nom)>0) return 1;
else if(Nom.compareTo(Nom)<0) return -1;
else if(Prenom.compareTo(Prenom)>0) return 1;
else if(Prenom.compareTo(Prenom)<0) return -1;
return 0;
}
}
il me reste un probléme dans le tri j ai implementé l'interface comparable et la methode comaprto ui est en haut dans le code et j ai fait une methodede tri sa fonction et ne génére aucune exception main le probléme que cette methode de tri ne tri pas croissant ou decroissant mais il change les emplacement sans aucune notion croissant ou decroissant voilà comment il me donne l exection
********Menu***********
1.Remplir un tableau de clients
2.Afficher la liste des clients
3.Trier la liste des clients
4.Ajouter un client
5.Supprimer un client et décaler le reste à gauche
6.Quitter
******* ******************
entrez votre choix SVP ?
3
************Client************
Nom Client : sd
Prenom Client : sdf
Age Client : 21
*******************************
************Client************
Nom Client : sqdf
Prenom Client : sqdf
Age Client : 19
*******************************
************Client************
Nom Client : sdf
Prenom Client : sdf
Age Client : 28
*******************************
j ai preceque terminer mon exercice voilà mon code :
classe client
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
public class Client implements Comparable{
String Nom;
String Prenom;
int age;
int cmpt=0;
Client []tab=new Client[100];
public Client(String nom, String prenom, int age) {
Nom = nom;
Prenom = prenom;
this.age = age;
}
public Client() {
}
public void remplir(){
Scanner in=new Scanner(System.in);
char car =' ';
int i=0;
do{
System.out.println("Entrer le nom du client ?");
Nom=in.next();
System.out.println("Entrer le prenom du client ?");
Prenom=in.next();
System.out.println("Entrer l'age du client ?");
age=in.nextInt();
Client c=new Client(Nom,Prenom,age);
tab[i]=new Client(Nom,Prenom,age);
i++;
cmpt++;
System.out.println("voulez vous continuez à saisir ?");
car=in.next().charAt(0);
}while(car!='n' && car!='N');
}
public String toString(){
return "************Client************\rNom Client : "+Nom+"\r Prenom Client : "+Prenom+"\r Age Client : "+age+"\r*******************************";
}
public void Afficher(){
for (int i = 0; i <cmpt; i++) {
System.out.println(tab[i].toString());
}
}
public void trier(){
for (int i = 0; i < cmpt; i++) {
for (int j =i+1; j < cmpt-1; j++) {
Client t=tab[i];
tab[i]=tab[i+1];
tab[i+1]=t;
}
}
Afficher();
}
public void AjouterClient(){
Scanner in=new Scanner(System.in);
String Nom;
String Prenom;
int age;
int i=0;
System.out.println("Entrer le nom du client ?");
Nom=in.next();
System.out.println("Entrer le prenom du client ?");
Prenom=in.next();
System.out.println("Entrer l'age du client ?");
age=in.nextInt();
Client c=new Client(Nom,Prenom,age);
tab[cmpt++]=new Client(Nom,Prenom,age);
System.out.println("votre Client a bien été ajouter Merci !!");
}
public void supprimer(){
Scanner in=new Scanner(System.in);
System.out.println("entrer l'indice de l element que vous voulez supprimer SVP ?");
int indice=in.nextInt();
for (int i = 0; i < cmpt; i++) {
if(indice==i){
tab[i]=tab[i+1];
cmpt--;
}
}
System.out.println("votre client a bien été supprimer Merci !!");
}
@Override
public int compareTo(Object o) {
Client c=(Client) o;
if(age>c.age) return 1;
else if(age<c.age) return -1;
else if(Nom.compareTo(c.Nom)>0) return 1;
else if(Nom.compareTo(Nom)<0) return -1;
else if(Prenom.compareTo(Prenom)>0) return 1;
else if(Prenom.compareTo(Prenom)<0) return -1;
return 0;
}
}
il me reste un probléme dans le tri j ai implementé l'interface comparable et la methode comaprto ui est en haut dans le code et j ai fait une methodede tri sa fonction et ne génére aucune exception main le probléme que cette methode de tri ne tri pas croissant ou decroissant mais il change les emplacement sans aucune notion croissant ou decroissant voilà comment il me donne l exection
********Menu***********
1.Remplir un tableau de clients
2.Afficher la liste des clients
3.Trier la liste des clients
4.Ajouter un client
5.Supprimer un client et décaler le reste à gauche
6.Quitter
******* ******************
entrez votre choix SVP ?
3
************Client************
Nom Client : sd
Prenom Client : sdf
Age Client : 21
*******************************
************Client************
Nom Client : sqdf
Prenom Client : sqdf
Age Client : 19
*******************************
************Client************
Nom Client : sdf
Prenom Client : sdf
Age Client : 28
*******************************
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
public void trier(){
for (int i = 0; i < cmpt; i++) {
for (int j =i+1; j < cmpt-1; j++) {
Client t=tab[i];
tab[i]=tab[i+1];
tab[i+1]=t;
}
}
Afficher();
}
la methode de tri et l implementation de lintreface comaparable pour utiliser la methode comparto
public int compareTo(Object o) {
Client c=(Client) o;
if(age>c.age) return 1;
else if(age<c.age) return -1;
else if(Nom.compareTo(c.Nom)>0) return 1;
else if(Nom.compareTo(Nom)<0) return -1;
else if(Prenom.compareTo(Prenom)>0) return 1;
else if(Prenom.compareTo(Prenom)<0) return -1;
return 0;
}
quand j' execute il ne tri pas le tableau ni par ordre croissant ni par ordre decroissant il me donne un tri en desordre
je ne sais pas c quoi le bléme pouvez m aider pour le dernier pas de mon exercice et merci d avance
for (int i = 0; i < cmpt; i++) {
for (int j =i+1; j < cmpt-1; j++) {
Client t=tab[i];
tab[i]=tab[i+1];
tab[i+1]=t;
}
}
Afficher();
}
la methode de tri et l implementation de lintreface comaparable pour utiliser la methode comparto
public int compareTo(Object o) {
Client c=(Client) o;
if(age>c.age) return 1;
else if(age<c.age) return -1;
else if(Nom.compareTo(c.Nom)>0) return 1;
else if(Nom.compareTo(Nom)<0) return -1;
else if(Prenom.compareTo(Prenom)>0) return 1;
else if(Prenom.compareTo(Prenom)<0) return -1;
return 0;
}
quand j' execute il ne tri pas le tableau ni par ordre croissant ni par ordre decroissant il me donne un tri en desordre
je ne sais pas c quoi le bléme pouvez m aider pour le dernier pas de mon exercice et merci d avance
Précédent
- 1
- 2