서노썬
sun noes sun
서노썬
전체 방문자
오늘
어제
  • 카테고리 (142)
    • Java (89)
      • Day1 (20)
      • Day2 (16)
      • Day3 (4)
      • Day4 (5)
      • Day5 (2)
      • Day6 (2)
      • Day7 (4)
      • Day8 (6)
      • Day9 (3)
      • Day10 (0)
      • Day11 (0)
      • Day12 (0)
      • Day13 (3)
      • Day14 (0)
      • Day15 (0)
      • Day16 (0)
      • Day19 (0)
      • Day20 (0)
      • Day21 (2)
      • Day22 (4)
      • Day23 (2)
      • Day24 (5)
      • Day25 (4)
      • Day27 (2)
      • Day28 (3)
      • Day29 (1)
      • Day30 (1)
      • Day31 (0)
      • Day32 (0)
      • Dat33 (0)
      • Day34 (0)
      • Day35 (0)
      • Day36 (0)
    • HTML (37)
      • Day36 (20)
      • Day37 (3)
      • Day38 (2)
      • Day39 (8)
      • Day40 (3)
    • SQL (4)
      • Day40 (4)
      • Day41 (0)
      • Day42 (0)
      • Day43 (0)
      • Day44 (0)
      • Day45 (0)
    • JSP (0)
      • Day46 (0)
      • Day75 (0)
    • PYTHON (0)
      • Day75 (0)
      • Day76 (0)
    • Photo (12)

블로그 메뉴

  • 홈
  • 방명록

인기 글

최근 글

태그

  • Java
  • java메뉴입력
  • java자료형
  • 자바자료형
  • 자바break
  • 자바연산자
  • 자바
  • 논리연산자
  • 자바continue
  • java데이터타입

티스토리

hELLO · Designed By 정상우.
서노썬

sun noes sun

Java/Day2

[Java] 난수를 이용한 숫자 맞추기 게임

2021. 11. 1. 00:28

1. 난수를 이용한 숫자 맞추기 게임

 

1부터 100사이의 임의의 난수를 발생시킨다. 그리고 그 숫자를 맞추는 게임을 만드시오.

 

(예)

- 게임을 시작합니다.
- 숫자를 입력하세요.
(사용자에게 숫자를 입력 받는다) → 당신이 입력한 숫자보다 큽니다.

(사용자에게 숫자를 입력 받는다) → 당신이 입력한 숫자보다 작습니다.
(사용자에게 숫자를 입력 받는다) → 정답입니다. 당신은 x번만에 정답을 입력하셨습니다.
- 프로그램을 종료합니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package Random;
 
import java.util.Scanner;
import java.util.Random;
 
public class RandomTest2 {
 
    public static void main(String[] args) {
        int num1=0, num2=0, cnt=0;
        Scanner sc = new Scanner(System.in);
        Random rand = new Random();
        num1=rand.nextInt(100)+1;
        
        System.out.println("게임을 시작합니다.");
        System.out.println("숫자를 입력하세요.");
        
        while(true) {
            cnt++;
            num2=sc.nextInt();
            if(num1>num2) {
                System.out.println("up");
            }
            else if(num1<num2) {
                System.out.println("down");
            }
            else {
                System.out.println("정답입니다. 당신은 " + cnt + "번만에 정답을 맞췄습니다.");
                break;
            }
        } sc.close();
        
        System.out.println("게임을 종료합니다.");
    }
}
Colored by Color Scripter
cs

 

숫자 맞추기 게임은 코드를 짜는 것도 재미있고 결과 확인으로 실행을 시켜서 맞추기 게임을 해도 재미있다,,

 

- 설명

 

(1) 나는 break를 사용해서 식을 종료시켰는데 while의 조건을 while(true)로 주지않고 while(num1 != num2)로 줘서 num1과 num2의 값이 같지 않을 경우는 식을 계속 반복시키는 방법도 있다.

 

(2) num1=rand.nextInt(100)+1;  0부터 100까지의 난수를 생성하기 위한 것.

 

(3) import java.util.*;

위의 import java.util.Scanner; 과 import java.util.Random; 를 이렇게 하나로 합해서 사용할 수 있다. 편리한 방법이긴 하지만 나중에 시간이 지나거나 다른 사람이 코드를 봤을 경우 어떤 것을 사용한 것인지 확인이 어렵다는 점이 있다.

 

'Java > Day2' 카테고리의 다른 글

[Java] 난수  (0) 2021.10.31
[Java] 논리 NOT 연산자  (0) 2021.10.31
[Java] continue 와 break 예문 & 논리 OR연산자, 논리 AND 연산자  (0) 2021.10.31
[Java] continue 와 break  (0) 2021.10.31
[Java] Selection sort 선택 정렬 알고리즘  (0) 2021.10.31
    'Java/Day2' 카테고리의 다른 글
    • [Java] 난수
    • [Java] 논리 NOT 연산자
    • [Java] continue 와 break 예문 & 논리 OR연산자, 논리 AND 연산자
    • [Java] continue 와 break

    티스토리툴바