KDT 풀스택 공식 4일차: JAVA 반복문

jk·2024년 1월 4일
0

kdt 풀스택

목록 보기
6/127



1.반복문에서 while 문과 do while 문의 차이는?

  • while: 조건문이 false 값이 나오기 전까지 반복한다.
  • do while: false 도 true 도 일단 한번 실행시키고 조건문이 false 가 나오기 전까지 반복한다.



2.for 문에서 for 문이 실행되는 순서를 설명하시오.

    1. 초기화한다.
    1. 조건문을 판단한다.
    1. 내용물을 처리한다.
    1. 반복의 조건을 무너뜨리기 위한 연산을 한다. (ex: i++)
    1. (2,3,4)를 반복한다.



3. 9단을 출력하는 프로그램을 만드시오.(while 문 사용할것)

final int NUM_9 = 9;
boolean run = true;
int i = 1;
while(run) {
    if (i > 9) {
        run = false;
    } else {
        System.out.println(NUM_9 + " x " + i + " = " + (NUM_9 * i));
    }
    i++;
}



4.1부터 100까지의 합을 구하시오.

final int MIN_NUM = 1;
final int MAX_NUM = 100;
int sum = 0;
for(int i = MIN_NUM; i <= MAX_NUM; i++) {
    sum += i;
}
String print = MIN_NUM + "부터 " + MAX_NUM + "까지 합은 " + sum + "입니다.";
System.out.println(print);	//1부터 100까지 합은 5050입니다.



5.1부터 100까지의 홀수들의 합을 구하시오.

final int MIN_NUM = 1;
final int MAX_NUM = 100;
int sum = 0;
for(int i = MIN_NUM; i <= MAX_NUM; i++) {
    if (i % 2 == 1) {
        sum += i;
    }
}
String print = MIN_NUM + "부터 " + MAX_NUM + "까지 홀수의 합은 " + sum + "입니다.";
System.out.println(print);	//1부터 100까지 홀수의 합은 2500입니다.



6.반복문에서의 break 와 continue 를 설명하시오.

  • break: 아래 연산들을 무시하고 반복문을 탈출한다. 가장 가까운 반복문만 탈출한다.
  • continue: 아래 연산들을 무시하고 반복문의 조건문으로 다시 돌아간다.



7. 아래를 프로그래밍 하시오.

- 1과 1000 사이의 숫자중 3의 배수 이자 5의 배수인 첫번재 수는?
final int MIN_NUM = 1;
final int MAX_NUM = 1000;
final int NUM1 = 3;
final int NUM2 = 5;
int lcm = 0;
for(int i = MIN_NUM; i <= MAX_NUM; i++) {
    if ((i % NUM1 == 0) && (i % NUM2 == 0)) {
    	lcm = i;
        break;
    }
}
String print;
if (lcm == 0) {
    print = MIN_NUM + "과 " + MAX_NUM + "사이에 "
    + NUM1 + "과 " + NUM2 + "의 최소공배수가 없습니다.";
} else {
    print = NUM1 + "과 " + NUM2 + "의 최소공배수는 " 
    + lcm + "입니다.";
}
System.out.println(print);		//3과 5의 최소공배수는 15입니다.



8. 1과 1000 사이의 숫자중 2의 배수 이자 3의 배수인 수는 모두 몇개인가?

final int MIN_NUM = 1;
final int MAX_NUM = 1000;
final int NUM1 = 2;
final int NUM2 = 3;
int counts = 0;
for(int i = MIN_NUM; i <= MAX_NUM; i++) {
    if ((i % NUM1 == 0) && (i % NUM2 == 0)) {
    	counts += 1;
    }
}
String print = MIN_NUM + "과 " + MAX_NUM + " 사이의 숫자 중 "
    + NUM1 + "와 " + NUM2 + "의 공배수는 " + counts + "개입니다.";
System.out.println(print);	//1과 1000 사이의 숫자 중 2와 3의 공배수는 166개입니다.



9.반복문 3가지의 무한루프 만드는 방법은?

  • while: 조건문이 영원히 true 가 될 수 있도록 코딩한다.
    //예시
    while(true) {}
    
  • do while: 조건문이 영원히 true 가 될 수 있도록 코딩한다.
    //예시
    do{}while(true);
    
  • for: 조건문이 영원히 true 가 될 수 있도록 코딩한다.
    //예시
    for(;true;){}
    



10. 1부터 1000 사의 숫자중 3의 배수 이자 5의 배수인 수를 카운트 하고, 해당 숫자를 출력하시오.

final int MIN_NUM = 1;
final int MAX_NUM = 1000;
final int NUM1 = 3;
final int NUM2 = 5;
int counts = 0;
for(int i = MIN_NUM; i <= MAX_NUM; i++) {
    if ((i % NUM1 == 0) && (i % NUM2 == 0)) {
    	counts += 1;
    }
}
String print = MIN_NUM + "과 " + MAX_NUM + " 사이의 숫자 중 "
    + NUM1 + "과 " + NUM2 + "의 공배수는 " + counts + "개입니다.";
System.out.println(print);	//1과 1000 사이의 숫자 중 3과 5의 공배수는 66개입니다.
profile
Brave but clumsy

0개의 댓글