Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

새싹교실/2017/꽃밭/0404: Difference between revisions

From ZeroWiki
No edit summary
No edit summary
Line 87: Line 87:
= 과제 제출 =
= 과제 제출 =
== 현지 ==
== 현지 ==
   
  #include <stdio.h>
#include &lt;iostream&gt;
int main(void)
{
int num;
int sum = 0;
for (;;)
{
printf("숫자를 입력하세요 ");
scanf_s("%d", &num);
if (num > 0)
{
sum = sum + num;
}
else if (num < 0)
{
printf("\n음수를 입력하셨습니다. 다시 입력하세요");
continue;
}
else {
printf("\n프로그램을 종료합니다.");
break;
}
 
}
printf("입력한 숫자의 합: ");
scanf_s("%d", &sum);
int max = 0;
int i;
if (num&#91;i&#93; > max)
{
max = num&#91;i&#93;;
printf("가장 큰 수는 %d입니다.");
scanf_s("%d", &i);
}
system("pause");
return0;
}
== 혜민 ==
== 혜민 ==
   
   

Revision as of 07:12, 9 April 2017

◀이전수업▒▒▒▒▒다음수업▶

수업 내용

무한 루프, break & continue

반복문을 쓰다 보면 무한히 반복하게 해야할 때가 있습니다. 무한 반복문은 이렇게 만들 수 있죠.

340 340

근데 프로그램을 종료하려면 언젠가는 반복문을 빠져나와야 하는데, 무한루프에서는 어떻게 빠져나오죠? 그 때

{color:red}break

문을 이용하면 됩니다. break를 만나면 바로 반복문 밖으로 빠져나오게 되지요.

340

그런데 완전히 빠져나오고 싶지는 않고 뒷부분을 skip하고 싶을 때도 있죠. 그 때 사용하는 것이

{color:red}continue

입니다.

340

continue를 만나면 뒷 부분을 건너 뛰고 다시 처음부터 반복하게 됩니다. 그러나 사실 이 경우는 뒷부분이 항상 실행이 안 되기 때문에 있으나마나죠. 그래서 break와 continue는 조건문과 같이 쓰입니다.

      while(true){
         code1...
         code2...
         if( 조건1 ) break;    // 조건1을 만족하면 while문을 빠져나와라
         code3...
         code4...
         if( 조건2 ) continue; // 조건2를 만족하면 code5를 실행하지 말고 다시 code1부터 실행해라
         code5...
     }

배열

배열은 변수 여러 개를 모은 것입니다.

성적 처리 프로그램을 만든다고 합시다. 학생 100명의 성적을 저장해야 해요. 그러면 변수 100개를 일일이 선언하실 건가요? 너무 귀찮죠. 그 때 배열을 이용하면 100개라 할지라도 간편하게 선언할 수 있습니다.

600

배열은 메모리상에서 이렇게 나타낼 수 있습니다.

600

각각의 원소는 student[0], student[1], ...., student[99]로, 번호를 붙여서 부릅니다. 배열 원소는 항상

{color:red}0

번부터 시작합니다. 꼭 기억하세요!

그렇다면 원소가 n개일 때, 마지막 원소는 n-1번입니다. i번 원소는 i+1번째 원소이지요.

퀴즈! int a[100]의 원소를 차례로 출력하려면 for문 안에 어떤 내용이 들어가야 할까요?

   for (      ;       ;      ){
	printf("%d ", a[i]);
   }


실습

600

  • 슈도 코드
    for(무한){
         if(양수면)
           덧셈
         else if(음수면)
           다시 받기
         else
            프로그램 종료
     }

과제 소개

여러분, 천천히 생각해보세요!! 여러분은 머리가 좋아서 충분히 여유를 가지고 설계하면 풀 수 있습니다~

600

과제 제출

현지

#include <stdio.h>
  1. include <iostream>

int main(void) { int num; int sum = 0; for (;;) { printf("숫자를 입력하세요 "); scanf_s("%d", &num); if (num > 0) { sum = sum + num; } else if (num < 0) { printf("\n음수를 입력하셨습니다. 다시 입력하세요"); continue; } else { printf("\n프로그램을 종료합니다."); break; }

} printf("입력한 숫자의 합: "); scanf_s("%d", &sum); int max = 0; int i; if (num[i] > max) { max = num[i]; printf("가장 큰 수는 %d입니다."); scanf_s("%d", &i); } system("pause"); return0; }

혜민

유진

후기

물주는사람

실습 난이도가 조금 높았나 싶기도 하지만, 난이도가 문제가 아니라
제가 좀 더 명료하고 쉽게 가르쳐줘야겠다는 생각이 들었습니당
새싹들의 무한한 잠재력을 꺼내주고 싶어요!

유진

현지

혜민


◀이전수업▒▒▒▒▒다음수업▶ 새싹교실/2017 새싹교실/2017/꽃밭