You are on page 1of 4

/* Shawn C. Stalder Mod_Con.java Objectives: 1) Enter a number and convert to any base chosen by the user.

*/ // imports import javax.swing.*; import java.awt.*; import java.applet.*; import java.awt.event.*; import java.text.*; public class Mod_Con extends Applet implements ActionListener { // globals, buttons, labels, textAreas, and textBoxes private int trans[]; private TextField txt_number; private TextField txt_base; private Button btn_Mod; private Button btn_Clear; private TextArea result; // Fonts private Font Arial; private Font Norm; public void init() { setLayout(null); // set objects txt_number = new TextField(); txt_base = new TextField(); btn_Mod = new Button("Convert"); btn_Clear = new Button("Clear"); result = new TextArea(); // position objects txt_number.setBounds(10, 40, 120, 40); txt_base.setBounds(140, 40, 50, 40); btn_Mod.setBounds(10, 90, 120, 40); btn_Clear.setBounds(140, 90, 120, 40); result.setBounds(10, 140, 400, 60); // add objects to the form add(txt_number); add(txt_base); btn_Mod.addActionListener(this); add(btn_Mod); btn_Clear.addActionListener(this); add(btn_Clear); add(result); // initialize fonts Arial = new Font("Arial", Font.PLAIN, 28); Norm = new Font("Arial", Font.BOLD, 18); setFont(Arial); }

public void actionPerformed(ActionEvent e) { Object source = e.getSource(); if(source == btn_Mod) { String input; int base; int num; int size; // clear the text area result.setText(""); // get number to convert input = txt_number.getText(); input = input.trim(); size = input.length(); num = Integer.parseInt(input); if(num <= 0) { result.append("Invalid Number."); } else { // get base to convert to input = txt_base.getText(); input = input.trim(); base = Integer.parseInt(input); Mod_Convert(num, base, size); } } else if(source == btn_Clear) { txt_number.setText(""); txt_base.setText(""); result.setText(""); } } public void Mod_Convert(int num, int base, int size) { int x = num; int y = base; int i = 0; trans = new int[100]; do { trans[i] = x % y; x = x / y; i++; }while(x != 0); // display for(int k = i; k >= 0; k--) { if(trans[k] == 10)

{ result.append("A"); } else if(trans[k] == 11) { result.append("B"); } else if(trans[k] == 12) { result.append("C"); } else if(trans[k] == 13) { result.append("D"); } else if(trans[k] == 14) { result.append("E"); } else if(trans[k] == 15) { result.append("F"); } else if(trans[k] == 16) { result.append("G"); } else if(trans[k] == 17) { result.append("H"); } else if(trans[k] == 18) { result.append("I"); } else if(trans[k] == 19) { result.append("J"); } else if(trans[k] == 20) { result.append("K"); } else if(trans[k] == 21) { result.append("L"); } else if(trans[k] == 22) { result.append("M"); } else if(trans[k] == 23) { result.append("N"); } else if(trans[k] == 24) { result.append("O"); } else if(trans[k] == 25) {

result.append("P"); } else if(trans[k] == 26) { result.append("Q"); } else if(trans[k] == 27) { result.append("R"); } else if(trans[k] == 28) { result.append("S"); } else if(trans[k] == 29) { result.append("T"); } else if(trans[k] == 30) { result.append("U"); } else if(trans[k] == 31) { result.append("V"); } else if(trans[k] == 32) { result.append("W"); } else if(trans[k] == 33) { result.append("X"); } else if(trans[k] == 34) { result.append("Y"); } else if(trans[k] == 35) { result.append("Z"); } else { result.append(String.valueOf(trans[k])); } } } public void paint(Graphics g) { setSize(430, 210); setBackground(new Color(0, 100, 200)); g.setFont(Norm); g.drawString("Number", 10, 30); g.drawString("Base", 140, 30); } }

You might also like