Urgent ! Aide en Java
Fermé
yoyo1985
Messages postés
11
Date d'inscription
dimanche 26 septembre 2004
Statut
Membre
Dernière intervention
10 décembre 2004
-
24 nov. 2004 à 00:37
choubaka Messages postés 39376 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 29 avril 2024 - 5 déc. 2007 à 00:17
choubaka Messages postés 39376 Date d'inscription jeudi 4 avril 2002 Statut Modérateur Dernière intervention 29 avril 2024 - 5 déc. 2007 à 00:17
A voir également:
- Urgent ! Aide en Java
- Waptrick java football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Jeux java itel football - Télécharger - Jeux vidéo
- Jeux java itel 5360 - Forum Mobile
- Waptrick java ✓ - Forum Mobile
9 réponses
choubaka
Messages postés
39376
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
29 avril 2024
2 101
24 nov. 2004 à 08:03
24 nov. 2004 à 08:03
Salut yoyo
c'est un programme très simple à réaliser, n'ai pas peur, lance toi...
dès que tu as quelques lignes de codes à nous montrer, n'hésite pas, montre-les nous, on te conseillera avec plaisir... Mais tu comprendra que nous ne pouvons pas tout faire à ta place..
Maintenant, je comprends pas très bien ce que tu veux dire par utiliser une énumaration pour les couleurs ????????????
Deuxième chose, le fait d'incrémenter le nombre de voitures créées dans la classe Voiture est à mon avis impossible, vu que lorsque une instance de Voiture sera créée, la variable statique reprendra sa valeur initiale ....
Chouba,
Pochard d'assaut ..
c'est un programme très simple à réaliser, n'ai pas peur, lance toi...
dès que tu as quelques lignes de codes à nous montrer, n'hésite pas, montre-les nous, on te conseillera avec plaisir... Mais tu comprendra que nous ne pouvons pas tout faire à ta place..
Maintenant, je comprends pas très bien ce que tu veux dire par utiliser une énumaration pour les couleurs ????????????
Deuxième chose, le fait d'incrémenter le nombre de voitures créées dans la classe Voiture est à mon avis impossible, vu que lorsque une instance de Voiture sera créée, la variable statique reprendra sa valeur initiale ....
Chouba,
Pochard d'assaut ..
yoyo1985
Messages postés
11
Date d'inscription
dimanche 26 septembre 2004
Statut
Membre
Dernière intervention
10 décembre 2004
1
24 nov. 2004 à 23:43
24 nov. 2004 à 23:43
salut !!
j'ai donc fais les deux classes suivantes... le problème, c'est que je dois implanter l'interface comparable et je ne sais pas comment faire...
merci de l'aide que vous pourrez m'apporter...
Classe Voiture :
public class Voiture
{
private enum couleur {rouge, vert, jaune, noir, autre};
private String m_marque;
private int m_annee, m_couleur;
private couleur m_app;
public static int m_nbrvoiture = 0;
/* Premier constructeur (sans paramètres) */
public Voiture()
{
m_nbrvoiture++;
}
/* Deuxième constructeur (avec paramètres) */
public Voiture (String marq, int an,int color)
{
m_marque = marq;
m_annee = an;
m_nbrvoiture++;
m_couleur = color;
}
/* Méthode Couleurs */
public couleur Couleurs()
{
switch (m_couleur)
{
case 1:
m_app = couleur.rouge;
break;
case 2:
m_app = couleur.vert;
break;
case 3:
m_app = couleur.jaune;
break;
case 4:
m_app = couleur.noir;
break;
case 5:
m_app = couleur.autre;
break;
default :
}
return m_app;
}
/* Méthode pour retourner le nombre de voitures contenues dans la liste */
public int getNbrvoiture()
{
return m_nbrvoiture;
}
/* Méthode pour retourner l'annéee de la voiture */
public int Annee()
{
return m_annee;
}
/* Méthode compareTo permettant de comparer les 2 premières voitures selon leur année */
public static boolean compareTo(Voiture v1, Voiture v2)
{
return v1.Annee() == v2.Annee();
}
/* Méthode toString */
public String toString()
{
String vehicule = "Une " + m_marque + " de l'année " + m_annee + " et de couleur " + Couleurs() + "\n";
return vehicule;
}
}
Classe Test :
import java.util.*;
public class Test
{
public static void main (String[] args) /* Début du programme principal */
{
int choix = 0, annee, i, suppr = 0, couleur;
String marque;
Voiture vehi = new Voiture();
ArrayList<Voiture> voiture = new ArrayList<Voiture>();
Scanner scan = new Scanner (System.in);
while (choix != 6)
{
System.out.println ("\n********** Menu **********");
System.out.println ("1. Créer une voiture et l'ajouter à la liste");
System.out.println ("2. Afficher le nombre de voitures crées");
System.out.println ("3. Comparer les deux premières voitures de la liste");
System.out.println ("4. Enlever une voiture de la liste (voiture à L'indice i)");
System.out.println ("5. Afficher les voitures contenues dans la liste");
System.out.println ("6. Quitter");
choix = scan.nextInt();
switch (choix)
{
case 1: /* Méthode permettant la création d'un véhicule (marque, année et couleur) */
System.out.println ("De quelle marque est la voiture que vous voulez ajouter ?");
marque = scan.next();
System.out.println ("Année de la voiture ? (sous la forme AAAA)");
annee = scan.nextInt();
do
{
System.out.println ("De quelle couleur est la voiture (Saisir le n° de la couleur) : \n 1. Rouge \n 2. Vert \n 3. Jaune \n 4. Noir \n 5. Autre");
couleur = scan.nextInt();
if (couleur < 1 || couleur > 5)
System.out.println("Erreur ! Entrer un chiffre compris entre 1 et 5"); /* Message d'avertissement */
else
{
Voiture auto = new Voiture(marque, annee, couleur); /* Création du véhicule */
voiture.add (auto); /* Ajout du véhicule dans la liste */
}
}
while (couleur < 1 || couleur > 5);
break;
case 2:
System.out.println ("Il y a " + (vehi.getNbrvoiture()-(1+suppr)) + " voiture créées"); /* Affichage du nombre de véhicules créés */
break;
case 3:
if (voiture.size() >= 2)
{
Voiture v1 = voiture.get(0); /* Première voiture de la liste */
Voiture v2 = voiture.get(1); /* Deuxième voiture de la liste */
if (Voiture.compareTo(v1,v2)) /* Comparaison des 2 premiers véhicules suivant l'année */
System.out.println ("Les deux premières voitures sont de la même années");
else
System.out.println ("Les deux premières voitures ne sont pas de la même années");
}
else
System.out.println("Vous devez avoir au moins deux voitures de créé"); /* Message d'avertissement */
break;
case 4:
if (voiture.size() == 0)
System.out.println ("Aucune voiture n'est présente dans la liste"); /* Message d'avertissement */
else
{
System.out.println ("Quelle voiture voulez-vous enlever de la liste?");
System.out.println ("De la numéro 1 à " + voiture.size());
i = scan.nextInt();
if (i < 1 || i > voiture.size())
System.out.println("Entrer un choix entre 1 et " + voiture.size());
else
{
suppr++;
voiture.remove (i-1); /* Suppression d'un véhicule de la liste à l'indice i-1 */
}
}
break;
case 5:
System.out.println ("La liste des voitures:"); /* Affichage de la liste des véhicules */
System.out.println (voiture);
break;
default :
if (choix != 6)
System.out.println ("Erreur ! Merci de saisir un nombre entre 1 et 6"); /* Message d'avertissement */
}
}
}
}
j'ai donc fais les deux classes suivantes... le problème, c'est que je dois implanter l'interface comparable et je ne sais pas comment faire...
merci de l'aide que vous pourrez m'apporter...
Classe Voiture :
public class Voiture
{
private enum couleur {rouge, vert, jaune, noir, autre};
private String m_marque;
private int m_annee, m_couleur;
private couleur m_app;
public static int m_nbrvoiture = 0;
/* Premier constructeur (sans paramètres) */
public Voiture()
{
m_nbrvoiture++;
}
/* Deuxième constructeur (avec paramètres) */
public Voiture (String marq, int an,int color)
{
m_marque = marq;
m_annee = an;
m_nbrvoiture++;
m_couleur = color;
}
/* Méthode Couleurs */
public couleur Couleurs()
{
switch (m_couleur)
{
case 1:
m_app = couleur.rouge;
break;
case 2:
m_app = couleur.vert;
break;
case 3:
m_app = couleur.jaune;
break;
case 4:
m_app = couleur.noir;
break;
case 5:
m_app = couleur.autre;
break;
default :
}
return m_app;
}
/* Méthode pour retourner le nombre de voitures contenues dans la liste */
public int getNbrvoiture()
{
return m_nbrvoiture;
}
/* Méthode pour retourner l'annéee de la voiture */
public int Annee()
{
return m_annee;
}
/* Méthode compareTo permettant de comparer les 2 premières voitures selon leur année */
public static boolean compareTo(Voiture v1, Voiture v2)
{
return v1.Annee() == v2.Annee();
}
/* Méthode toString */
public String toString()
{
String vehicule = "Une " + m_marque + " de l'année " + m_annee + " et de couleur " + Couleurs() + "\n";
return vehicule;
}
}
Classe Test :
import java.util.*;
public class Test
{
public static void main (String[] args) /* Début du programme principal */
{
int choix = 0, annee, i, suppr = 0, couleur;
String marque;
Voiture vehi = new Voiture();
ArrayList<Voiture> voiture = new ArrayList<Voiture>();
Scanner scan = new Scanner (System.in);
while (choix != 6)
{
System.out.println ("\n********** Menu **********");
System.out.println ("1. Créer une voiture et l'ajouter à la liste");
System.out.println ("2. Afficher le nombre de voitures crées");
System.out.println ("3. Comparer les deux premières voitures de la liste");
System.out.println ("4. Enlever une voiture de la liste (voiture à L'indice i)");
System.out.println ("5. Afficher les voitures contenues dans la liste");
System.out.println ("6. Quitter");
choix = scan.nextInt();
switch (choix)
{
case 1: /* Méthode permettant la création d'un véhicule (marque, année et couleur) */
System.out.println ("De quelle marque est la voiture que vous voulez ajouter ?");
marque = scan.next();
System.out.println ("Année de la voiture ? (sous la forme AAAA)");
annee = scan.nextInt();
do
{
System.out.println ("De quelle couleur est la voiture (Saisir le n° de la couleur) : \n 1. Rouge \n 2. Vert \n 3. Jaune \n 4. Noir \n 5. Autre");
couleur = scan.nextInt();
if (couleur < 1 || couleur > 5)
System.out.println("Erreur ! Entrer un chiffre compris entre 1 et 5"); /* Message d'avertissement */
else
{
Voiture auto = new Voiture(marque, annee, couleur); /* Création du véhicule */
voiture.add (auto); /* Ajout du véhicule dans la liste */
}
}
while (couleur < 1 || couleur > 5);
break;
case 2:
System.out.println ("Il y a " + (vehi.getNbrvoiture()-(1+suppr)) + " voiture créées"); /* Affichage du nombre de véhicules créés */
break;
case 3:
if (voiture.size() >= 2)
{
Voiture v1 = voiture.get(0); /* Première voiture de la liste */
Voiture v2 = voiture.get(1); /* Deuxième voiture de la liste */
if (Voiture.compareTo(v1,v2)) /* Comparaison des 2 premiers véhicules suivant l'année */
System.out.println ("Les deux premières voitures sont de la même années");
else
System.out.println ("Les deux premières voitures ne sont pas de la même années");
}
else
System.out.println("Vous devez avoir au moins deux voitures de créé"); /* Message d'avertissement */
break;
case 4:
if (voiture.size() == 0)
System.out.println ("Aucune voiture n'est présente dans la liste"); /* Message d'avertissement */
else
{
System.out.println ("Quelle voiture voulez-vous enlever de la liste?");
System.out.println ("De la numéro 1 à " + voiture.size());
i = scan.nextInt();
if (i < 1 || i > voiture.size())
System.out.println("Entrer un choix entre 1 et " + voiture.size());
else
{
suppr++;
voiture.remove (i-1); /* Suppression d'un véhicule de la liste à l'indice i-1 */
}
}
break;
case 5:
System.out.println ("La liste des voitures:"); /* Affichage de la liste des véhicules */
System.out.println (voiture);
break;
default :
if (choix != 6)
System.out.println ("Erreur ! Merci de saisir un nombre entre 1 et 6"); /* Message d'avertissement */
}
}
}
}
choubaka
Messages postés
39376
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
29 avril 2024
2 101
25 nov. 2004 à 07:50
25 nov. 2004 à 07:50
salut
pour implémenter Comparable
ça c'est pour la déclaration ...
Le fait d'implémenter Comparable t'oblige à "Overrider" la méthode "compareTo(Object o)"
ici le mode d'emploi ...
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Comparable.html
Chouba,
Pochard d'assaut ..
pour implémenter Comparable
public class Voiture implements Comparable
ça c'est pour la déclaration ...
Le fait d'implémenter Comparable t'oblige à "Overrider" la méthode "compareTo(Object o)"
ici le mode d'emploi ...
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Comparable.html
Chouba,
Pochard d'assaut ..
choubaka
Messages postés
39376
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
29 avril 2024
2 101
25 nov. 2004 à 08:08
25 nov. 2004 à 08:08
/* Méthode compareTo permettant de comparer les 2 premières voitures selon leur année */ public static boolean compareTo(Voiture v1, Voiture v2) { return v1.Annee() == v2.Annee(); }
cette méthode donc n'est pas valable, puisque l'interface Comparable te fournit déjà une méthode avec une signature différente, te renvoyant un "int"...
Petit truc aussi, essaye de suivre les conventions
Méthode pour retourner l'annéee de la voiture */ public int Annee() { return m_annee; }
devrait devenir
Méthode pour retourner l'annéee de la voiture */ public int getAnnee() { return m_annee; }
tu utilises une variable "m_couleur" superflue, il te suffit de modifier la méthode
/* Méthode Couleurs */ public couleur Couleurs(int currentColor) { switch (currentColor) { case 1: m_app = couleur.rouge; break; case 2: m_app = couleur.vert; break; case 3: m_app = couleur.jaune; break; case 4: m_app = couleur.noir; break; case 5: m_app = couleur.autre; break; default : } return m_app; }
à ce moment là, il suffit d'appeler cette méthode dans le constructeur
* Deuxième constructeur (avec paramètres) */ public Voiture (String marq, int an,int color) { m_marque = marq; m_annee = an; m_nbrvoiture++; this.couleur(color); }
Prends l'habitude aussi de prévoir le moyen de modifier les différentes variables dans le cas où tu dois utiliser le constructeur sans arguments. Pour ce faire, il suffit de créer pour chaque variable une methode de type "set...." et tant qu'on y est pour chaque variable une méthode de type "get....".
Maintenant, j'ai encore toujours un méchant doute concernant l'incrémentation du nombre de voitures créées, tu peux faire le test, mais j'ai plus que l'impression que tu peux créer un million d'objet Voiture, le résultat sera toujours "1" ... Maintenant si l'incrémentation se fait dans la classe test, d'accord ...
Bonne continuation ...
Chouba,
Pochard d'assaut ..
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Slt !
alors voilà supposons ke je dispose d'un fichiers texte ds lequel se trouve la description de taches ; je voudrais savoir comment lire ce fichier ligne par ligne en plaçant chaque ligne ds un buffer( chaque line représente une tache!)
je cherche à savoir quelles méthode utiliser ...etc
un exemple de code me serais très utile, merci bcp!
alors voilà supposons ke je dispose d'un fichiers texte ds lequel se trouve la description de taches ; je voudrais savoir comment lire ce fichier ligne par ligne en plaçant chaque ligne ds un buffer( chaque line représente une tache!)
je cherche à savoir quelles méthode utiliser ...etc
un exemple de code me serais très utile, merci bcp!
choubaka
Messages postés
39376
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
29 avril 2024
2 101
25 nov. 2004 à 12:44
25 nov. 2004 à 12:44
euh? no comprendo...
erreur de post?
Chouba,
Pochard d'assaut ..
erreur de post?
Chouba,
Pochard d'assaut ..
Bonjour à vous...
Un doute me prend, à moi aussi : à partir du moment où une variable est déclarée "static" (typiquement, ici, il s'agit de la variable de classe "m_nbrvoiture"), sa valeur ne reprendra PAS la valeur par défaut, mais au contraire s'incrémentera bel et bien.
Je peux évidemment me tromper, mais les cours que je suis en Java, et les quelques tests ré"alisés dans ce contexte me semblent corroborer cette intuition.
A suivre, donc, et bon courage à tous
Mémé
Un doute me prend, à moi aussi : à partir du moment où une variable est déclarée "static" (typiquement, ici, il s'agit de la variable de classe "m_nbrvoiture"), sa valeur ne reprendra PAS la valeur par défaut, mais au contraire s'incrémentera bel et bien.
Je peux évidemment me tromper, mais les cours que je suis en Java, et les quelques tests ré"alisés dans ce contexte me semblent corroborer cette intuition.
A suivre, donc, et bon courage à tous
Mémé
choubaka
Messages postés
39376
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
29 avril 2024
2 101
31 déc. 2004 à 08:46
31 déc. 2004 à 08:46
à condition que la classe reste chargée en mémoire, c'est possible ...
mais c'est une manière bizarre de programmer ...
Les variables statiques sont utiles lorsque l'on se trouve en présence de valeurs susceptibles de ne pas changer. Exemple la valeur PI dans la classe Math.
Chouba,
Pochard d'assaut ..
mais c'est une manière bizarre de programmer ...
Les variables statiques sont utiles lorsque l'on se trouve en présence de valeurs susceptibles de ne pas changer. Exemple la valeur PI dans la classe Math.
Chouba,
Pochard d'assaut ..
Je crains qu'il n'y ait une confusion entre les modificateurs 'static' et 'final' dans cette discussion...
"Le modificateur static indique que le champ représente un champ de classe. [...]
Le modificateur final indique que la valeur du champ ne peut être modifiée. [...]
Il est courant de définir de telles constantes en tant que champs de classes, ce qui signifie que les modificateurs static et final sont souvent utilisés ensemble. Tous les champs de classe ne sont pas des constantes pour autant. En d'autres termes, un champ peut être déclaré static sans être déclaré final. [...]
Le principe fondamental des champs statiques est qu'il n'existe qu'une seule copie de ces champs. Le champ est associé à la classe elle-même, et non pas aux instances de cette classe."
David Flanaghan, in "Java in a Nutshell "
4ème éd, fr, publié chez O'Reilly
Il me semble donc plus approprié de parler de variables globales pour les champs déclarés static... ce qui en parait du coup plus tellement incongru comme manière de programmer... mais bon, je suppose que nous ne pouvons pas avoir la même vision des choses, et d'ailleurs tant mieux, ça laisse de la place aux surprises...
Bonne journée à tous,
Mémé
"Le modificateur static indique que le champ représente un champ de classe. [...]
Le modificateur final indique que la valeur du champ ne peut être modifiée. [...]
Il est courant de définir de telles constantes en tant que champs de classes, ce qui signifie que les modificateurs static et final sont souvent utilisés ensemble. Tous les champs de classe ne sont pas des constantes pour autant. En d'autres termes, un champ peut être déclaré static sans être déclaré final. [...]
Le principe fondamental des champs statiques est qu'il n'existe qu'une seule copie de ces champs. Le champ est associé à la classe elle-même, et non pas aux instances de cette classe."
David Flanaghan, in "Java in a Nutshell "
4ème éd, fr, publié chez O'Reilly
Il me semble donc plus approprié de parler de variables globales pour les champs déclarés static... ce qui en parait du coup plus tellement incongru comme manière de programmer... mais bon, je suppose que nous ne pouvons pas avoir la même vision des choses, et d'ailleurs tant mieux, ça laisse de la place aux surprises...
Bonne journée à tous,
Mémé
Voici un programme que je narrive pas faire .. jai besoin d'aide...
Vous réalisez une classe Vivant pour représenter un être vivant. Les variables
d’instance de la classe sont nom, milieuDeVie (eau, terre ou airTerre) et
complexité, un indice de complexité allant de 1 à 10 (du moins complexe au plus
complexe). La classe doit contenir une méthode abstraite pour afficher le mode de
déplacement de l’être vivant. La classe Vivant doit implanter l’interface Comparable :
les objets de la classe Vivant sont ordonnés selon l’indice de complexité (compareTo).
À partir de la classe Vivant, vous réalisez trois sous-classes : Humain, Animal et
Plante.
• La classe Humain a une variable d’instance : numéro . Elle redéfinit la méthode
déplacement en affichant un message qui indique qu’un humain est bipède et
qu’il pourrait nager.
• La classe Animal a deux variables d’instance : deux booléennes pour savoir si
l’animal est domestique et, si c’est un mammifère. Elle redéfinit la méthode
déplacement en affichant un message qui indique qu’un animal peut marcher
et/ou nager et/ou voler.
• La classe Plante a une variable d’instance booléenne : comestible. Elle
redéfinit la méthode déplacement avec un message qui indique qu’une plante
ne se déplace pas.
Chaque classe devrait avoir un ou plusieurs constructeurs, une redéfinition de la
méthode equals qui utilise les noms et une méthode toString. Les
constructeurs doivent au moins définir la complexité. Si la complexité est en dehors de
l’intervalle de 1 à 10, le constructeur doit lancer une exception ComplexitéIncorrecte
tableau d’objets de type Vivant. Il permettra aussi d’afficher les éléments du tableau,
de trier le tableau, de rechercher un élément dans le tableau.
La séquence d’opérations est la suivante :
• Mettre les objets dans le tableau : vous devez intercepter l’exception
ComplexitéIncorrecte ;
• Afficher les éléments du tableau ;
• Trier le tableau selon la complexité : utiliser la recherche linéaire du chapitre 9
(pas la recherche binaire) ;
• Afficher de nouveau les éléments du tableau ;
• Chercher un élément qui se trouve dans le tableau à partir d’un nom ;
• Chercher un élément qui ne se trouve pas dans le tableau.
Vous réalisez une classe Vivant pour représenter un être vivant. Les variables
d’instance de la classe sont nom, milieuDeVie (eau, terre ou airTerre) et
complexité, un indice de complexité allant de 1 à 10 (du moins complexe au plus
complexe). La classe doit contenir une méthode abstraite pour afficher le mode de
déplacement de l’être vivant. La classe Vivant doit implanter l’interface Comparable :
les objets de la classe Vivant sont ordonnés selon l’indice de complexité (compareTo).
À partir de la classe Vivant, vous réalisez trois sous-classes : Humain, Animal et
Plante.
• La classe Humain a une variable d’instance : numéro . Elle redéfinit la méthode
déplacement en affichant un message qui indique qu’un humain est bipède et
qu’il pourrait nager.
• La classe Animal a deux variables d’instance : deux booléennes pour savoir si
l’animal est domestique et, si c’est un mammifère. Elle redéfinit la méthode
déplacement en affichant un message qui indique qu’un animal peut marcher
et/ou nager et/ou voler.
• La classe Plante a une variable d’instance booléenne : comestible. Elle
redéfinit la méthode déplacement avec un message qui indique qu’une plante
ne se déplace pas.
Chaque classe devrait avoir un ou plusieurs constructeurs, une redéfinition de la
méthode equals qui utilise les noms et une méthode toString. Les
constructeurs doivent au moins définir la complexité. Si la complexité est en dehors de
l’intervalle de 1 à 10, le constructeur doit lancer une exception ComplexitéIncorrecte
tableau d’objets de type Vivant. Il permettra aussi d’afficher les éléments du tableau,
de trier le tableau, de rechercher un élément dans le tableau.
La séquence d’opérations est la suivante :
• Mettre les objets dans le tableau : vous devez intercepter l’exception
ComplexitéIncorrecte ;
• Afficher les éléments du tableau ;
• Trier le tableau selon la complexité : utiliser la recherche linéaire du chapitre 9
(pas la recherche binaire) ;
• Afficher de nouveau les éléments du tableau ;
• Chercher un élément qui se trouve dans le tableau à partir d’un nom ;
• Chercher un élément qui ne se trouve pas dans le tableau.
choubaka
Messages postés
39376
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
29 avril 2024
2 101
5 déc. 2007 à 00:17
5 déc. 2007 à 00:17
salut
c'est pas tout à fait le genre de la maison de faire les devoirs à la place des étudiants, cependant commence déjà à faire ce que tu peux, on peut te guider et/ou te corriger
c'est pas tout à fait le genre de la maison de faire les devoirs à la place des étudiants, cependant commence déjà à faire ce que tu peux, on peut te guider et/ou te corriger