2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

프로그래밍언어문법/반복문

ch8. 반복문3_연습문제

파아란기쁨1 2021. 5. 22. 14:58
반응형

1. https://codeup.kr/problem.php?id=1353 

2. https://codeup.kr/problem.php?id=1354 

3. https://codeup.kr/problem.php?id=1355 

4. https://codeup.kr/problem.php?id=1356 

5. https://codeup.kr/problem.php?id=1357 

6. https://codeup.kr/problem.php?id=1358 

7. https://codeup.kr/problem.php?id=1361 

8. https://codeup.kr/problem.php?id=1365 

9. https://codeup.kr/problem.php?id=1366 

10. https://codeup.kr/problem.php?id=1367 

11. https://codeup.kr/problem.php?id=1368 

 

 

연습문제1) n을 입력 받아 1부터 n까지 수 중에서 홀수만 출력하시오.

입력예)

10

출력예)

1 3 5 7 9

 

더보기

for(i=1;i<=n;i+=2)

{

    printf("%d ",i);

}

 

더보기
for(i=1;i<=n;i++)
{
	if(i%2==1){
		printf("%d ",i);
	}
}

 

더보기
for(i=1;i<=n;i++)
{
	if(i%2==0) continue;
	printf("%d ",i);
}

 

 

연습문제2) n을 입력 받아 1부터 n까지 수 중에서 홀수의 합을 출력하시오.

입력예)

10

출력예)

25

 

더보기

for(i=1;i<=n;i+=2)

{

   sum+=i;

}

 

더보기

for(i=1;i<=n;i++)

{

    if(i%2==1){

           sum+=i;

    }

}

 

더보기

for(i=1;i<=n;i++)

{

    if(i%2==0) continue;

    sum+=i;

}

 

연습문제3) n을 입력받아 1부터 차례대로 누적하다가 누적한 값이 n보다 커지면 누적한 수와 그 위치의 값을 출력하시오.

입력예)

10

출력예)

15 5

 

더보기

for(i=1;;i++)

{

   sum+=i;

   if(sum>n) break;

}

cout << sum << " " << i;

 

 

연습문제4) n을 입력받아 1부터 차례대로 누적하다가 누적한 값이 n보다 크거나 같으면 누적한 수와 그 위치의 값을 출력하시오.

입력예)

10

출력예)

10 4

 

더보기

for(i=1;;i++)

{

   sum+=i;

   if(sum>=n) break;

}

cout << sum << " " << i;

 

 

연습문제5) n을 입력받아 2부터 짝수만 차례대로 누적하다가 누적한 값이 n보다 크거나 같으면 누적한 수와 그 위치의 값을 출력하시오.

입력예)

10

출력예)

12 6

더보기

for(i=2;;i+=2)

{

   sum+=i;

   if(sum>=n) break;

}

cout << sum << " " << i;

 

더보기

for(i=1;;i++)

{

    if(i%2==0){

           sum+=i;

    }

   if(sum>=n) break;

}

 

더보기

for(i=1;;i++)

{

    if(i%2==1) continue;

    sum+=i;

    if(sum>=n) break;

}

 

 

연습문제6) n을 입력받아 2부터 짝수만 차례대로 누적하다가 누적한 값이 n보다 크거나 같으면 누적한 수와 누적한 갯수를 출력하시오.

입력예)

10

출력예)

12 3

더보기

for(i=2;;i+=2)

{

   sum+=i;

   cnt++;

   if(sum>=n) break;

}

cout << sum << " " << cnt;

 

더보기

for(i=1;;i++)

{

  if(i%2==0){

       sum+=i;

       cnt++;

   }

   if(sum>=n) break;

}

cout << sum << " " << cnt;

 

더보기

for(i=1;;i++)

{

  if(i%2==1)continue;

  sum+=i;

  cnt++;

   if(sum>=n) break;

}

cout << sum << " " << cnt;

 

 

연습문제7-00) n을 입력 받아 다음과 같이 출력하는 프로그램을 작성하시오.

입력예) 3

출력예)

1

2

3

입력예) 4

출력예)

1

2

3

4

 

 

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",i);

}

 

연습문제7-01) n을 입력 받아 다음과 같이 2부터 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 반복하시오)

입력예) 3

출력예)

2

3

4

 

입력예) 4

출력예)

2

3

4

5

 

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",i+1);

}

 

연습문제7-02) n을 입력 받아 다음과 같이 2부터 2씩 커지는 수를 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

2

4

6

입력예) 4

출력예)

2

4

6

8

 

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",i*2);

}

 

연습문제7-03) n을 입력 받아 다음과 같이 1부터 2씩 커지는 수를 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

1

3

5

입력예) 4

출력예)

1

3

5

7

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",i*2-1);

}

 

연습문제7-03) n을 입력 받아 다음과 같이 1부터 2씩 커지는 수를 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

3

5

7

입력예) 4

출력예)

3

5

7

9

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",i*2 + 1);

}

 

연습문제7-03) n을 입력 받아 다음과 같이 n부터 1까지 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

2

1

0

 

입력예) 4

출력예)

3

2

1

0

 

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",n-i);

}

 

연습문제7-03) n을 입력 받아 다음과 같이 n부터 1까지 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

3

2

1

입력예) 4

출력예)

4

3

2

1

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",n-i + 1);

}

 

연습문제7-03) n을 입력 받아 다음과 같이 n부터 1까지 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

4

3

2

입력예) 4

출력예)

5

4

3

2

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",n-i +2);

}

 

연습문제7-04) n을 입력 받아 다음과 같이 n*2-2부터 1까지 2씩 작아지도록 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

4

2

0

입력예) 4

출력예)

6

4

2

0

더보기

for(i=1;i<=n;i++)

{

   printf("%d\n",(n-i)*2 );

}

 

연습문제7-04) n을 입력 받아 다음과 같이 n*2부터 1까지 2씩 작아지도록 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

6

4

2

입력예) 4

출력예)

8

6

4

2

 

더보기

for(i=1;i<=n;i++)

{

  printf("%d\n",(n-i)*2 + 2);

}

 

연습문제7-05) n을 입력 받아 다음과 같이 n*2-1부터 1까지 2씩 작아지도록 출력하는 프로그램을 작성하시오.

(단 for문에서 i=1부터 n까지 1씩 커지도록 반복하시오)

입력예) 3

출력예)

5

3

1

입력예) 4

출력예)

7

5

3

1

 

더보기
for(i=1;i<=n;i++)
{
  printf("%d\n",(n-i)*2 + 1);
}

연습문제7-06) n을 입력 받아 다음과 같이 출력하는 프로그램을 작성하시오.(단 i는 1~n 까지 반복하면서)

입력예)3

1

2

3

3

2

1

입력예)4

1

2

3

4

4

3

2

1

더보기
for(i=1;i<=n;i++){
	printf("%d\n",i);
}
for(i=1;i<=n;i++){
    printf("%d\n",n-i + 1);
}

연습문제 7-061) 다음과 같이 숫자 n을 입력받아 출력하는 프로그램을 작성하시오.

입력예)

3

출력예)

2

1

 

입력예)

4

출력예)

3

2

1

더보기
for(i=1;i<=n-1;i++)
{
	printf("%d\n",n-i);
}

 

연습문제7-062) n을 입력 받아 다음과 같이 출력하는 프로그램을 작성하시오.(단 i는 1~n 까지 반복하면서)

입력예)3

1

2

3

2

1

입력예)4

1

2

3

4

3

2

1

더보기
for(i=1;i<=n;i++){
	printf("%d\n",i);
}
for(i=1;i<=n-1;i++){
    printf("%d\n",n-i);
}

 

연습문제 7-07) n을 입력 받아 다음과 같이 출력하는 프로그램을 작성하시오(단,i는 1부터 n까지 증가하면서 출력)

입력예) 3

1

3

5

5

3

1

 

입력예)4

1

3

5

7

7

5

3

1

더보기
for(i=1;i<=n;i++){
	printf("%d\n",i*2-1);
}
for(i=1;i<=n;i++){
    printf("%d\n",(n-i)*2 + 1);
}

 

 

연습문제7-1) n을 입력 받아 다음과 같은 모양의 별을 출력하시오.

입력예) 3

출력예)

*

**

***

입력예) 4

출력예)

*

**

***

****

더보기

for(i=1;i<=n;i++){

   for(j=1;j<=i;j++)printf("*");

   printf("\n");

}

 

연습문제7-2) n을 입력 받아 다음과 같은 모양의 별을 출력하시오.

입력예) 3

출력예)

**

****

******

더보기

for(i=1;i<=n;i++){

   for(j=1;j<=2*i;j++)printf("*");

   printf("\n");

}

 

 

연습문제7-2) n을 입력 받아 다음과 같은 모양의 별을 출력하시오.

입력예) 3

출력예)

*

***

*****

더보기

for(i=1;i<=n;i++){

   for(j=1;j<=2*i-1;j++)printf("*");

   printf("\n");

}

 

연습문제7-2) n을 입력 받아 다음과 같은 모양의 별을 출력하시오.

입력예) 3

출력예)

***

*****

*******

더보기

for(i=1;i<=n;i++){

   for(j=1;j<=2*i+1;j++)printf("*");

   printf("\n");

}

 

 

 

연습문제7-3) n을 입력 받아 다음과 같은 모양의 별을 출력하시오.(반드시 i=1부터 n까지 갈것)

입력예) 3

출력예)

***

**

*

더보기

for(i=1;i<=n;i++){

  for(j=1;j<=n-i +1;j++)printf("*");

  printf("\n");

}

 

 

연습문제7-4) n을 입력 받아 다음과 같은 모양의 별을 출력하시오.(반드시 i=1부터 n까지 갈것)

입력예) 3

출력예)

*****

***

*

더보기

for(i=1;i<=n;i++){

  for(j=1;j<=(n-i)*2 +1;j++)printf("*");

  printf("\n");

}

 

연습문제 8-1) n을 입력 받아 다음과 같이 출력하시오.(단 i = 1부터 n까지)

입력예) 4

출력예)

1 3

2 2

3 1

4 0

 

연습문제 8-2) n을 입력 받아 다음과 같이 출력하시오.(단 i=1부터 n까지)

입력예) 4

출력예)

0 4

1 3

2 2

3 1

 

연습문제 8-2-1) n을 입력 받아 다음과 같이 출력하시오.(단 i=1부터 n까지)

입력예) 4

출력예)

4 1

3 2

2 3

1 4

 

연습문제 8-3) n을 입력받아 다음과 같이 출력하시오.(단 i=1부터 n까지)

입력예) 4

출력예)

0 6

1 4 

2 2

3 0

 

연습문제 8-4) n을 입력받아 다음과 같이 출력하시오.(단 i=1부터 n까지)

입력예) 4

출력예)

0 7

1 5 

2 3

3 1

 

고급 연습문제) n 을 입력 받아 다음과 같이 크리스마스 트리를 작성하시오.

3 을 입력 했을때 3층으로 트리를 쌓는다.

      *
    * * *
      *
    * * *
  * * * * *
      *
    * * *
  * * * * *
* * * * * * *
     | |
     | |
#include<iostream>
using namespace std;
//programology content
int drawTreeLevels(int n, int space)
{
    int i,j,s;
    for(i=1; i<=n; i++)
    {
        s=n-i+space;
        while(s!=0)
        {
            cout<<"  ";
            s--;
        }
        for(j=1; j<=i*2-1; j++)
        {
            cout<<"* ";
        }
        cout<<"\n";
    }
}
int main()
{
    int i,n,s,l=2;
    cout<<"Enter the number of tree levels programology content ";
    cin>>n;
    cout<<"The Tree programology content\n";
    while(l<=n+1)
    {
         s=n-l+1;
         drawTreeLevels(l,s);
         l++;
    }
    for(i=1;i<n;i++)
    {
         s=n*2-1;
         while(s!=0)
         {
             cout<<" ";
             s--;
         }
         cout<<"| |"<<endl;
    }
}
반응형

'프로그래밍언어문법 > 반복문' 카테고리의 다른 글

ch7. 반복문2_연습문제  (0) 2021.05.22
ch6. 반복문1_연습문제  (0) 2021.05.22
ch8_07.반복문3  (0) 2021.01.24
ch8_06.반복문3  (0) 2021.01.24
ch8_05.반복문3  (0) 2021.01.24