More actions
No edit summary |
No edit summary |
||
| Line 102: | Line 102: | ||
== 현지 == | == 현지 == | ||
#include <stdio.h> | |||
#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; | |||
} | |||
== 혜민 == | == 혜민 == | ||
Revision as of 07:12, 9 April 2017
수업 내용
무한 루프, break & continue
반복문을 쓰다 보면 무한히 반복하게 해야할 때가 있습니다. 무한 반복문은 이렇게 만들 수 있죠.
근데 프로그램을 종료하려면 언젠가는 반복문을 빠져나와야 하는데, 무한루프에서는 어떻게 빠져나오죠? 그 때
{color:red}break
문을 이용하면 됩니다. break를 만나면 바로 반복문 밖으로 빠져나오게 되지요.
그런데 완전히 빠져나오고 싶지는 않고 뒷부분을 skip하고 싶을 때도 있죠. 그 때 사용하는 것이
{color:red}continue
입니다.
continue를 만나면 뒷 부분을 건너 뛰고 다시 처음부터 반복하게 됩니다. 그러나 사실 이 경우는 뒷부분이 항상 실행이 안 되기 때문에 있으나마나죠. 그래서 break와 continue는 조건문과 같이 쓰입니다.
while(true){
code1...
code2...
if( 조건1 ) break; // 조건1을 만족하면 while문을 빠져나와라
code3...
code4...
if( 조건2 ) continue; // 조건2를 만족하면 code5를 실행하지 말고 다시 code1부터 실행해라
code5...
}
배열
배열은 변수 여러 개를 모은 것입니다.
성적 처리 프로그램을 만든다고 합시다. 학생 100명의 성적을 저장해야 해요. 그러면 변수 100개를 일일이 선언하실 건가요? 너무 귀찮죠. 그 때 배열을 이용하면 100개라 할지라도 간편하게 선언할 수 있습니다.
배열은 메모리상에서 이렇게 나타낼 수 있습니다.
각각의 원소는 student[0], student[1], ...., student[99]로, 번호를 붙여서 부릅니다. 배열 원소는 항상
{color:red}0
번부터 시작합니다. 꼭 기억하세요!
그렇다면 원소가 n개일 때, 마지막 원소는 n-1번입니다. i번 원소는 i+1번째 원소이지요.
퀴즈! int a[100]의 원소를 차례로 출력하려면 for문 안에 어떤 내용이 들어가야 할까요?
for ( ; ; ){
printf("%d ", a[i]);
}
실습
- 슈도 코드
for(무한){
if(양수면)
덧셈
else if(음수면)
다시 받기
else
프로그램 종료
}
과제 소개
여러분, 천천히 생각해보세요!! 여러분은 머리가 좋아서 충분히 여유를 가지고 설계하면 풀 수 있습니다~
과제 제출
현지
혜민
유진
후기
물주는사람
실습 난이도가 조금 높았나 싶기도 하지만, 난이도가 문제가 아니라 제가 좀 더 명료하고 쉽게 가르쳐줘야겠다는 생각이 들었습니당 새싹들의 무한한 잠재력을 꺼내주고 싶어요!
유진
현지
#include <stdio.h>
- 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; }







