컴퓨터가 1~100 숫자(정수 범위) 중 하나를 랜덤으로 정합니다. (이를 알려주지 않습니다.)
사용자는 이 숫자를 맞추어야 합니다.
입력한 숫자보다 정답이 크면 → "UP" 출력,
입력한 숫자보다 정답이 작으면 → "DOWN" 출력.
정답을 맞추면 → "정답"을 출력하고, 지금까지 숫자를 입력한 횟수를 알려줍니다.
코딩 초보자라도 if 함수와 while함수, 랜덤 모듈 정도까지만 배워도 재미있게 풀 수 있는 문제입니다.
(예시)
컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.
이 숫자를 맞춰주세요.
1~100 숫자 입력:50
DOWN
1~100 숫자 입력:25
UP
1~100 숫자 입력:38
DOWN
1~100 숫자 입력:32
UP
1~100 숫자 입력:35
UP
1~100 숫자 입력:37
DOWN
1~100 숫자 입력:36
정답입니다! 7회 만에 맞췄어요.
package test02;
import java.util.Scanner;
import java.util.Random;
public class UpAndDown {
public static void main (String[] args) {
int i=0;
int num;
Scanner scan = new Scanner(System.in);
Random random = new Random();
int x = random.nextInt(100);
do {
System.out.println("숫자를 입력하세요 : ");
num = scan.nextInt();
if (x>num) { System.out.println("UP"); }
else if (x<num) { System.out.println("DOWN"); }
i++;
}
while (x!=num);
System.out.println("정답입니다! "+i+"회 만에 맞췄습니다.");
}
}
2021年06月18日 13:38
package coding_Test.UP_DOWN_Number;
import java.util.Scanner;
public class main {
public static void main(String[] args) {
System.out.println("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다. \n이 숫자를 맞춰주세요.");
int count = 1;
int num = (int) (Math.random() * 100) + 1;
Scanner sc = new Scanner(System.in);
int num_enter = 0;
while (num != num_enter) {
System.out.print("1~100 숫자 입력:");
num_enter = sc.nextInt();
if (num > num_enter) {
System.out.println("UP");
count++;
} else if (num < num_enter) {
System.out.println("DOWN");
count++;
}
}
System.out.println("정답입니다! " + count + "회 만에 맞췄어요.");
sc.close();
}
}
2021年08月08日 19:02
package org.Coding.dojang;
import java.util.Random;
import java.util.Scanner;
public class Test3 {
public static void main(String[] args) {
Random r = new Random();
Scanner sc = new Scanner(System.in);
int up_down = r.nextInt(100)+1;
int count=0;
while(true) {
System.out.print("1~100 숫자 입력 : ");
int human = sc.nextInt();
if(up_down>human) {
System.out.println("UP");
count++;
}
else if(up_down<human) {
System.out.println("DOWN");
count++;
}
else if(up_down==human) {
count++;
System.out.println("GREAT "+count+"회 입력");
break;
}
}
}
}
static int num = (int) (Math.random() * 100) + 1;
static int count = 0;
static boolean onOff = true;
static String upDown(int x) {
++count;
if (x == num) {
onOff = false;
return "정답입니다. " + count + "회 만에 맞췄어요.";
} else if (x > num) {
return "Down";
} else {
return "Up";
}
}
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("1 ~ 100사이 숫자를 입력하세요.");
while (onOff) {
System.out.println((upDown(s.nextInt())));
}
}
import java.util.Random;
import java.util.Scanner;
public class RandomNumGame {
public static void main(String[] args) {
Random random = new Random();
int answer = random.nextInt(100);
System.out.println(("정답 미리보기: ") + answer);
int input_number;
int repeat_count = 0;
Scanner scan = new Scanner(System.in);
System.out.println("1~100사이의 숫자중 랜덤 숫자를 맞추시오.");
do {
System.out.print("정답: ");
input_number = scan.nextInt();
repeat_count++;
if (input_number > answer) {
System.out.println("더 작은 수를 입력하세요.");
}
if (input_number < answer) {
System.out.println("더 큰 수를 입력하세요.");
}
} while (input_number != answer);
System.out.printf("정답입니다. 총 시도횟수는 %d회 입니다.\n", repeat_count);
}
}
package org.javaturotials.ex;
import java.util.*;
import java.util.stream.Collectors;
public class test {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
int rd = (int)(Math.random()*100 + 1);
int count=0;
while(true) {
int num =sc.nextInt();
if(num<rd) {
System.out.println("UP");
}
else if(num>rd) {
System.out.println("DOWN");
}
else {count++;
break;}
count++;
}
System.out.println("정답입니다. " +count + "회 만에 맞췄습니다." );
}
}
package section01;
import java.util.Scanner;
public class MathCalc {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("1~100 사이에 숫자를 맞춰보세요 : ");
int num = sc.nextInt();
int randomNum = (int)(Math.random() * 100 + 1);
int i = 1;
while(true) {
if(num > randomNum) {
System.out.println("DOWN");
i++;
} else if(num < randomNum) {
System.out.println("UP");
i++;
} else if(num == randomNum) {
System.out.println("정답입니다." + i + "회 만에 맞췄어요.");
break;
}
System.out.println("1~100 사이에 숫자를 맞춰보세요 : ");
num = sc.nextInt();
};
}
}
import java.util.Scanner;
public class CodingStamp_03 {
public static void main(String[] args) {
int correctAnswer = (int)(Math.random()*100 + 1); //컴퓨터가 1~100 숫자(정수 범위) 중 하나를 랜덤으로 정함
int input = 0; //사용자의 입력
int count = 0; //시도 횟수를 기록
Scanner scanner = new Scanner(System.in);
System.out.println("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.");
System.out.println("이 숫자를 맞춰주세요.");
while (input != correctAnswer) {
System.out.println("1~100 숫자 입력: ");
input = scanner.nextInt();
count++;
if (input > correctAnswer) {
System.out.println("DOWN");
} else if (input < correctAnswer) {
System.out.println("UP");
} else {
System.out.println("정답입니다. " + count + "회 만에 맞췄어요.");
break;
}
}
}
}
자바로 풀어봤습니다.
import java.util.Scanner;
public class test {
public static void main(String[] args) {
int answer = (int)(Math.random()*100);
Scanner scan = new Scanner(System.in);
int tryData, count=0;
System.out.println("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.\n이 숫자를 맞춰주세요.");
while(true) {
System.out.println("1~100 숫자 입력:");
tryData = scan.nextInt();
count++;
if(tryData>answer) {
System.out.println("Down");
}else if(tryData<answer) {
System.out.println("Up");
}else {
break;
}
}
System.out.printf("정답입니다! %d회 만에 맞췄어요.\n", count);
}
}
파이썬
import random
num = random.randint(1,100)
number = 0
count = 0
while num != number:
number = int(input("1~100 숫자입력: "))
if num > number:
print("UP")
count = count + 1
if num < number:
print("DOWN")
count = count + 1
print("정답입니다. %d회 만에 맞췄어요." % count)
java
import java.util.Random;
import java.util.*;
public class up_down_game
{
public static void main(String[] args)
{
Random random = new Random();
int random_num = 0; //컴퓨터가 생성하는 랜덤값(정답)
int num = 0; // user가 입력한 값
int count = 1; // 입력횟수
random_num = random.nextInt(99)+1; //1~100
Scanner scanner = new Scanner(System.in);
for (;;)
{
System.out.printf("1~100중 숫자 하나를 입력해주세요");
num = scanner.nextInt();
if (num == random_num)
{
System.out.printf("정답!!!%n");
System.out.printf("횟수: %d", count);
break;
}
if (num > random_num)
{
System.out.printf("Down%n");
count += 1;
}
if (num < random_num)
{
System.out.printf("Up%n");
count += 1;
}
}
}
}
2022年06月21日 23:29
풀이 작성