1. QUESTION
1~100 숫자중에 입력하며 컴퓨터가 최소의 알고리즘으로 찾아내는 프로그램좀 부탁드릴께요.
감도 못잡고 있습니다.
도와주세요ㅠㅠ
부탁드립니다.
2. CLASS
import java.util.Scanner;
public class test_010 {
private static Scanner sc;
public static void main(String[] args) {
sc = new Scanner(System.in);
int high = 100;
int low = 0;
int gu = 0;
int inp;
System.out.println(low + " 부터 " + high + " 사이의 숫자 입력");
inp = sc.nextInt();
while(true){
String con = "";
gu = Math.round(high+low)/2;
if(gu == inp){
System.out.println("당신이 입력한 번호는 : " + gu);
break;
}else if(gu > inp){
con = "낮다.";
high = gu;
}else if(gu < inp){
con = "높다.";
low = gu;
}else{
System.out.println(low + " 부터 " + high + " 사이의 숫자만 입력!!");
}
System.out.println("당신이 입력한 번호는 "+ gu + " 보다 " + con + "\n");
}
}
}
3. RUN
0 부터 100 사이의 숫자 입력
46
당신이 입력한 번호는 50 보다 낮다.
당신이 입력한 번호는 25 보다 높다.
당신이 입력한 번호는 37 보다 높다.
당신이 입력한 번호는 43 보다 높다.
당신이 입력한 번호는 : 46
'course > 지식인' 카테고리의 다른 글
[자바] 1~100 중 10개 숫자를 랜덤 생성한 후 짝수만 골라내기 (0) | 2016.01.01 |
---|---|
[자바스크립트] 정규표현식 숫자, 숫자/문자/특수문자 (0) | 2016.01.01 |
[자바] 구분자가 없을 때 자르는 방법. (0) | 2016.01.01 |