앞서 while문에 대해 배웠다
for문은 while문보다 개인적으로 더 표현하기 쉬운 반복문이다.
우선 for문을 만나보겠다
for(초기식; 조건식; 증감식){
수행할 소스코드;
}
이런 식으로 쓸 수 있다.
for문은 while문과 다르게 초기화, 조건식, 증감식을 동시에 선언할 수 있다는 장점이 있다.
while문을 제대로 이해하셨다면 for문은 어렵지 않을 거다
Scanner sc = new Scanner(System.in);
System.out.print("정수1: ");
int num1 = sc.nextInt();
System.out.print("정수2: ");
int num2 = sc.nextInt();
if(num1>num2) {
int tmp=num1;
num1=num2;
num2=tmp;
}
int sum = 0;
int total=0;
for(int i =num1; i<=num2; i++) {
sum += i;
total++;
}
System.out.println("합: "+sum);
double avg = sum*1/total;
System.out.println("평균: "+avg);
정수 2개를 입력받아 두 정수의 합과 평균을 구하는 예제이다
중간에 if문은 num2가 num1보다 작을 때 num2를 num1으로 이동해주는 교체 문제이다
tmp를 선언해 주었는데 예를 들어보겠다
2개의 컵이 있다 그 컵에는 물이 가득 담겨 있는데 1번 컵의 내용물을 2번 컵의 내용물로 옮기려고 한다.
그러려면 하나의 컵이 더 필요하다 그래서 tmp라는 변수를 하나 생성해준 것이다.
이해가 안 간다면 컵에 물을 채우고 한번 해봐라
for(int i=2; i<=9; i++) {
for(int j=1; j<=9; j++) {
System.out.println(i+"*"+j+"="+i*j);
}
System.out.println("-------");
}
구구단 출력 예제다 많이 접해보셨다고 생각해서 설명은 생략하겠다
for(int i=0; i<5; i++) {
for(int j=0; j<5-i; j++) {
System.out.print("*");
}
System.out.println();
}
}
for문 안에 for문을 중첩 for문이라고 하는데
이 예제는 *을 출력하는 예제다
빨리 습득하는 중요한 방법은 코드를 작성하고 그걸 가지고 이리 바꿔보고 저리도 바꿔보고
논다는 느낌으로 해봐라 그러면 금방 이해될 것이다.