Muy Buenas noches!
El dia de Hoy he querido compartir con ustedes el codigo de mi sencillo pero util applet en Java!
el programa convierte un numero binario a decimal como bien dice el titulo, solo que solo es factible de 4 bits, no obstante si se logra entender la idea del programa se puede ampliar hasta 8 bits que seria mucho mas util.
He aqui el Codigo!
Código HTML:
Ver originalimport java.awt.*;
import java.applet.*;
import java.awt.event.*;
import javax.swing.*;
public class TransBinDec extends Applet implements ActionListener{
private Button A,B,C,D;
private Color C1 = new Color(198,226,255);
private Color C2 = new Color(255,255,255);
private TextField t1;
private Font TL = new Font("Default",Font.PLAIN,20);
private String frase1 ="Presione en los botones binarios",frase2="El valor en decimal es";
private String a1,b1,c1,d1;
private int bin1,bin2,bin3,bin4,bin5;
public void init(){
t1 = new TextField("0",10);
t1.setBounds(170,200,150,40);
t1.setEditable(false);
t1.setBackground(Color.white);
t1.setFont( TL );
add(t1);
this.setLayout(null);
this.setSize(500,500);
setBackground(C1);
A=new Button ("0");
A.setBounds(150,100,40,60);
A.addActionListener(this);
A.setBackground(C2);
add(A);
a1="0";
B=new Button("0");
B.setBounds(200,100,40,60);
B.addActionListener(this);
B.setBackground(C2);
add(B);
b1="0";
C=new Button("0");
C.setBounds(250,100,40,60);
C.addActionListener(this);
C.setBackground(C2);
add(C);
c1="0";
D=new Button("0");
D.setBounds(300,100,40,60);
D.addActionListener(this);
D.setBackground(C2);
add(D);
d1="0";
}
public void paint (Graphics g){
g.setFont(new Font("TimesRoman", Font.PLAIN, 20));
g.setColor(Color.black);
g.drawString(frase1,120,90);
g.drawString(frase2,150,190);
}
public void actionPerformed( ActionEvent e){
if(e.getSource() == A){
String E=e.getActionCommand();
if(E.equals("0") ){
A.setLabel("1");
a1="1";
}
if(E.equals("1")){
A.setLabel("0");
a1="0";
}
}
if(e.getSource() == B){
String E=e.getActionCommand();
if(E.equals("0") ){
B.setLabel("1");
b1="1";
}
if(E.equals("1")){
B.setLabel("0");
b1="0";
}
}
if(e.getSource() == C){
String E=e.getActionCommand();
if(E.equals("0") ){
C.setLabel("1");
c1="1";
}
if(E.equals("1")){
C.setLabel("0");
c1="0";
}
}
if(e.getSource() == D){
String E=e.getActionCommand();
if(E.equals("0") ){
D.setLabel("1");
d1="1";
}
if(E.equals("1")){
D.setLabel("0");
d1="0";
}
}
convierte();
}
public void convierte(){
bin1 = Integer.parseInt(a1)*8;
bin2 = Integer.parseInt(b1)*4;
bin3 = Integer.parseInt(c1)*2;
bin4 = Integer.parseInt(d1)*1;
bin5=0;
bin5 = bin1+bin2+bin3+bin4;
t1.setText(Integer.toString(bin5));
repaint();
}
}
Espero poder seguir subiendo nuevos aportes proximamente asiesque esten atentos amigos del web!
Saludos!