for 구문을 활용해서 Factorial 계산 식과 결과값을 출력하자
import java.util.Scanner
Scanner stdIn = new Scanner(System.in);
System.out.print("Factorial을 계산합니다. 숫자를 입력하세요: ");
int num = stdIn.nextInt();
int numx = num;
int result = 1;
for(int i=0; i<num; i++) {
result *= (num-i);
if (num !=(i+1))
System.out.print((num-i) + " x ");
else
System.out.print((num-i) + " = ");
}
System.out.print(result);
결과
Factorial을 계산합니다. 숫자를 입력하세요: 5
5 x 4 x 3 x 2 x 1 = 120
for 구문을 활용해서 '*'으로 왼쪽 아래가 직각인 이등변삼각형 그리기
import java.utill.Scanner;
Scanner stdIn = new Scanner(System.in);
System.out.print("*을 이용한 직각삼각형의 층 수를 입력하세요: ");
int num = stdIn.nextInt();
for (int i=0; i<num; i++) {
for (int j = 0; j<=i; j++) {
System.out.print("*");
}
System.out.println();
}
결과
*을 이용한 직각삼각형의 층 수를 입력하세요: 3
*
**
***
for 구문을 이용해서 숫자 피라미드를 출력하기
import java.util.Scanner;
Scanner stdIn = new Scanner(System.in);
System.out.print("피라미드의 층 수를 입력하세요: ");
int floorNum = stdIn.nextInt();
for(int i=0; i < floorNum; i++) {
for(int k=0; k<(floorNum-i-1); k++) {
System.out.print(" ");
}
for(int j = 0; j< (2*i+1); j ++) {
System.out.print(i+1);
} System.out.println();
}
결과
피라미드의 층 수를 입력하세요: 3
1
222
33333
for 구문 + 레이블 지정문 이용
- 5개의 정수로 구성된 그룹의 합을 구하는 프로그램.
- 그룹 입력은 무한루프로 진행되며 99999를 입력하면 전체 입력을 종료, 88888을 입력하면 현재 그룹의 입력을 종료.
- for 무한루프는 for(;;)을 사용한다.
- break Outer을 실행하면 Outer 아래에 포함된 for 구문의 실행이 종료되지만, 단순히 break만 입력하면 break를 감싸고 있는 안쪽의 for 구문만 중단된다.
import java.util.Scanner
Scanner stdIn = new Scanner(System.in);
int groupNum = 0;
System.out.println("5개씩 숫자를 더하는 프로그램. \n '99999' 입력시 프로그램 종료. \n '88888' 입력시 그룹 입력 종료.");
Outer:
for(;;) {
int sum = 0;
groupNum++;
for (int i=0; i<5; i++) {
System.out.print("숫자를 입력하세요:");
int x = stdIn.nextInt();
if (x == 88888) {
System.out.println("그룹 "+ groupNum +"의 합은 "+sum+"입니다.");
continue Outer;
}
else if (x==99999) {
System.out.println("그룹 "+ groupNum +"의 합은 "+sum+"입니다.");
System.out.println("프로그램을 종료합니다.");
break Outer;
}
else
sum += x;
}
System.out.println("그룹 "+ groupNum +"의 합은 "+sum+"입니다.");
}
결과
5개씩 숫자를 더하는 프로그램.
'99999' 입력시 프로그램 종료.
'88888' 입력시 그룹 입력 종료.
숫자를 입력하세요:11
숫자를 입력하세요:11
숫자를 입력하세요:11
숫자를 입력하세요:22
숫자를 입력하세요:33
그룹 1의 합은 88입니다.
숫자를 입력하세요:33
숫자를 입력하세요:33
숫자를 입력하세요:88888
그룹 2의 합은 66입니다.
숫자를 입력하세요:333
숫자를 입력하세요:99999
그룹 3의 합은 333입니다.
프로그램을 종료합니다.
'Java > Java 기초' 카테고리의 다른 글
Java8 배열과 확장for문 (0) | 2020.05.07 |
---|---|
Java7 기본 자료형과 연산 (0) | 2020.05.05 |
Java5 반복문 while, Do~while (0) | 2020.04.30 |
Java4 정렬, 비교, Switch (0) | 2020.04.29 |
Java3 if 조건문과 관계 연산자 (0) | 2020.04.28 |