본문 바로가기
study/Java

[Java] 19 ~ 21. TEST3 풀이 (Coin2 클래스와 구동 클래스 구현하기)

by 금이패런츠 2022. 3. 18.
728x90
반응형
package chap6;
/*
2. Coin 클래스와 구동 클래스 구현하기
  Coin 클래스
   멤버변수 : int side (앞면:0, 뒷면:1), serialNo(동전번호), sno(동전번호 생성을위한 클래스변수)
   멤버메서드 : void flip()
                Math.random() 메서드를 사용하여 side를 결정.

  구동클래스
    Coin 클래스의 객체를 10개 생성하기.
    객체생성시, 동전번호를 입력하고, flip() 메서드를 이용하여 각각의 동전이 앞면인지 뒷면인지
    여부를 출력하기

  [결과]
1번 동전 : 앞면
2번 동전 : 앞면
3번 동전 : 뒷면
4번 동전 : 앞면
5번 동전 : 뒷면
6번 동전 : 뒷면
7번 동전 : 뒷면
8번 동전 : 뒷면
9번 동전 : 뒷면
10번 동전 : 뒷면
전체 앞면 동전의 갯수 :3
전체 뒷면 동전의 갯수 :7
 */
class Coin2 {
	int side, serialNo;
	static int sno;
	Coin2() {
		serialNo = ++sno;
	}
	void flip() {
		side = (int)(Math.random() * 2);
	}
	public String toString() {
		return serialNo + "번 동전 : " + ((side==0)?"앞면":"뒷면");
	}
}

public class Test0311_3 {
	public static void main(String[] args) {
    
		Coin2[] coinarr = new Coin2[10];
		int[] cntarr = new int[2];
		for(int i=0;i<coinarr.length;i++) {
			coinarr[i] = new Coin2();
			coinarr[i].flip();
			System.out.println(coinarr[i]);
			cntarr[coinarr[i].side]++;
		}
		System.out.println("전체 앞면 동전의 갯수 :" + cntarr[0]);
		System.out.println("전체 뒷면 동전의 갯수 :" + cntarr[1]);
	}
}
728x90
반응형