1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
|
import javax.swing. *;
import java.awt. *;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
private JTextField saisie;
JLayeredPane cadre = getPane();
int nombreBinaire = 0;
int Compteur = 0;
int Quotient;
int reste = 0;
double nombreDecimal = 0;
int choix;
int Puissance = 1;
int again = 1;
void main() {
Puissance = 1;
nombreBinaire = 0;
nombreDecimal = 0;
Compteur = 0;
clear();
boutonsEtInterface();
}
void Base10Base2() {
while (nombreDecimal != 0) {
Quotient = (int)(nombreDecimal /2);
reste = (int)nombreDecimal %2;
nombreBinaire = nombreBinaire + reste * Puissance;
Puissance = Puissance * 10;
nombreDecimal = Quotient;
// J'utilise une fonction qui me permet d'entrer des instructions et de rendre mon programme moins dense et cette fonction permet de passer un nombre base 10 en base 2
}
}
void Base2Base10() {
while (nombreBinaire != 0) {
if (nombreBinaire %2 ==0) {
reste = 0;
} else {
reste = 1;
}
nombreDecimal = nombreDecimal + reste * (int) pow(2, Compteur);
Compteur = Compteur + 1;
nombreBinaire = nombreBinaire /10;
// De meme que pour la fonction d'au dessus sauf qu'elle permet de passer un nombre base 2 en base 10
}
}
void boutonsEtInterface() {
cadre.removeAll();
cadre.setBackground(Color.BLUE);
JTextField saisie = new JTextField("Entrez votre nombre");
JLabel resultat1 = new JLabel("<html><i><b><FONT COLOR=WHITE></FONT></b></i></html>", JLabel.CENTER);
JLabel resultat2 = new JLabel("<html><i><b><FONT COLOR=WHITE></FONT></b></i></html>", JLabel.CENTER);
JLabel etiquette = new JLabel("<html><i><b><FONT COLOR=WHITE>Ce programme à été réalisé par Félix Cassand - ISN 2014</FONT></b></i></html>", JLabel.CENTER);
JButton fin = new JButton("<html><i><b><FONT COLOR=GREEN>FIN</FONT></b></i></html>");
JButton boutonBase2Base10 = new JButton("<html><i><b><FONT COLOR=BLUE>Base 2 vers base 10</FONT></b></i></html>");
JButton boutonBase10Base2 = new JButton("<html><i><b><FONT COLOR=RED>Base 10 vers base 2</FONT></b></i></html>");
saisie.setBounds(310, 100, 190, 60);
resultat1.setBounds(120, 330, 200, 60);
resultat2.setBounds(490, 330, 200, 60);
boutonBase2Base10.setBounds(490, 280, 200, 60);
boutonBase10Base2.setBounds(120, 280, 200, 60);
etiquette.setBounds(610, 490, 200, 40);
fin.setBounds(120, 450, 60, 60);
etiquette.setOpaque(true);
saisie.setOpaque(true);
cadre.add(saisie);
cadre.add(resultat1);
cadre.add(resultat2);
cadre.add(boutonBase2Base10);
cadre.add(boutonBase10Base2);
cadre.add(fin);
etiquette.setBackground(Color.BLACK);
cadre.add(etiquette);
boutonBase2Base10.addActionListener(calcul2);
boutonBase10Base2.addActionListener(calcul1);
fin.addActionListener(stop);
// a mettre dans une fonction bouton par exemple
}
ActionListener calcul1 = new ActionListener() {
public void actionPerformed(ActionEvent e) {
nombreDecimal = Integer.parseInt(saisie.getText());
Base10Base2();
resultat1.setText(nombreDecimal);
//Le bouton Base10Base2 va executer la fonction qui permet de passer d'un nombre base 10 en base 2
}
}
;
ActionListener calcul2 = new ActionListener() {
public void actionPerformed(ActionEvent e) {
nombreBinaire = Integer.parseInt(saisie.getText());
Base2Base10();
resultat2.setText(nombreBinaire);
//Le bouton Base2Base10 va executer la fonction qui permet de passer d'un nombre base 2 en base 10
}
}
;
ActionListener stop = new ActionListener() {
public void actionPerformed(ActionEvent e) {
// Ce bouton va stopper le programme (a faire)
}
}
; |
Partager