728x90
While 반복문
While(제어식) 명령문
✔실행 전에 반복을 계속할지를 판단, '사전 판단 반복 구조' 제어식의 평갓값이 0이 아니면 프로그램 명령문이 반복된다.
import java.util.Scanner;
//1부터 n까지의 정수 합을 구하는 알고리즘 while문
public class SumWhile {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("1부터 n까지의 합을 구합니다.");
System.out.println("n의 값 :");
int n = sc.nextInt();
int sum = 0; //합
int i = 1;
while(i <=n) { //i가 n이하면 반복합니다.
sum += i; //sum에 i를 더합니다.
i++; //i값을 1만큼 증가시킵니다.
}
System.out.println("1부터 "+n+"까지의 합은 "+sum+"입니다.");
}
}
✔ Scanner 이용해서 n의 값 받기
✔ 변수 sum의 값은 '루프 본문을 수행하는 동안의 합'
✔ 변수 i의 값은 '다음에 더하는 값'
✔ i가 10일때 변수sum의 값은 '1부터9까지의 합'인 45이다.(최종 결과값은 10까지 더해지기 전의 값이다.)
✔ i의 값이 n을 초과했을 때 반복문이 종료되므로 최종값은 i가 n이 아니라 n+1이다.
🔽 System.out.println("n의 값은"+i+"입니다."); 의 출력문은 n의 값이 n+1인 11으로 출력되는 것을 확인 할 수 있다.
For 반복문
for(초기화 부분;제어식;업데이트 부분)명령문
✔하나의 변수를 사용하는 반복문은 While문보다 for문을 사용하는 것이 좋다.
✔초기화 부분은 for문 실행하기 전에 한번만 실행한다.
✔제어식을 평가한 값이 true이면 for문의 명령문을 반복한다.
✔명령문을 실행한 다음에는 업데이트 부분을 실행한다.
import java.util.Scanner;
//1부터 n까지의 정수 합을 구하는 알고리즘 for문
public class SumFor {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("1부터 n까지의 합을 구합니다.");
System.out.println("n의 값 :");
int n = sc.nextInt();
int sum =0; //합
for (int i=1; i<=n; i++)
sum += i; //sum에 i를 더합니다.
System.out.println("1부터 "+n+"까지의 합은 "+sum+"입니다.");
}
}
🔽Console
728x90
반응형
'JAVA > Algorithm' 카테고리의 다른 글
[ 알고리즘 Algorithm ] 공백없는 숫자의 합 구하기 (0) | 2022.04.29 |
---|---|
[ 알고리즘 Algorithm ] 다중 for문 구구단 (0) | 2022.04.19 |
[알고리즘 Algorithm] JAVA 실습 문제 - 최댓값 구하기(1) (0) | 2022.04.14 |
댓글