Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[Java] binair naar decimaal

Pagina: 1
Acties:
  • 169 views

Verwijderd

Topicstarter
Ik wil graag een programma maken met java maar kom er niet helemaal uit.
Ik heb al een programma gemaakt: van hexadecimaal naar decimaal en omgekeerd.
Maar nu wil ik graag ook nog van decimaal naar binair, de code heb ik al. Maar ik snap niet hoe het in actionperformed verwerkt moet worden.

Dit is mijn code:

*/
import java.awt.*;
import java.applet.*;
import java.awt.event.*;

public class Hex extends Applet implements ActionListener
{ Label label1=new Label("Hexadecimal:");
Label label2=new Label("Decimal:");
Label label3=new Label ("Binair:");
TextField left=new TextField();
TextField right=new TextField();
TextField right2=new TextField();

public void init()
{ setLayout(null);
setBackground(Color.lightGray);

label1.setBounds(5,20,85,20);
add(label1);
left.setBounds(95,20,100,20);
add(left);


label2.setBounds(205,20,60,20);
add(label2);
right.setBounds(270,20,100,20);
add(right);


label3.setBounds(380,20,45,20);
add(label3);
right2.setBounds(430,20,100,20);
add(right2);

}

public void actionPerformed(ActionEvent ev)
{ String s="";
int number=0, i, rest;
if (ev.getSource()==left)
{s=left.getText(); //get text
for (i=0; i<s.length();i=i+1)
if (s.charAt(i)<='9') number=number*16+s.charAt(i)-'0';
else number=number*16+s.charAt(i)-'A'+10;
right.setText(""+number);
}
if (ev.getSource()==right)
{number=Integer.parseInt(right.getText());
while (number>0)
{rest=number%16;
if (rest<=9) s=""+rest+s;
else s=""+(char)('A'+rest-10)+s;
number=number/16;
}
left.setText(s);
}
}

public static void main(String[] args)
{ System.out.println("opdracht");
Frame f=new Frame();
Hex hex=new Hex();
f.setSize(400,100);
f.setTitle("opdracht");
f.add(hex);
hex.init();
f.addWindowListener(new MyWindow());
f.setVisible(true);
}
}

Dit moet er in verwerkt worden:*/


public void actionPerformed(ActionEvent ev)
{ String s="";
int number=0, i;
if (ev.getSource()==left)
{s=left.getText();
for (i=0; i<s.length();i=i+1)
number=number*2+Integer.parseInt(""+s.charAt(i));
right.setText(""+number);
}
if (ev.getSource()==right)
{number=Integer.parseInt(right.getText());
while (number>0)
{if (number%2==0) s='0'+s;
else s='1'+s;
number=number/2;
}
left.setText(s);
}
}

public static void main(String[] args)
{ System.out.println("knutsel");
Frame f=new Frame();
Binary bin=new Binary();
f.setSize(380,100);
f.setTitle("Conversion binary <-> decimal");
f.add(bin);
bin.init();
f.addWindowListener(new MyWindow());
f.setVisible(true);
}
}

Alvast bedankt als jullie me kunnen helpen.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Voor het posten van code hebben we code tags; verder vinden we het fijn als je een concrete vraag stelt ("Maar ik snap niet hoe het in actionperformed verwerkt moet worden." > Wat snap je dan niet) en stellen we 't op prijs als je je code beperkt tot relevante(!) stukjes. Alle overige fluff die niet interessant is voor je probleem mag je dus achterwege laten. Tot slot zien/horen we ook graag wat je zelf al geprobeerd / gezocht (en welke keywords je daarvoor gebruikte) / gevonden hebt, wat daar niet aan werkt(e) en waarom dat volgens jou zo is. Meer daarover in onze Quickstart.

Open gerust een nieuw topic, hou dan wel even bovenstaand in je achterhoofd ;)

Oh, en lees dan ook even Waar hoort mijn topic? want ik zie niet waarom je topic in Webdesign, Markup & Clientside Scripting staat i.p.v. Programming ;)

[ Voor 14% gewijzigd door RobIII op 20-01-2014 20:03 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Dit topic is gesloten.