컴퓨터가 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
number = random.randrange(1,101)
print('1~100의 한 숫자를 맞추시오')
tries = 0
while tries < 10:
tries += 1
guess = int(input("1~100 숫자 입력: "))
if guess < number:
print("up")
elif guess > number:
print("down")
else:
print("정답입니다. %d회 만에 맞췄어요." % tries)
2021年08月03日 16:17
가독성의 끝판왕을 보여드리겠읍니다
import random
Nunmer = random.randint(1, 101)
Count = 0
print("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.\n이 숫자를 맞춰주세요.")
while True:
Answer = int(input("1~100 숫자 입력 : "))
Count += 1
if Answer == Nunmer:
print("정답입니다! {}회 만에 맞췄어요.".format(Count))
break
elif Answer > Nunmer:
print("DOWN")
elif Answer < Nunmer:
print("UP")
2021年08月07日 06:09
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
import random
ran=random.randint(1,100)
user=0
time=0
print('컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다. 이 숫자를 맞춰주세요.')
while ran!=user:
user=int(input('1~100 숫자 입력:' ))
time+=1
if ran==user:
print('정답입니다! %d회 만에 맞췄어요.' %(time))
elif ran>user:
print('UP')
else:
print('DOWN')
package main
import (
"fmt"
"math/rand"
"strconv"
"time"
)
func main() {
fmt.Println("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.\n이 숫자를 맞춰주세요.")
timeSource := rand.NewSource(time.Now().UnixNano())
random := rand.New(timeSource)
randNum := random.Intn(100) + 1
value := 1
count := 0
for {
count++
fmt.Print("1~100 숫자 입력:")
fmt.Scanf("%d", &value)
if value == randNum {
fmt.Println("정답입니다! " + strconv.Itoa(count) + "회 만에 맞췄어요.")
break
} else if value > randNum {
fmt.Println("DOWN")
} else if value < randNum {
fmt.Println("UP")
}
}
}
import random
count = 1
data = random.randint(1,100)
print("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.\n이 숫자를 맞춰주세요.")
while True:
N = int(input("1~100 숫자 입력:"))
if (data == N):
break
print("DOWN") if (N > data) else print("UP")
count += 1
print(f"정답입니다! {count}회 만에 맞췄어요.")
C#
using System;
namespace 업앤다운
{
class Program
{
static void Main()
{
var game = new UpAndDownGame();
game.StartGame();
}
}
class UpAndDownGame
{
public UpAndDownGame()
{
Random rand = new Random();
this.Answer = rand.Next(1, 101);
}
private int Answer { get; }
public void StartGame()
{
Console.WriteLine("컴퓨터가 1~100 중 랜덤 숫자 하나를 정합니다.\n이 숫자를 맞춰주세요.");
int numTry = 0;
while (true)
{
Console.Write("1~100 숫자 입력: ");
string consoleInput = Console.ReadLine();
numTry++;
// Enter, null, whitespace(s)가 입력될 경우 0으로 간주
int guessNumber = string.IsNullOrWhiteSpace(consoleInput) ? 0 : int.Parse(consoleInput);
if (this.Answer == guessNumber)
{
Console.WriteLine($"정답입니다! {numTry}회 만에 맞췄어요.");
break;
}
string message = this.Answer > guessNumber ? "UP" : "DOWN";
Console.WriteLine(message);
}
}
}
}
2021年08月19日 15:13
import random
corNum = random.randrange(1, 101)
inpNo = 0
while True:
inNum = int(input('1~100 숫자(정수 범위)를 입력하세요: '))
inpNo += 1
if inNum < corNum:
print('UP')
elif inNum > corNum:
print('DOWN')
else:
print('정답입니다! {}회 만에 맞췄어요.'.format(inpNo))
break
import random
print('1~100사이의 숫자가 나옵니다\n알아맞춰보세요')
ran = random.randint(1,100)
n = 0
b = 0
while b != ran:
try:
b = int(input('숫자를 입력하세요 : '))
except:
print('"정수"를 입력해 주세요')
continue
if b > ran:
print("DOWN")
elif b < ran:
print("UP")
n += 1
print('정답이에요! ',n,'번만에 맞췄어요!!')
풀이 작성