Java tableau d'objets
y2jeff
Messages postés
78
Date d'inscription
Statut
Membre
Dernière intervention
-
y2jeff Messages postés 78 Date d'inscription Statut Membre Dernière intervention -
y2jeff Messages postés 78 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai quelques difficultés avec la POO, j'arrive a faire des tableaux. Mais je n'arrive pas a faire un tableau d'objet dans ce programme:
Je n'arrive pas a creer un tableau de Contribuable.
package contribuable;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
CalculateurImpot calculateurImpot = new CalculateurImpot();
Contribuable contribuable = new Contribuable();
DialogueUtilisateur du = new DialogueUtilisateur(contribuable, calculateurImpot);
du.demarrer();
}
}
public class Contribuable {
private String nom;
private String prenom;
private double revenus;
public String getNom() {
return nom;
}
public String getPrenom() {
return prenom;
}
public double getRevenus() {
return revenus;
}
public void setNom(String nom) {
this.nom = nom;
}
public void setPrenom(String prenom) {
this.prenom = prenom;
}
public void setRevenus(double revenus) {
this.revenus = revenus;
}
}
public class CalculateurImpot {
private double limites[];
private double taux[];
public CalculateurImpot(){
limites = new double[7];
taux = new double[7];
for(int i=0; i<limites.length; ++i){
limites[i] = i*5000.0;
taux[i] = 0.10+(i*0.05);
}
taux[0] = 0.0;
}
public double calculerImpot(double revenu){
int i=0;
double impot = 0;
while(i<limites.length-1 && revenu>limites[i+1]){
impot += 5000*taux[i];
++i;
}//ici i=6 ou revenu <= limites[i+1]
impot += (revenu - limites[i])*taux[i];
return impot;
}
}
public class DialogueUtilisateur {
private Contribuable contribuable;
private CalculateurImpot calculateurImpot;
private Scanner input;
public DialogueUtilisateur(Contribuable contribuable, CalculateurImpot calculateurImpot){
this.contribuable = contribuable;
this.calculateurImpot = calculateurImpot;
input = new Scanner(System.in);
}
public void demarrer(){
int choix = 0;
do{
choix = encoderChoix();
switch(choix){
case 1: encoderContribuable(); break;
case 2: calculerImpot(); break;
default: break;
}
}while(choix!=3);
//ici,choix=3 ==> Sortie du programme
System.exit(0);
}
private int encoderChoix(){
int choix;
System.out.println("1. Encoder un contribuable");
System.out.println("2. Calculer l'impot");
System.out.println("3. Quitter");
System.out.print("Votre choix? ");
choix = input.nextInt();
input.nextLine();
return choix;
}
private void encoderContribuable(){
System.out.print("Nom: ");
String nom = input.nextLine();
System.out.print("Prénom: ");
String prenom = input.nextLine();
contribuable.setNom(nom);
contribuable.setPrenom(prenom);
System.out.print("Revenu en euros : ");
contribuable.setRevenus(input.nextDouble());
input.nextLine();
}
private void calculerImpot(){
double impotDu = calculateurImpot.calculerImpot(contribuable.getRevenus());
System.out.printf("Nom: %s \t Prénom: %s \n", contribuable.getNom(), contribuable.getPrenom());
System.out.printf("Revenu : %.2f \tImpot du : %.2f\n",contribuable.getRevenus(),impotDu);
}
}
J'ai quelques difficultés avec la POO, j'arrive a faire des tableaux. Mais je n'arrive pas a faire un tableau d'objet dans ce programme:
Je n'arrive pas a creer un tableau de Contribuable.
package contribuable;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
CalculateurImpot calculateurImpot = new CalculateurImpot();
Contribuable contribuable = new Contribuable();
DialogueUtilisateur du = new DialogueUtilisateur(contribuable, calculateurImpot);
du.demarrer();
}
}
public class Contribuable {
private String nom;
private String prenom;
private double revenus;
public String getNom() {
return nom;
}
public String getPrenom() {
return prenom;
}
public double getRevenus() {
return revenus;
}
public void setNom(String nom) {
this.nom = nom;
}
public void setPrenom(String prenom) {
this.prenom = prenom;
}
public void setRevenus(double revenus) {
this.revenus = revenus;
}
}
public class CalculateurImpot {
private double limites[];
private double taux[];
public CalculateurImpot(){
limites = new double[7];
taux = new double[7];
for(int i=0; i<limites.length; ++i){
limites[i] = i*5000.0;
taux[i] = 0.10+(i*0.05);
}
taux[0] = 0.0;
}
public double calculerImpot(double revenu){
int i=0;
double impot = 0;
while(i<limites.length-1 && revenu>limites[i+1]){
impot += 5000*taux[i];
++i;
}//ici i=6 ou revenu <= limites[i+1]
impot += (revenu - limites[i])*taux[i];
return impot;
}
}
public class DialogueUtilisateur {
private Contribuable contribuable;
private CalculateurImpot calculateurImpot;
private Scanner input;
public DialogueUtilisateur(Contribuable contribuable, CalculateurImpot calculateurImpot){
this.contribuable = contribuable;
this.calculateurImpot = calculateurImpot;
input = new Scanner(System.in);
}
public void demarrer(){
int choix = 0;
do{
choix = encoderChoix();
switch(choix){
case 1: encoderContribuable(); break;
case 2: calculerImpot(); break;
default: break;
}
}while(choix!=3);
//ici,choix=3 ==> Sortie du programme
System.exit(0);
}
private int encoderChoix(){
int choix;
System.out.println("1. Encoder un contribuable");
System.out.println("2. Calculer l'impot");
System.out.println("3. Quitter");
System.out.print("Votre choix? ");
choix = input.nextInt();
input.nextLine();
return choix;
}
private void encoderContribuable(){
System.out.print("Nom: ");
String nom = input.nextLine();
System.out.print("Prénom: ");
String prenom = input.nextLine();
contribuable.setNom(nom);
contribuable.setPrenom(prenom);
System.out.print("Revenu en euros : ");
contribuable.setRevenus(input.nextDouble());
input.nextLine();
}
private void calculerImpot(){
double impotDu = calculateurImpot.calculerImpot(contribuable.getRevenus());
System.out.printf("Nom: %s \t Prénom: %s \n", contribuable.getNom(), contribuable.getPrenom());
System.out.printf("Revenu : %.2f \tImpot du : %.2f\n",contribuable.getRevenus(),impotDu);
}
}
A voir également:
- Java tableau d'objets
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Tableau word - Guide
- Site pour vendre des objets d'occasion - Guide
- Tableau ascii - Guide
rajouter la taille du tableau en parametre de encoderContribuable()
public class DialogueUtilisateur {
private Contribuable contribuable;
private CalculateurImpot calculateurImpot;
private Scanner input;
public DialogueUtilisateur(Contribuable contribuable, CalculateurImpot calculateurImpot){
this.contribuable = contribuable;
this.calculateurImpot = calculateurImpot;
input = new Scanner(System.in);
}
public void demarrer(){
int choix = 0;
do{
choix = encoderChoix();
switch(choix){
case 1: encoderContribuable(); break;
case 2: calculerImpot(); break;
default: break;
}
}while(choix!=3);
//ici,choix=3 ==> Sortie du programme
System.exit(0);
}
private int encoderChoix(){
int choix;
System.out.println("1. Encoder un contribuable");
System.out.println("2. Calculer l'impot");
System.out.println("3. Quitter");
System.out.print("Votre choix? ");
choix = input.nextInt();
input.nextLine();
return choix;
}
private void encoderContribuable(){
System.out.print("Nom: ");
String nom = input.nextLine();
System.out.print("Prénom: ");
String prenom = input.nextLine();
contribuable.setNom(nom);
contribuable.setPrenom(prenom);
System.out.print("Revenu en euros : ");
contribuable.setRevenus(input.nextDouble());
input.nextLine();
}
DialogueUtilisateur du = new DialogueUtilisateur(contribuable[i], calculateurImpot[i]);
c'est sencé directement creer l'objer au bon endroit dans le tableau.
je ne comprend pas pourquoi ca plante
public static void main(String[] args) {
CalculateurImpot[] calculateurImpot = new CalculateurImpot[5];
Contribuable[] contribuable = new Contribuable[5];
for(int i=0; i<5 ; i++){
DialogueUtilisateur du = new DialogueUtilisateur(contribuable[i], calculateurImpot[i]);
du.demarrer(i);
}