컴퓨터가 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회 만에 맞췄어요.
import random
trial = 0
x = random.randrange(1,101) #랜덤으로 1부터 100까지의 정수 하나 추출
print("""컴퓨터가 1~100 중 랜덤 정수 하나를 정합니다.
이 숫자를 맞춰주세요.""") #시작 멘트
while True:
answer = int(input("1~100 숫자 입력: "))
if answer < x:
print("Up")
trial+=1
elif answer > x:
print("Down")
trial+=1
else:
trial+=1
break
print("정답입니다! %d회 만에 맞췄습니다."%trial)
import random
def numCheck(a):
b = int(input("1-100 숫자 입력: "))
if b > a: print("DOWN"); return True
elif b < a: print("UP"); return True
else: return False
a = random.randint(1,100)
chk = True
cnt = 0
while chk == True:
chk = numCheck(a)
cnt += 1
print(f"정답입니다! {cnt}회 만에 맞췄어요")
import random
print("컴퓨터가 1~100중 숫자 하나를 랜덤으로 정합니다")
print("이 숫자를 맞춰 주세요")
num = random.randrange(1, 101)
# print(num)
inValue = 0
n = 0
while num != inValue:
n += 1
inValue = int(input("1~100중에서 숫자를 입력해 주세요: "))
if num > inValue:
print("UP")
elif num < inValue:
print("DOWN")
print("정답입니다." + str(n) + "번 만에 맞추셨습니다")
print("정답은" + str(inValue) + "입니다")
import random
A=0
B=0
number=int(random.randint(1,100))
while True:
print("컴퓨터가 1~100 중 랜덤 숫자를 하나를 정합니다. \n 이 숫자를 맞춰주세요.")
A = int(input("1~100 숫자 입력: "))
B += 1
if A > number:
print("DOWN")
elif A < number:
print("UP")
elif A == number:
print("정답입니다 %s회 만에 맞췄어요" % B)
break
2024年07月30日 21:49
package test;
import java.util.Random;
import java.util.Scanner;
public class month5_8_1 {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
Random rd = new Random();
int random = rd.nextInt(100)+1;
int cnt = 1;
System.out.println("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.");
System.out.println("이 숫자를 맞춰주세요.");
System.out.print("1~100 숫자 입력 : ");
int a = sc.nextInt();
while(random != a) {
if(a < random) {
System.out.println(a + "보다 더 큽니다.");
} else {
System.out.println(a + "보다 더 작습니다.");
}
System.out.print("다시 입력해주세요 : ");
cnt += 1;
a = sc.nextInt();
}
System.out.println("정답입니다! " + cnt + "회 만에 맞췄어요.");
}
}
2024年05月08日 14:48
import random
num = random.randint(1,100)
your_num = 0
while num != your_num:
your_num = int(input('숫자 :'))
if your_num > num:
print('down')
elif your_num < num:
print('up')
print('정답!')
2024年03月23日 17:13
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void){
srand(time(NULL));
int rand_num = 1 + rand() % 100;
int n;
int cnt = 0;
printf("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.\n");
printf("이 숫자를 맞춰주세요.\n");
while(1){
printf("1~100 숫자 입력 : ");
scanf("%d", &n);
cnt += 1;
if(n > rand_num){
printf("UP\n");
}else if(n < rand_num){
printf("DOWN\n");
}else{
printf("정답입니다! %d회 만에 맞췄어요.\n", cnt);
break;
}
}
return 0;
}
namespace MyFirstProject
{
internal class Program
{
static void Main(string[] args)
{
var game = new UPandDownGame();
game.StartGame();
}
}
class UPandDownGame
{
private static int NUMTRY_MAX = 7; // 시도 기회 수
private int Answer { get; } // 정답값 넣는 변수
private static Random random = new Random(); // 랜덤함수
int numTry = 0;// 시도 횟수
public UPandDownGame()
{
this.Answer = random.Next(1, 999); //랜덤 값을 Answer에 집어넣기
}
public void StartGame()
{
Console.WriteLine("컴퓨터가 1~999 중 핸덤 숫자 하나를 정합니다. \n이 숫자를 맞춰주세요.");
while (true) //true를 넣으면 계속 while 문 실행
{
Console.Write("1~999 숫자 입력 : ");
string consoleInput = Console.ReadLine(); // consoleInput 변수에 입력값 넣기
numTry++;
//만약 어느 하나의 조건도 만족하지 않는다면, 즉 변환에 실패하거나 범위를 벗어나는 입력값이라면 if문 안에 작업이 수행됩니다:
if (!int.TryParse(consoleInput, out int guessNumber) || guessNumber < 1 || guessNumber > 999)
{
Console.WriteLine("숫자 1~999를 입력해주세요.");
numTry --;
continue; //현재 반복을 종료하고 다음 반복을 시작합니다
}
if (this.Answer == guessNumber)
{
Console.WriteLine($"정답입니다! {numTry}회 만에 맞췄어요.");
break;
}
string message = this.Answer > guessNumber ? "UP" : "DOWN";
Console.WriteLine(message);
if (numTry < NUMTRY_MAX)
{
Console.WriteLine($"{NUMTRY_MAX - numTry}회 남으셨습니다.");
}
else
{
Console.WriteLine("횟수를 초과 하셨습니다.");
break;
}
}
}
}
}
2023年10月17日 01:14
풀이 작성