Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : projet info [ Divers / Général ] (jcdarche56)

samedi 10 mai 2008 à 01:40:41 | projet info

jcdarche56

bonjour à tous!
pour mon projet dinfo pour la fac j'ai une simulation demprunt à faire.
Tout marche, mais lorsque la mensualité est calculée et affichée j'ai plein de chiffres après la virgule et j'aimerai savoir comment faire pour n'en avoir aucun et que la mensualité soit arrondie à leuro prè
merci par avance
voici mon fichier

import java.awt.* ;
import java.awt.event.*;

class Fenetre extends Frame {
    protected Panel p,p1,p2,p3,p4;
    protected TextArea texte;
    protected Button bouton1 ;
    protected CheckboxGroup cbg;
    protected Checkbox chb1, chb2, chb3;
    protected Choice c;
    protected TextField tf1, tf2;
    protected Delegue delegue;
    protected Adaptateur adapt;


    Fenetre() {
        p=new Panel();
        p.setLayout(new GridLayout(4,1));

        p1=new Panel();
        p1.setLayout(new FlowLayout());
        p1.add(new Label("Type d'emprunt"));
        cbg=new CheckboxGroup();
        chb1=new Checkbox("immobilier", cbg, true);
        p1.add(chb1);
        chb2=new Checkbox("achat de véhicule", cbg, false);
        p1.add(chb2);
        chb3=new Checkbox("consommation", cbg, false);
        p1.add(chb3);
        p.add(p1);

        p2=new Panel();
        p2.setLayout(new FlowLayout());   
            p2.add(new Label("Montant demandé"));
            tf1=new TextField(10);
            p2.add(tf1);
            p2.add(new Label("Nombres d'années de remboursement "));
            c=new Choice();
                c.addItem("3");
                c.addItem("4");
                c.addItem("5");
                c.addItem("6");
                c.addItem("7");
                c.addItem("8");   
                c.addItem("9");
                c.addItem("10");
                c.addItem("11");
                c.addItem("12");
                c.addItem("13");
                c.addItem("14");
                c.addItem("15");
                c.addItem("16");
                c.addItem("17");
                c.addItem("18");
                c.addItem("19");
                c.addItem("20");
                c.addItem("21");
                c.addItem("22");
                c.addItem("23");
                c.addItem("24");
                c.addItem("25");
                c.addItem("26");
                c.addItem("27");
                c.addItem("28");
                c.addItem("29");
                c.addItem("30");
            p2.add(c);
            p.add(p2);

        p3=new Panel();
        p3.setLayout(new FlowLayout());
        p3.add(new Label("Revenu mensuel"));
        tf2=new TextField(10);
        p3.add(tf2);
        p.add(p3);

        p4=new Panel();
        p4.setLayout(new FlowLayout());
        bouton1=new Button("Valider");
        p4.add(bouton1);
        p.add(p4);

        add("North", p);

        texte=new TextArea();
        add("South", texte);


delegue=new Delegue(this);
adapt=new Adaptateur(delegue);

this.addWindowListener(adapt);
bouton1.addActionListener(adapt);

        }
    }

class Delegue {
    protected Fenetre fen;
Delegue(Fenetre f){
    fen=f;
    }
public void quitter() {
    System.exit(0);
    }







  void calcule(){
   
    float montant ;
        int nbreannees ;
        float revenu ;
         double taux = 0;
    double mensualite=0;

    montant = new Float(fen.tf1.getText()).floatValue() ;
        nbreannees = new Integer(fen.c.getSelectedItem()).intValue() ;
        revenu = new Float(fen.tf2.getText()).floatValue();
   
   
    for(int i=0; i<=nbreannees; i++){

        boolean condition1 = (nbreannees>2)&&(nbreannees<31);
        boolean condition2 = (montant <= 100*revenu);
        boolean condition3 = (3*mensualite <=revenu);
      
        boolean condition4 = (nbreannees>2)&&(nbreannees<11) ;
        boolean condition5 = (montant <= 20*revenu);
      
        boolean condition6 = (nbreannees>2)&&(nbreannees<7);
        boolean condition7 = (montant <= 10*revenu);

        String res = "Voici les résultats de votre demande d'emprunt :";

        String  choix = fen.cbg.getSelectedCheckbox().getLabel() ;

        if (choix=="immobilier"){
        taux=0.05;
        mensualite = (montant*(taux/12)) / (1-Math.pow(1+taux,-nbreannees));
            if ((condition1) && (condition2)) {
               
                res = res + "\nLe taux appliqué est de 0.05 annuel";
        res=res+"\nLe montant de la mensualité est : " + new Double(mensualite).toString() ;
             }
 if ((!condition1)&&(!condition2)){
        res= res+ "\nUn emprunt immobilier est limité à 30 ans";
        res=res+ "\nPRET REFUSE";
}
if((!condition2)&&(condition1)){
res=res+"\nLe montant de l'emprunt est limité à 100 fois le revenu mensuel, soit "+ 100*revenu+" Euros.";
res= res+"\nPRET REFUSE";
}
        if((condition3)&&(condition1)&&(condition2)){
                    res+="\nPRET AUTORISE";
               
                }

if ((!condition3)&&(condition1)&&(condition2)){
res=res+"\nLa mensualite depasse 33% du revenu mensuel";
res=res+"\nPRET REFUSE";
}
            }
        else if(choix=="achat de véhicule") {
        taux=0.06 ;   mensualite = (montant*(taux/12)) / (1-Math.pow(1+taux,-nbreannees)); 
            if((condition4) && (condition5)) {
               
                res = res + "\nLe taux appliqué est de 0.06 annuel";
        res=res+"\nLe montant de la mensualité est : " + new Double(mensualite).toString() ;                       
               }
if ((!condition4)&&(!condition5)){
res=res+"\nUn emprunt pour l'achat d'un véhicule est limité à 10 ans" ;
res=res+"\nPRET REFUSE";
}
if ((!condition5)&&(condition4)){
res=res+"\nLe montant de l'emprunt est limité à 20 fois le revenu mensuel, soit "+ revenu*20+" Euros.";
res=res+"\nPRET REFUSE";
}


if((condition3)&&(condition4)&&(condition5)){
                    res+="\nPRET AUTORISE";
                  
                }
if ((!condition3)&&(condition4)&&(condition5)){
res=res+"\nLa mensualite depasse 33% du revenu mensuel";
res=res+"\nPRET REFUSE";
}

            }
      
 else if(choix=="consommation") {
        taux=0.08;mensualite = (montant*(taux/12)) / (1-Math.pow(1+taux,-nbreannees));
            if((condition6) && (condition7)) {          
              
                res = res + "\nLe taux appliqué est de 0.08 annuel";
res=res+"\nLe montant de la mensualité est : " + new Double(mensualite).toString() ;
     }
if ((!condition6)&&(!condition7)){
res=res+"\nUn emprunt pour consommation est limité à 6 ans";
res=res+"\nPRET REFUSE";
}
if((!condition7)&&(condition6)){
res=res+"\nLe montant de l'emprunt est limité à 10 fois le revenu mensuel, soit "+revenu*10+" Euros.";
res=res+"\nPRET REFUSE";
}
         
if((condition3)&&(condition6)&&(condition7)){
                    res+="\nPRET AUTORISE";
                }
if((!condition3)&&(condition6)&&(condition7)){
res=res+"\nLa mensualité dépasse 33% du revenu mensuel";
res=res+"\nPRET REFUSE";
}
}

                  

           
fen.texte.setText(res);
}

    }


}



class Adaptateur implements WindowListener, ActionListener {
protected Delegue delegue;
Adaptateur(Delegue d) {
delegue=d;
    }

public void windowOpened(WindowEvent e) {}
public void windowClosing(WindowEvent e) {
    delegue.quitter();
    }

public void windowClosed(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowActivated(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}

public void actionPerformed(ActionEvent e) {
Object src = e.getSource();
        String param = ((Button)src).getLabel();
        if (param == "Valider") delegue.calcule() ;
    }
}

public class Emprunt {
    public static void main (String args[]) {
        Fenetre f=new Fenetre();
        f.pack();
        f.show();
        }
    }








samedi 10 mai 2008 à 08:01:58 | Re : projet info

Chatbour

Membre Club
Salut,

voici un exemple :

import java.text.*;

class Tester {
    public static void main(String[] args) throws ParseException{
        DecimalFormat df = new DecimalFormat("Integer");
       
        double x = 14.5;
       
        System.out.println(df.parse(df.format(x)));
    }
}






Cette discussion est classé dans : add, additem, res, montant, if


Répondre à ce message

Sujets en rapport avec ce message

simulation emprunt pr projet info licence [ par jcdarche56 ] bonjour!j'ai un petit souci pour un projet dinfo, tou marche sauf le calcul de la mensualité, voici mon fichier: aprè lavoir compilé kan je l'éxécute, projet d'info simulation emprunt [ par jcdarche56 ] bonjour a tous!j'ai un petit souci pour mon projet dinformatik...quand je compile mon fichier j'ai 2 erreurs qui apparaissen:"illegal start of express Problème pour une formule [ par Cocinou ] Bonjour à tous,Je dois rendre un projet en informatique mais je bloque qque part. J'aurais besoin d'aide alors s'il vous plait soyez sympa. Voila mon swing affichage de frame annexe [ par 11rcpc ] Bonsoir,pour une appli je tente depuis une fenetre principale d'ouvrir une frame annexe mais impossible et pourtant le compile me dit okje n'arrive pa Commenter Expliquer 1partie d'1classe JAVA [ par developppez ] Bonjour, Je doit comprendre cette partie d'une classe, et son fonctionnement, si vous voulez bien m'aider par des commentaires ou des explications. La Au secours [ par Mialisoa ] En effet, j'ai le code suivant qui permet de créer l'interface de mon projet:// {$R conducteur.JFM}import java.awt.*;import java.applet.Applet;// Cla addActionListener qui pourrait toucher à l'élément qui l'a appelé ? [ par julgates ] Hello tout le mondeVoilà je développe un petit yam's et j'ai un petit hic sur cette portion de code :for (i = 0; i String lOption = lesOptions[i]; scrollpane et panel :) [ par Ricool ] Bonjourj'ai un petit probleme de mise en page d'une jdialogen effet, dans celle ci je dois faire apparaitre le contenu d'un fichier text represnetant


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,250 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.