JAVA For / While / do While Loop문 가우스의 덧셈 법칙
package test;
import java.util.Scanner;
public class SumWhile {
public static void main(String args[]) {
Scanner stdIn = new Scanner(System.in);
System.out.println("1부터 n까지의 합구하기");
System.out.println("n값 :");
int n = stdIn.nextInt();
int sum = 0;
int i = 1;
while(i <=n) {
sum += i;
i ++;
}
System.out.println("합은:"+sum);
}
}
package test;
import java.util.Scanner;
public class SumFor {
public static void main(String[] args) {
Scanner stdIn = new Scanner(System.in);
System.out.println("1부터 n까지 합 구하기");
System.out.println("n값:");
int n = stdIn.nextInt();
int sum = 0;
for(int i = 1; i <= n; i ++) {
sum += i;
}
System.out.println("합은:"+sum);
}
}
package test;
import java.util.Scanner;
public class GausPlus {
static int sumof(int a, int b) {
int sum = 0;
sum = (a + b) *5;
return sum;
}
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 a = 1;
int sumValue = 0;
sumValue = sumof(a, n);
System.out.println("합은:"+ sumValue);
}
}
package test;
import java.util.Scanner;
public class doWhileSumFor {
public static void main(String[] args) {
Scanner stdIn = new Scanner(System.in);
int n;
System.out.println("1부터 n까지 합구하기");
do {
System.out.println("n값:");
n = stdIn.nextInt();
}while(n <=0);
int sum = 0;
for(int i = 1 ; i <=n ; i++) {
sum += i;
}
System.out.println("합은 "+ sum);
}
}
While 문
- 어떤 조건이 성립하는 동안 처리를 반복하여 실행하는것을 반복이라하며 루프라고 한다
- 사전판단 반복 : 실행 전에 반복을 계속할지 먼저 판단한다.
- 제어식의 평가 값이 true 이면 프로그램 명령문을 반복한다.
- 반복의 대상이 되는 명령문을 문법적으로 루프 본문이라 한다.
- while (제어식){
명령문
}
- 가우스의 덧셈 : 1~10합은 (1+10)*5와 같이 구하는 덧셈 공식
for 문
- 하나의 변수를 사용하는 반목문은 while 문보다 for문을 사용하는 것이 좋다
- for(초기화부분; 제어식 ; 업데이트부분){
명령문
}
- 초기화 부분은 for문을 실행하기전에 한번만 실행한다.
- 제어식을 평가한 값이 true이면 for문의 명령문을 반복한다
- for 문의 초기화 부분 : 여기서 변수를 선언한다.
- 하나의 변수를 선언하거나 쉼표로 구분하여 여러개의 변수를 선언할 수도 있다.
- for 문의 초기화 부분에서 선언한 변수는 for문 안에서 사용가능하며 for문이 종료되면 변수는 무효화된다.
제어식
- 반복의 계속조건을 나타내는 식으로 생략할 수 있다.
- 제어식을 생략하면 조건을 true로 간주하여 계속 반복한다.
- 이때 루프 본문에 reak 문이나 return 문이 없으면 for문은 영원히 반복하는 무한 루프가 된다.
for문의 업데이트 부분 : 루프 본문을 실행한 뒤에 평가, 실행하는 식을 작성한다. 이때 쉼표로 구분하여 여러개의 식을 작성해도 되며 제어식과 마찬가지로 for문의 업데이트 부분도 생략 가능하다.
do-while 문
- 일단 로프 본문을 한번 실행할 한 다음에 계속 반복할 건지 판단하는 사후 판단 반복문이다
사전판단반복문(while, for) : 로프본문을 한번도 실행하지 않을 수 있다.
사후판단반복문(do while): 로프 본문을 한번 반드시 실행한다.