본문 바로가기
자바

자바 소스코드: Money Changer(금액 단위별 나누기)

by 드린 2016. 10. 29.

목차

    반응형
    package javaapplication49;
    
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
    
    class Ex3 extends JFrame 
    {
        int[] moneyc = {50000, 10000, 1000, 500, 100, 50, 10, 1};
        String[] str = {"금액", "오만원", "만원", "천원", "500원", "100원", "50원", "10원", "1원"};
        JLabel la = new JLabel();
        JTextField[] tf = new JTextField[str.length];
        JButton btn = new JButton("계산");
        Ex3() 
        {
            this.setTitle("Money Changer");
            this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            this.getContentPane().setBackground(Color.PINK);
            this.setLayout(null);
            
            la = new JLabel(str[0]);
            la.setSize(40, 20);
            la.setLocation(20, 20);
            this.add(la);
            
            tf[0] = new JTextField(30);
            tf[0].setSize(100, 20);
            tf[0].setLocation(100, 20);
            this.add(tf[0]);
            
            btn.setSize(70, 20);
            btn.setLocation(210, 20);
            btn.addActionListener(new ActionListener(){
                @Override
                public void actionPerformed(ActionEvent e) {
                    String mon = tf[0].getText();
                if(mon.length() == 0) 
                    return;
                
                int money = Integer.parseInt(mon);
                int m;
                
                for(int i=0; i<moneyc.length; i++) 
                {
                    m = money/moneyc[i];
                    tf[i + 1].setText(Integer.toString(m));
                    if(m > 0) 
                        money = money % moneyc[i];
                }
                }
            });
            this.add(btn);
            for(int i = 1; i < str.length; i++)
            {
                la = new JLabel(str[i]);
                la.setHorizontalAlignment(JLabel.RIGHT);
                la.setSize(50, 20);
                la.setLocation(50, 50+(i*20));
                
                tf[i] = new JTextField(30);
                tf[i].setHorizontalAlignment(JTextField.CENTER);
                tf[i].setSize(70, 20);
                tf[i].setLocation(120, 50+(i*20));
                this.add(la);
                this.add(tf[i]);
            }
            
            setSize(300, 300);
            setVisible(true);
        }
    }
    public class JavaApplication49 {
        public static void main(String[] args) 
        {
            new Ex3();
        }
    }
    
    

    <결과>

    2016/10/29 - [자바] - 자바 소스코드: 텍스트필드와 콤보 박스를 이용한 예제

    2016/10/29 - [자바] - 자바 소스코드: 체크박스 예제(버튼 비활성화, 감추기)

    2016/10/29 - [자바] - 자바 소스코드: 그래픽 이미지 확대 축소 연습

    #자바 #자바 소스코드 #머니 체인저 #금액 단위별 나누기 #ATM #액션 리스너 #배열 생성 #명품자바 프로그래밍 실습문제 11장 3번 #자바 예제

    반응형