본문 바로가기

전체 글

(149)
Day06_random_Test03 : 랜덤 구구단 문제 출력 (random 활용) (Q) 랜덤으로 구구단 문제를 하나 출제하고 사용자가 정답을 입력하면 정답과 오답을 판정하는 프로그램을 구현하세요. (단, 문제는 2x1부터 9x9까지의 범위 내에서 출제해야 합니다) package day06; import java.util.Scanner; import java.util.Random; public class Day06_random_Test03 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int input = sc.nextInt(); Random r = new Random(); int numR = r.nextInt(9) + 1; System.out.print(input + " X " + num..
Day06_random_Test02 : 주사위, 로또 번호, OTP번호, 동전의 결과 (random 라이브러리 활용) (★) (Q) 다음 랜덤값을 구하여 화면에 출력하세요 1) 주사위 1개를 던진 결과 2) 로또 번호 1개를 추첨한 결과 (1~45) 3) OTP번호 1개를 생성한 결과 (6자리 정수) 4) 동전을 던졌을 때 예사되는 결과 앞 또는 뒤 package day06; import java.util.Random; public class Day06_random_Test02 { public static void main(String[] args) { Random r = new Random(); // 1. 주사위 int dice = r.nextInt(6) + 1; System.out.println(dice); // 2. 로또 번호 1개 추첨 (1~45) int lotto = r.nextInt(45) + 1; System.ou..
Day06_random_Test01 : 난수(random)의 생성 범위 제한(Math.random()와 random 라이브러리) package day06; public class Day06_random_Test01 { public static void main(String[] args) { double a = Math.random();// 1) 생성된 double은 0.0에서 1.0 사이 double b = a * 10;// 2) 10을 곱하면 0.0xxx...에서 9.0xxx... 사이 int c = (int)b;// 3) int로 형 변환(소수점 버림)하면 0에서 9 사이 int d = c + 1;// 4) 1을 더하면 1에서 10 사이 double e = (int)(Math.random() * 10) + 1;// 5) 1에서 10 사이에서 생성되는 난수 } } 1) Math.random을 사용하여 double a를 정의하면 ..
Day06_loop3_Test03 : 숫자 모래성 게임 (while 반복문 활용 - 무한 반복문) (★) (Q) 숫자 모래성 게임 - 사용자에게 숫자를 입력받아서 입력한 숫자만큼 100에서 차감합니다 - 계속적으로 입력을 받아서 감소시키다가 숫자가 음수가 되는 순간 게임 오버 메세지를 띄우고 종료 - 게임오버 전까지 입력한 숫자의 갯수 출력 package day06; import java.util.Scanner; public class Day06_loop3_Test03 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int input = sc.nextInt(); int gameCount = 0; while(true) { int num = sc.nextInt();//숫자 입력 gameCount ++;//입력한 순간 ..
Day06_loop2_Test01 : 초 단위로 1시간 출력 (중첩 반복문) (★) (Q) 초 단위로 1시간동안의 시간을 모두 출력하세요 package day06; public class Day06_loop2_Test01 { public static void main(String[] args) { for(int min = 0 ; min < 60 ; min ++) { for(int sec = 0 ; sec < 60 ; sec ++) { System.out.println(min + "분 " + sec + "초 지났습니다"); } } } } - 중첩 반복문의 진행 순서 1) min = 0 일 때 sec = 0부터 sec = 59까지 진행된 후 sec = 60이 되는 순간 min = 1이 된다 2) min = 0에서 min = 1이 되면 다시 sec = 0부터 sec = 59까지 진행된 후 s..
Day06_loop_Test14 : 구구단 문제 (combo 기능 구현) (★) (Q) 구구단 구현 숫자 입력시 해당 숫자의 x9까지 출력 5 X 1 = ? (?에 사용자가 정답 입력하게 한다) 5 X 2 = ? 5 X 3 = ? 5 X 4 = ? 5 X 5 = ? 5 X 6 = ? 5 X 7 = ? 5 X 8 = ? 5 X 9 = ? 끝날 때 정답 ?개 / 오답 ?개 맞은 갯수당 + 10점, 틀린 갯수당 -1점을 적용하며 ★ 문제를 연달아 맞출 경우 콤보가 적용되어 가산점 10점에 combo를 곱한 점수를 얻을 수 있도록 구현 package day06; import java.util.Scanner; public class Day06_loop_Test14 { public static void main(String[] args) { Scanner sc = new Scanner(Syst..
Day05_loop_Test14 : 구구단 문제 (for 반복문의 활용 + 입력) (★) (Q) 구구단 구현 숫자 입력시 해당 숫자의 x9까지 출력 5 X 1 = ? (?에 사용자가 정답 입력하게 한다) 5 X 2 = ? 5 X 3 = ? 5 X 4 = ? 5 X 5 = ? 5 X 6 = ? 5 X 7 = ? 5 X 8 = ? 5 X 9 = ? 끝날 때 정답 ?개 / 오답 ?개 package day05; import java.util.Scanner; public class Day05_loop_Test14 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //단수 입력 int input = sc.nextInt(); int countO = 0;//맞은 갯수 int countX = 0;//틀린 갯수 for..
Day05_loop_Test13 : 30일동안 저금 총액 (for 반복문의 활용 - sum) (Q) 30일동안 첫 날은 1원을 저금하고 둘째 날 부터는 이전 날의 2배씩 저금한다고 한다. 1) 한달동안 저금한 금액을 일자별로 출력 2) 한달 뒤 저금한 금액의 총액을 출력 1) 한달동안 저금한 금액을 일자별로 출력 2) 한달 뒤 저금한 금액의 총액을 출력 package day05; public class Day05_loop_Test13 { public static void main(String[] args) { long money = 1L; for(int i = 1 ; i