[1] 1부터 10까지 출력해주세요.
public static void main(String[] args) {
int i =1;
while(i<=10) {
System.out.println(i);
i++;
}
}
i = 11이 되면 i <= 10을 불충족하여 while문을 벗어난다.
[1++] 10부터 1까지 출력해주세요.
int i = 10;
while(i>=1) {
System.out.println(i);
i--;
}
10부터 1까지 이므로 i는 10으로 초기화하고 i++ 대신 i--를 사용하면 된다. 그리고 1까지 더하므로 조건은 while(i>=1)이 되면 된다.
10부터 시작하여 i = 0이 되면 while문을 탈출한다.
[2] 5부터 10까지 정수중에서 짝수를 출력해주세요.
int i = 5; // 5부터 시작
while(i <= 10) { // i가 10보다 작거나 클 때
if(i%2==0) { // 2로 나눈 나머지가 0이 되면 (=짝수이면)
System.out.println(i); // 출력한다.
}
i++; // 1 증가
}
i가 11이 되면 조건을 불충족하여 while문을 벗어난다.
[2++] 5부터 10까지 정수를 모두 출력해주세요. 단, 홀수는 출력하지마세요.
int i = 4;
while(i<=10) {
i++;
if(i%2 != 0) {
continue;
}
System.out.println(i);
}
i를 먼저 증가시키기 때문에 i 를 4로 초기화했다.
또한, i%2 != 0이 F인 수들은 홀수에 해당하지만 홀수는 출력하지 말라고 하였으므로, continue를 통해서 실행하지 않고 while로 돌아간다.
[3] 1에서 8까지의 정수들중에서 8의 약수인 정수들만 출력해주세요.
int i = 1;
while(i<=8) {
if(8%i==0) {
System.out.println(i);
}
i++;
}
8의 약수는 1, 2, 4, 8이다.
그러므로 8을 i로 나누었을 때 0이 되는 수는 8의 약수에 해당하는 것이다.
i의 초기값은 1로 설정하고, 8까지의 정수들이라고 제시되어있으므로 i가 8보다 작거나 같을 때까지 반복한다.
여기서, 8을 i로 나눴을 때 나머지가 0이라면 ( == 8의 약수) i를 출력하고 1 증가시키도록 한다.
8의 약수만 출력되게 하고, i가 9가 되면 while문을 탈출한다.
[4] 1부터 10까지의 총합을 구해주세요.
int i = 1;
int sum = 0;
while(i<=10) {
sum += i;
i++;
}
System.out.println(sum);
초기값은 1로 설정하고 총합을 저장할 sum이라는 변수를 만들어준다.
10까지의 총합을 구하는 것이므로 i가 10보다 작거나 같을 때까지 while문을 반복한다.
i를 sum에 더하고 i를 1씩 증가시키면 1부터 10까지의 합을 구할 수 있다.
i가 11이 되면 while문을 탈출한다.
[4++] 1부터 100까지 정수들을 모두 더해가면서 그 총합을 출력해주세요. 단, 총합이 50을 초과하면 총합을 그만 출력해주세요.
int i = 1;
int sum = 0;
while(i<=100) {
sum += i;
if(sum > 50) {
break;
}
i++;
System.out.println(sum);
}
초기값은 1로 설정하고, 위와 마찬가지로 총합을 저장할 sum이라는 변수를 선언한다.
100까지의 정수를 모두 더하는 것이므로 while문의 조건은 i<=100으로 설정한다.
i가 100이 될 때까지 sum에 i를 더하는데, 이때 sum이 50보다 클 경우에는 break문을 통해 반복문을 탈출한다.
마지막 i = 10일 때 sum = 55가 되는데 sum이 50을 초과하므로 while문을 탈출하여 55는 출력되지 않고, 45까지만 출력된다.
'IT > JAVA' 카테고리의 다른 글
반복문 별 찍기 (0) | 2024.12.31 |
---|---|
Day3 - for문/ 변수의 유효범위(scope) (0) | 2024.12.30 |
Day 2 - 조건문 : if문 예제 (1) | 2024.12.27 |
디버깅표 작성하기 (0) | 2024.12.26 |
CodeUp - 1153 : 두 수의 대소 비교 (0) | 2024.12.26 |