728x90
반응형
[문제] 덧셈 계산 (for, while, 다중 for)
- 10 ~ 99 사이의 난수를 2개 발생하여 합을 구하는 프로그램
- 5문제를 제공한다.
- 1문제당 점수 20점씩 처리한다.
- 틀리면 1번 더 기회를 주고, 2번 다 틀리면 답을 알려준다.
- n/y는 대소문자 상관 없다.
- y 또는 n이 입력이 안되면 계속 반복한다
사용자 입 출력 명령어
Scanner scan = new Scanner(System.in);
int user = scan.nextInt();
난수 랜덤 출력
Math.random(); 함수는 기본으로 0보다 크고 1보다 작은 값을 출력한다.
따라서 10부터 99 사이의 값 중에서 난수를 구하려면
Math.random()*99+10 으로 난수의 최대 최소값을 설정해준다.
a = (int)(Math.random()*99 + 10);
무한루프, 원하는 답이 나올 때까지 질문 반복 실행
for( ; ; ) {
if(조건) {
참일때
} else if( ) {
} else continue;
}
package for_;
import java.util.Scanner;
public class AddGame {
public static void main(String[] args) {
int a, b;
int dab=0;
int sum;
int count=0;
String yn;
Scanner scan = new Scanner(System.in);
loop:while(true) {
count = 0;
dab = 0;
for(int i=1; i<6; i++) {
a= (int)(Math.random()*99 + 10);
b= (int)(Math.random()*99 + 10);
System.out.print("["+i+"]"+a + " + " + b + " = ");
int user = scan.nextInt();
sum = a+b;
if(user == sum) {
System.out.println("딩동뎅");
System.out.println();
dab+=20;
count++;
} else if(user != sum) {
System.out.println("틀렸다");
System.out.print("["+i+"]"+a + " + " + b + " = ");
user = scan.nextInt();
if(user == sum) {
System.out.println("딩동뎅");
System.out.println();
count+=20;
count++;
} else {
System.out.println("틀렸다 정답은 " + sum);
System.out.println();
}
}
}
System.out.println("당신은 총 "+count+"문제를 맞추어서 점수 "+dab+"점 입니다.");
System.out.println();
/*한 게임 end*/
for(;;) {
System.out.print("또 할래(Y/N) : ");
yn = scan.next();
if(yn.equals("Y") || yn.equals("y")) {
break;
} else if(yn.equals("N") || yn.equals("n")) {
break loop;
} else {
continue;
}
}
}
System.out.println("프로그램을 종료합니다.");
}
}
/*
[실행결과]
[1] 25 + 36 = 50
틀렸다
[1] 25 + 36 = 59
틀렸다 정답은 xx
[2] 10 + 25 = 35
딩동뎅
[5] 78 + 95 = 89
틀렸다
[5] 78 + 95 = 173
딩동뎅
당신은 총 x 문제를 맞추어서 점수 xx점 입니다.
또 할래(Y/N) : A
또 할래(Y/N) : w
또 할래(Y/N) : n
프로그램을 종료합니다.
*/
728x90
반응형
'Java' 카테고리의 다른 글
Java, charAt() 함수 - 특정 문자 추출하기 / String args() - Command line arguments값 전달하기(arguments) (0) | 2024.07.09 |
---|---|
Java, Array 배열이란? (1차원 배열 - 배열 크기 .length, 홀수, 짝수, 오름차순 .sort, 확장 for문 ) (0) | 2024.07.09 |
Java, 반복문 for문 / while문 / do-while문 / 다중 for문 (+ 구구단 3단씩 출력) / break, continue (0) | 2024.07.08 |
Java, System.in.read(); 사용자 입력 명령어 (0) | 2024.07.08 |
Java, 조건문 If문 / Switch문 형 (0) | 2024.07.08 |