πŸ’» μžλ°” λ―Έλ‹ˆ ν”„λ‘œμ νŠΈ(1) - 볡ꢌ μ‹œμŠ€ν…œ

joyfulwaveΒ·2022λ…„ 9μ›” 8일
0

πŸ’‘ μžλ°” λ―Έλ‹ˆ ν”„λ‘œμ νŠΈ(1)

λ“œλ””μ–΄ μ•½ 5κ°œμ›” κ°„μ˜ κ΅­λΉ„μˆ˜μ—… μ—¬μ • 쀑 첫 μ €μ˜ ν”„λ‘œμ νŠΈλ₯Ό μ œμž‘ν•˜κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 머리에 그렀진 ν”„λ‘œμ νŠΈμ˜ μ’…λ₯˜λŠ” λ‹€μ–‘ν–ˆλŠ”λ° ν˜„μž¬ μˆ˜μ€€μœΌλ‘œ μ œμž‘ κ°€λŠ₯ν•  λͺ©λ‘λ“€λ‘œ μ •λ¦¬ν•˜λ‹€λ³΄λ‹ˆ μ•„μ£Ό 적은 μˆ˜κ°€ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. πŸ˜‚ μž‘κ³  κ·€μ—¬μš΄ 제 첫 ν”„λ‘œμ νŠΈλ₯Ό μ†Œκ°œν•΄λ“œλ¦΄κ²Œμš”!

πŸ“… μ œμž‘ κΈ°κ°„

2022λ…„ 8μ›” 24일 - 2022λ…„ 9μ›” 1일(총 10일)

βœ”οΈ 주제, ν”„λ‘œμ νŠΈ 섀계

μ œμž‘ν•œ λ™ν–‰λ‘œλ˜λŠ” ν”„λ‘œμ νŠΈ λͺ…μ—μ„œλ„ μœ μΆ”κ°€ κ°€λŠ₯ν•˜λ“― 볡ꢌ μ‹œμŠ€ν…œμž…λ‹ˆλ‹€. ν”„λ‘œκ·Έλž¨μ„ μ‹œμž‘ν•˜κ²Œ 되면 둜또 κ΅¬μž…μ„ μœ„ν•œ νšŒμ›κ°€μž…μ˜ μ—¬λΆ€λ₯Ό 묻고 그에 λ”°λ₯Έ 인적 사항을 λ°›μŠ΅λ‹ˆλ‹€. 둜또λ₯Ό ꡬ맀할 수 μžˆλŠ” μ–΄λ–€ μ œν•œ(λ―Έμ„±λ…„μžλŠ” ꡬ맀 λΆˆκ°€)을 받지 μ•ŠλŠ”λ‹€λ©΄ 둜또λ₯Ό ꡬ맀할 수 있고 둜또 κ΅¬μž…μ€ 0λΆ€ν„° 9κΉŒμ§€ 일의 자리둜 6개의 숫자λ₯Ό μž…λ ₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μž…λ ₯ν•œ 숫자둜 둜또 ꡬ맀λ₯Ό μ§„ν–‰ν•˜λ©΄ νšŒμ›κ°€μž… μ‹œ μž…λ ₯ν–ˆλ˜ 결제 λΉ„λ°€λ²ˆν˜Έλ₯Ό μž…λ ₯ν•˜λ©΄ 둜또 ꡬ맀가 μ™„λ£Œλ©λ‹ˆλ‹€. 이후에 랜덀으둜 둜또 μˆ«μžκ°€ μƒμ„±λ˜κ³  κ·Έ λ²ˆν˜Έκ°€ μ‚¬μš©μžκ°€ μž…λ ₯ν–ˆλ˜ λ²ˆν˜Έμ™€ λ™μΌν•˜λ©΄ 당첨이고 그렇지 μ•ŠμœΌλ©΄ 낙첨이 λ˜λŠ” μ‹œμŠ€ν…œμž…λ‹ˆλ‹€.

βœ”οΈ κΈ°λŠ₯

λ™ν–‰λ‘œλ˜λŠ” 크게 Scanner, λ¬΄ν•œ λ£¨ν”„μ˜ μ œμ–΄, thread 그리고 랜덀 λ©”μ„œλ“œμ˜ κΈ°λŠ₯을 가지고 μžˆμŠ΅λ‹ˆλ‹€. νšŒμ›κ°€μž… μ‹œ μ‚¬μš©μžμ˜ 인적사항을 Scanner 클래슀둜 μž…λ ₯λ°›κ³ , 인적사항에 잘λͺ»λœ λ‚΄μš©μ΄ μž…λ ₯되면 λ‹€μ‹œ μž…λ ₯을 μœ λ„ν•  수 μžˆλ„λ‘ λ¬΄ν•œ λ£¨ν”„μ•ˆμ— 쑰건문을 μ‚¬μš©ν•˜μ˜€κ³ , 좔첨이 μ§„ν–‰λ˜κ±°λ‚˜ λ‹Ήμ²¨μ˜ 유무λ₯Ό 확인할 λ•Œ thread sleep λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ 쑰금의 κΈ΄μž₯감을 λ”ν•΄μ€¬μŠ΅λ‹ˆλ‹€. 그리고 λ‹Ήμ—°νžˆ 둜또의 νŠΉμ„±μƒ 랜덀으둜 μƒμ„±λ˜λŠ” 둜또의 번호λ₯Ό μœ„ν•΄ 랜덀 λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

βœ”οΈ μ†ŒμŠ€ μ½”λ“œ

🟒 DatePrinter

package lottery;

import java.util.Calendar;

public class DatePrinter {
	
	// μΊ˜λ¦°λ” 클래슀λ₯Ό νŒŒλΌλ―Έν„°λ‘œ 전달받아,
	// κ·Έ 객체가 ν¬ν•¨ν•˜κ³  μžˆλŠ” μ‹œκ°μ„ 좜λ ₯ν•˜λŠ” λ©”μ„œλ“œ	
	public static void printDateTime( Calendar cal ) {
		
		// λ…„, μ›”, 일, μ‹œ, λΆ„, 초 => 24μ‹œκ°„μ œ
		int yy = cal.get(Calendar.YEAR);
		// μžλ°”μ—μ„œμ˜ 월은 0λΆ€ν„° μ‹œμž‘λœλ‹€.
		int mm = cal.get(Calendar.MONTH) + 1;
		int dd = cal.get(Calendar.DAY_OF_MONTH);
		int hh = cal.get(Calendar.HOUR_OF_DAY);
		int mi = cal.get(Calendar.MINUTE);
		int ss = cal.get(Calendar.SECOND);		
		
	}
}

🟒 Loading

package lottery;

public class Loading {
	public void loading(){
		// ν”„λ‘œκ·Έλž¨μ„ 주어진 μ‹œκ°„λ™μ•ˆ λŒ€κΈ°ν•˜λ„λ‘ ν•˜λŠ” 처리
			try {
				Thread.sleep(3000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				//e.printStackTrace();
			}		
	}
}

🟒 Lottery

package lottery;

import harrypotter.PersonalData;

import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.Calendar;

public class Lottery {
	String randomNum = "";
	String[] randomNumbers =  new String[6];
	
	// 랜덀으둜 λ‘œλ˜λ²ˆν˜Έκ°€ μƒμ„±λ˜κ²Œ ν•œλ‹€.
	// λ²”μœ„λ₯Ό κ°–λŠ” λžœλ€κ°’μ„ μƒμ„±ν•˜μ—¬ λ¦¬ν„΄ν•˜λŠ” λ©”μ„œλ“œ
	public static int random(int min, int max) {
		int num =  (int)((Math.random() * (max - min + 1)) + min);
		return num;
	}
	
	public void randomLotteryNum() {		
		
		for(int i = 0; i < 6; i++) {
			randomNum += PersonalData.getInstance().random(0, 9);
		}		
		
		this.randomNum = randomNum;		
		
	}
	
	// 랜덀으둜 μƒμ„±λœ 둜또 번호λ₯Ό 좜λ ₯ν•œλ‹€.
	public void lotteryNum() {
		System.out.println("\n[INFO] 둜또 당첨 번호 μ•ˆλ‚΄ λ“œλ¦½λ‹ˆλ‹€.");
		System.out.println("\nβ˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†");
		System.out.println("β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†[" + randomNum + "]β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†");
		System.out.println("β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†β˜…β˜†");
		
		SimpleDateFormat format1 = new SimpleDateFormat ( "yyyy-MM-dd HH:mm:ss");
				
		Calendar time = Calendar.getInstance();
		       
		String format_time1 = format1.format(time.getTime());
		System.out.println(format_time1);
		
		System.out.println("\n=================================================================\n");
	}
	
	// 둜또 κ²°κ³Όλ₯Ό 좜λ ₯ν•œλ‹€.
	public void result() {
		Membership m = Membership.getInstance();
		Purchase p = Purchase.getInstance();
		
		System.out.println("[INFO] " + m.name + "λ‹˜μ˜ 당첨 κ²°κ³Ό 3초 후에 μ•ˆλ‚΄λ“œλ¦½λ‹ˆλ‹€.");
		System.out.println("\n=================================================================\n");
		Loading l = new Loading();
		l.loading();
		
		if( p.customerNum.equals(randomNum) ) {
			System.out.println("[INFO] " + m.name + "λ‹˜μ˜ λ‘œλ˜λ²ˆν˜ΈλŠ” "+ p.customerNum + "μž…λ‹ˆλ‹€.");
			System.out.println("[INFO] μΆ•ν•˜λ“œλ¦½λ‹ˆλ‹€. λ‘œλ˜μ— λ‹Ήμ²¨λμŠ΅λ‹ˆλ‹€.");
		}else {
			System.out.println("[INFO] " + m.name + "λ‹˜μ˜ λ‘œλ˜λ²ˆν˜ΈλŠ” "+ p.customerNum + "μž…λ‹ˆλ‹€.");
			System.out.println("[INFO] λ‚™μ²¨μž…λ‹ˆλ‹€. λ‹€μŒ 기회λ₯Ό λ…Έλ €λ³΄μ„Έμš”.");
		}
		System.out.println("\n=================================================================\n");
		System.out.println("[INFO] 둜또 좔첨이 μ™„λ£ŒλμŠ΅λ‹ˆλ‹€. κ°μ‚¬ν•©λ‹ˆλ‹€.");
		System.out.println("\n=================================================================");
	}
}

🟒 Membership

package lottery;

import java.util.Calendar;
import java.util.Scanner;

public class Membership {
	// 싱글톀 객체 생성
	private static Membership m;
	public static Membership getInstance() {
		if( m == null ) {
			m = new Membership();
		}
		return m;
	}
	public static void freeInstance() {
		m = null;
	}
	private Membership() {}
	
	String name;		// 이름
	String personalYY;	// νƒœμ–΄λ‚œ 년도
	String personalMM;	// νƒœμ–΄λ‚œ μ›”
	String personalDD;	// νƒœμ–΄λ‚œ 일	
	String email;		// 이메일
	String address;		// μ£Όμ†Œ
	String pw;			// μΉ΄λ“œ λΉ„λ°€λ²ˆν˜Έ
		
	// νšŒμ›κ°€μž… 양식
	public void membershipGuide() {	
		Scanner sc = new Scanner(System.in);
		
		System.out.println(
				" \n\n ##        ####    ######   ######   ######   #####    ##  ##  \r\n"
				+ " ##       ##  ##     ##       ##     ##       ##  ##   ##  ##  \r\n"
				+ " ##       ##  ##     ##       ##     #####    #####    ###### \r\n"
				+ " ##       ##  ##     ##       ##     ##       ## ##      ##    \r\n"
				+ " ######    ####      ##       ##     ######   ##  ##     ##");
		
		System.out.println("\n[INFO] μ•ˆλ…•ν•˜μ„Έμš”. λ™ν–‰λ‘œλ˜μž…λ‹ˆλ‹€.\n"
				+ "둜또 κ΅¬μž…μ„ μœ„ν•΄μ„  νšŒμ›κ°€μž…μ΄ ν•„μš”ν•©λ‹ˆλ‹€.\n"
				+ "νšŒμ›κ°€μž…μ„ μ§„ν–‰ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?\n"
				+ "[1] 예\t[2] μ•„λ‹ˆμš”");
		
		String answer = "";
		
		for(;;) {
			System.out.print("\nμž…λ ₯ : ");			
			answer = sc.next();
			
			if(answer.equals("1") || answer.equals("예")) {
				personalData();
				break;				
			}else if(answer.equals("2") || answer.equals("μ•„λ‹ˆμš”")){
				System.out.println("\n[ERROR] νšŒμ›μ΄ μ•„λ‹ˆλ©΄ 둜또λ₯Ό ꡬ맀할 수 μ—†μŠ΅λ‹ˆλ‹€.");
				System.exit(0);
			}else {
				System.out.println("\n[ERROR] 잘λͺ»λœ μž…λ ₯μž…λ‹ˆλ‹€. λ‹€μ‹œ μž…λ ₯ν•΄μ£Όμ„Έμš”.");
			}
			
		}
		
	}
	
	public void personalData() {
		Scanner sc = new Scanner(System.in);
		System.out.println("\n=================================================================\n");
		System.out.println("[INFO] νšŒμ›κ°€μž…μ„ μœ„ν•΄ μ•„λž˜μ˜ 양식을 μ±„μ›Œμ£Όμ„Έμš”.\n");
		
		System.out.print("* 이름 : ");
		this.name = sc.next();		
		
		
		// λ―Έμ„±λ…„μžλŠ” κ°€μž…ν•  수 μ—†λ‹€.
		// 생년월일은 쑰건에 λ§žμ§€ μ•ŠμœΌλ©΄ λ‹€μ‹œ μž…λ ₯을 ν•΄μ•Όλœλ‹€.		
		int personalYYnum = 0;
		int personalMMnum = 0;
		int personalDDnum = 0;
		
		// μž…λ ₯ν•˜λŠ” 연도가 μ˜¬ν•΄λ₯Ό λ„˜κΈ°μ§€ μ•Šκ²Œ λ§Œλ“ λ‹€.
		Calendar cal = Calendar.getInstance();
		int yy = cal.get(Calendar.YEAR);
		
		for(;;) {
			
			System.out.print("* νƒœμ–΄λ‚œ 연도 : ");		
			this.personalYY = sc.next();
			
			personalYYnum = Integer.parseInt(personalYY);
			
				
				if( personalYYnum == yy || personalYYnum > yy - 20 && personalYYnum < yy) {
					System.out.println("[ERROR] λ―Έμ„±λ…„μžλŠ” 둜또λ₯Ό ꡬ맀할 수 μ—†μŠ΅λ‹ˆλ‹€."
							+ "\nνšŒμ›κ°€μž…μ΄ μ’…λ£Œλ©λ‹ˆλ‹€.");
					System.exit(0);
				}else if( personalYYnum < 1900 || personalYYnum > yy) {
					System.out.println("[ERROR] 잘λͺ»λœ μž…λ ₯μž…λ‹ˆλ‹€."
							+ "\nνƒœμ–΄λ‚œ 연도λ₯Ό λ‹€μ‹œ μž…λ ₯ν•΄μ£Όμ„Έμš”.\n");
				}else {
					break;
				}
			
			
		}
		
		for(;;) {
			
			System.out.print("* νƒœμ–΄λ‚œ μ›” : ");
			this.personalMM = sc.next();
			
			personalMMnum = Integer.parseInt(personalMM);
			
			if( personalMMnum == 0 || personalMMnum > 12) {
				System.out.println("[ERROR] 잘λͺ»λœ μž…λ ₯μž…λ‹ˆλ‹€."
						+ "\nνƒœμ–΄λ‚œ 월을 λ‹€μ‹œ μž…λ ₯ν•΄μ£Όμ„Έμš”.\n");
			}else {
				break;
			}
		}
		
		// μž…λ ₯ν•œ 월에 λ”°λ₯Έ 일의 λ³€ν™”
		DatePrinter.printDateTime(cal);
		cal.set(Calendar.DAY_OF_MONTH, personalMMnum);
		int day_count = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
		
		for(;;) {
			
			System.out.print("* νƒœμ–΄λ‚œ 일 : ");
			this.personalDD = sc.next();
			
			personalDDnum = Integer.parseInt(personalDD);
			
				if(personalDDnum == 0 || personalDDnum > day_count + 1) {
					System.out.println("[ERROR] 잘λͺ»λœ μž…λ ₯μž…λ‹ˆλ‹€."
							+ "\nνƒœμ–΄λ‚œ 일을 λ‹€μ‹œ μž…λ ₯ν•΄μ£Όμ„Έμš”.\n");
				}else {
					break;
				}	
				
		}
		
		System.out.print("* μ£Όμ†Œ : ");
		this.address = sc.next();
		
		System.out.print("* 결제 λΉ„λ°€λ²ˆν˜Έ : ");
		sc.nextLine(); // next() 였λ₯˜ 방지
		this.pw = sc.next();		
		
		System.out.println("\n[INFO] νšŒμ›κ°€μž…μ΄ μ™„λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.");
		
		System.out.println("\n=================================================================");
		
	}
}

🟒 purchase

package lottery;

import java.util.Scanner;


public class Purchase{
	// 싱글톀 객체 생성
	private static Purchase p;
	public static Purchase getInstance() {
		if( p == null ) {
			p = new Purchase();
		}
		return p;
	}
	public static void freeInstance() {
		p = null;
	}
	private Purchase() {}
	
	String customerNum = "";
	
	public void purchaseQuestion(){
		Membership m = Membership.getInstance();
		
		Scanner sc = new Scanner(System.in);
		
		System.out.println("\n[INFO]" + m.name + "λ‹˜, μ•ˆλ…•ν•˜μ„Έμš”."
				+ "\n둜또λ₯Ό κ΅¬λ§€ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?"
				+ "\n[1] 예 \t [2] μ•„λ‹ˆμš”");		
		
		String answer = "";
		
		for(;;) {
			System.out.print("\nμž…λ ₯ : ");			
			answer = sc.next();
			
			if(answer.equals("1") || answer.equals("예")) {
				letsLottery();
				System.out.println("\n=================================================================");
				break;				
			}else if(answer.equals("2") || answer.equals("μ•„λ‹ˆμš”")){
				System.out.println("\n[ERROR] 둜또 ꡬ맀가 μ’…λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.");
				System.exit(0);	
			}else {
				System.out.println("\n[ERROR] 잘λͺ»λœ μž…λ ₯μž…λ‹ˆλ‹€. λ‹€μ‹œ μž…λ ₯ν•΄μ£Όμ„Έμš”.");
			}
			
		}
	}
	
	
	public void letsLottery() {
		Scanner sc = new Scanner(System.in);
		
		System.out.println("\n[INFO] 1의 자리 숫자둜 총 6개의 둜또 번호λ₯Ό μž…λ ₯ν•΄μ£Όμ„Έμš”.");
		
		String num1 = "";
		String num2 = "";
		String num3 = "";
		String num4 = "";
		String num5 = "";
		String num6 = "";
		
		// 1의 자리 μˆ«μžκ°€ μ•„λ‹ˆλ©΄ λ¬΄ν•œ 반볡
		for(;;) {
			System.out.print("첫번째 번호 μž…λ ₯ : ");
			num1 = sc.next();
			if(num1.length() != 1) {
				System.out.println("1의 자리 숫자만 μž…λ ₯ν•΄μ£Όμ„Έμš”. ( 0 ~ 9 )");
			}else {
				break;
			}
		}
		
		for(;;) {
			System.out.print("λ‘λ²ˆμ§Έ 번호 μž…λ ₯ : ");
			num2 = sc.next();
			if(num2.length() != 1) {
				System.out.println("1의 자리 숫자만 μž…λ ₯ν•΄μ£Όμ„Έμš”. ( 0 ~ 9 )");
			}else {
				break;
			}			
		}
		
		for(;;) {
			System.out.print("μ„Έλ²ˆμ§Έ 번호 μž…λ ₯ : ");
			num3 = sc.next();
			if(num3.length() != 1) {
				System.out.println("1의 자리 숫자만 μž…λ ₯ν•΄μ£Όμ„Έμš”. ( 0 ~ 9 )");
			}else {
				break;
			}			
		}

		for(;;) {
			System.out.print("λ„€λ²ˆμ§Έ 번호 μž…λ ₯ : ");
			num4 = sc.next();
			if(num4.length() != 1) {
				System.out.println("1의 자리 숫자만 μž…λ ₯ν•΄μ£Όμ„Έμš”. ( 0 ~ 9 )");
			}else {
				break;
			}			
		}
		
		for(;;) {
			System.out.print("λ„€λ²ˆμ§Έ 번호 μž…λ ₯ : ");
			num5 = sc.next();
			if(num5.length() != 1) {
				System.out.println("1의 자리 숫자만 μž…λ ₯ν•΄μ£Όμ„Έμš”. ( 0 ~ 9 )");
			}else {
				break;
			}			
		}
		
		for(;;) {
			System.out.print("μ—¬μ„―λ²ˆμ§Έ 번호 μž…λ ₯ : ");
			num6 = sc.next();
			if(num6.length() != 1) {
				System.out.println("1의 자리 숫자만 μž…λ ₯ν•΄μ£Όμ„Έμš”. ( 0 ~ 9 )");
			}else {
				break;
			}			
		}	
		
		
		this.customerNum= num1 + num2 + num3 + num4 + num5 + num6;
		
		System.out.print("\n[INFO] μž…λ ₯ν•˜μ‹  λ²ˆν˜ΈλŠ”" + "[" + num1 + "]" + "[" + num2 + "]" + "[" + num3 + "]" 
				+ "[" + num4 + "]" + "[" + num5 + "]" + "[" + num6 + "]" + "μž…λ‹ˆλ‹€.");
		
		System.out.println("\nμž…λ ₯ν•˜μ‹  번호둜 둜또 ꡬ맀 μ§„ν–‰ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?"
				+ "\n[1] 예 \t [2] μ•„λ‹ˆμš”");		
		
		String answer = "";
		
		for(;;) {
			System.out.print("\nμž…λ ₯ : ");			
			answer = sc.next();
			
			if(answer.equals("1") || answer.equals("예")) {
				order();
				break;				
			}else if(answer.equals("2") || answer.equals("μ•„λ‹ˆμš”")){
				System.out.println("\n[ERROR] 둜또 ꡬ맀가 μ’…λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.");
				System.exit(0);	
			}else {
				System.out.println("\n[ERROR] 잘λͺ»λœ μž…λ ₯μž…λ‹ˆλ‹€. λ‹€μ‹œ μž…λ ₯ν•΄μ£Όμ„Έμš”.");
			}
			
		}
	}
	
	public void order() {
		Membership m = Membership.getInstance();
		Scanner sc = new Scanner(System.in);	
		
		String pw = "";
		
		for(;;) {
			System.out.println("\n[INFO] 결제 λΉ„λ°€λ²ˆν˜Έλ₯Ό μž…λ ₯ν•΄μ£Όμ„Έμš”.");
			System.out.print("μž…λ ₯ : ");
			pw = sc.next();
			
			if(pw.equals(m.pw)) {
				System.out.println("\n[INFO] κ²°μ œκ°€ μ™„λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.");
				System.out.println("\n[INFO] 3초 후에 둜또 좔첨이 μ§„ν–‰λ©λ‹ˆλ‹€.");
				break;
			}else {
				System.out.println("\n[ERROR] 결제 λΉ„λ°€λ²ˆν˜Έκ°€ μΌμΉ˜ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λ‹€μ‹œ μž…λ ₯ν•΄μ£Όμ„Έμš”.");
			}
		}
		
	}
	
}

🟒 Main

// λ©”μΈλ©”μ†Œλ“œκ°€ ν¬ν•¨λ˜μ–΄ μžˆλŠ” 클래슀둜 μ‚¬μš©μžκ°€ 싀행을 ν•˜κ²Œ 될 클래슀
package lottery;

public class Main {

	public static void main(String[] args) {

		// ν™˜μ˜μΈμ‚¬ 및 νšŒμ›κ°€μž… 진행 μ—¬λΆ€
		Membership m = Membership.getInstance();
		m.membershipGuide();
		// νšŒμ›κ°€μž…μ„ ν•œλ‹€.	
		
		// 둜또λ₯Ό ꡬ맀
		Purchase p = Purchase.getInstance();
		// 둜또 ꡬ맀 μ—¬λΆ€λ₯Ό 묻고 둜또λ₯Ό κ΅¬λ§€ν•œλ‹€.
		p.purchaseQuestion();
				
		// 둜또 좔첨 λ‘œλ”©
		Loading l = new Loading();
		l.loading();
				
		// 둜또 번호λ₯Ό μΆ”μ²¨ν•œλ‹€.
		Lottery lt = new Lottery();
		
		// 랜덀으둜 둜또 번호λ₯Ό μƒμ„±ν•œλ‹€.
		lt.randomLotteryNum();
		
		// λ‹Ήμ²¨λœ 둜또 번호λ₯Ό 좜λ ₯ν•œλ‹€.
		lt.lotteryNum();
		
		// 당첨 κ²°κ³Όλ₯Ό 좜λ ₯ν•œλ‹€.
		lt.result();
		
	}

}

βœ”οΈ μ‹œμ—° ν™”λ©΄

(1)

(2)


πŸ’‘ μ†Œκ°

처음 ν•΄λ³΄λŠ” ν”„λ‘œμ νŠΈμΈ 만큼 μš•μ‹¬μ€ λ§Žμ€λ° κ·Έ μš•μ‹¬λ§ŒνΌ 따라 주지 μ•ŠλŠ” 제 μ‹€λ ₯에 많이 닡닡함을 λŠκΌˆμŠ΅λ‹ˆλ‹€. λΉ„κΉŒλ»”μ©ν•œ ν”„λ‘œμ νŠΈλŠ” μ•„λ‹ˆμ§€λ§Œ ν•˜λ‚˜λΆ€ν„° μ—΄κΉŒμ§€ κΈ°νšν•˜κ³  μ œμž‘ν•˜λŠ” 과정을 κ²ͺκ³ λ‚˜λ‹ˆ μ°Έ μ†Œμ€‘ν•˜κ²Œ λŠκ»΄μ§€λŠ” ν”„λ‘œμ νŠΈμž…λ‹ˆλ‹€. μ œμž‘μ„ ν•˜λŠ” 과정이 μ‰½μ§€λ§Œμ€ μ•Šμ•˜μ§€λ§Œ 차곑차곑 μŒ“μ•„κ°ˆ 지식듀이 κΈ°λŒ€κ°€ 되고 κ·Έ 지식듀을 ν†΅ν•΄μ„œ 더 λ‚˜μ€ 결과물듀을 λ§Œλ“€μ–΄κ°ˆ 날듀이 μ„€λ ˜μœΌλ‘œ λ‹€κ°€μ˜΅λ‹ˆλ‹€.

2개의 λŒ“κΈ€

comment-user-thumbnail
2023λ…„ 9μ›” 25일

잘 보고 κ°‘λ‹ˆλ‹€!!

λ‹΅κΈ€ 달기
comment-user-thumbnail
2023λ…„ 10μ›” 2일

freeInstance λŠ” μ–Έμ œ μ“°μ‹œλŠ” 건지 μ•Œ 수 μžˆμ„κΉŒμš”?

λ‹΅κΈ€ 달기