Challenges/정보처리기사

[정보처리기사]4.프로그래밍 언어 활용/프로그래밍 언어/제어문,반복문

뚱요 2022. 7. 3. 16:39
반응형

제어문, 반복문

1. 제어문

- 컴퓨터 프로그램은 명령어가 서술된 순서에 따라 위에서 아래로 실행되는데, 조건을 지정해서 진행 순서를 변경할 때 사용하는 명령문

(1) if문:조건식 선택적 명령 실행
(1.1) if(조건 1) else if(조건 2) else 

조건이 여러 개일 때 사용

예. 점수가 90점 이상 고득점 합격, 89~60점 합격, 60점 미만 불합격

int score=60;
if(score>=90)
	puts("고득점 합격")
else if(score>=60)
	puts("합격")
else:
	puts("불합격")
return 0;



(1.2) if문 안에 if문이 포함 (중첩 문)

if {... if {  ... }}

예. 60점 이상 중 part 1과 part2가 40점 이상인 경우 합격 그 외 불합격

int score=60;
if(score>=60):
	if (part1>=40& part2>=40):
			puts("합격")    
    else:
    	puts("불합격")
else:
	puts("불합격")
return 0;

(2) switch문 
 숫자, 문자 따라 분기할 곳이 여러 곳인 경우 간단하게 처리할 수 있는 제어문 (break 있는 곳까지 실행)

int mth=6;
switch(mth){
    //2월 28일, 4,6,9,11월 30일, 나머지 31일
    case 2:
        puts('28days')
    case 4:
    case 6:
    case 9:
    case 11:
        puts('30days')
    default:
        puts('31days')
}
 

 

2. 반복문

- 제어문의 한 종류로 일정한 횟수를 반복하는 명령문

- 보통 변수의 값을 일정하게 증가시키면서 정해진 수가 될 때까지 명령이나 명령 그룹을 반복 수행함

(1) for(초기값; 최종값최종 값;증가 값)
-정해진 횟수를 반복하는 제어문
- 초기값을 정한 다음 최종 값에 대한 조건이 참이면 실행할 문장을 실행한 후 초기값을 증가 값만큼 증가시키면서 최종 값에 대한 조건이 참인 동안 실행할 문장을 반복 수행

//1~10까지 값 총합 구하기

// 초기화 한 후 값 하나씩 더해서 1씩 증가하기
// 1+2+3+4+5+6+7+8+9+10 == 55
int i, sum=0 
for (i=1, i<=10,i++):
	sum +=i
printf("%d",sum); //55

(2) while문
- 조건이 참인 동안 실행할 문장을 반복 수행하는 제어문
- 조건이 거짓이면 while문을 끝낸 후 다음 코드를 실행
- 조건이 처음부터 거짓이면 실행하지 않음

 
//1~10까지 값 총합 구하기

// i가 10 이하일때까지 실행되며 값 하나씩 더하면서 i 증가시키기
// 홀수값들만 더하기 1+3+5+7+9=25
int i, sum=0 
while(i<=10)
{
	if(i%2 ==0): 
    	continue;//짝수는 건너띔
    //홀수인 경우 누적합
	sum +=i
    i++
}
printf("%d",sum); //55

(3) do ~ while문

- 조건이 참: 정해진 문장을 반복 수행

- 조건이 거짓: 반복문을 벗어나는 while문과 같은 동작을 함

- 조건이 처음부터 거짓이어도 실행할 문장을 무조건 한 번 실행, 다음 조건을 판단하여 탈출 여부를 결정

int input,sum=0;
//입력값이 0보다 클 경우 계속해서 값을 받아서 sum에 더함
//0 입력받는 경우 더하고 끝남
do
{
    scanf('%d',&input);
    sum=sum+input
} while(input >=0);
printf('%d',sum);
return 0;

(4) break

-switch문/반복문 안에서 break가 나오면 블록을 벗어남

(5) continue (반복문에서만)

- continue 이후의 문장을 실행하지 않고 제어를 반복문의 처음으로 옮김

 

3. 예외 처리

컴퓨터 시스템이 동작하는 도중에 예상하지 못한 오류가 발생하여, 실행되고 있던 프로그램이 중지됨을 방지하기 위해 예외를 해결함

예외(Exception)
문법, 표현식 문제는 없지만 의도치 않은 작동 및 입력으로 문제 발생

(1) try - catch

try 블록 코드에 예외 발생 시 catch 블록 내 코드 실행하여 강제 종료 방지

  • try { 에러 발생 가능한 코드}   블록 안에서 예외가 발생했을 때 throw 명령으로 예외를 던짐
  • catch {예외 처리}                   try안에서 throw 한 예외 객체에 대한 예외 처리

- catch 블록은 예외 핸들러(Exception Handler)

try
    {
        int i = 10;
        int j = 0;
        int k = i/j; //문제의 에러 발생 구간
     }
catch(Exception *e)
{
    puts("division 에러 발생");

}
finally 
{
    puts("완료");
}

(2) throw

- 프로그램이 정상적으로 실행될 수 없는 상황일 때 예외 발생

(3) finally

- 생략 가능하나 예외 여부 상관없이 항상 실행

 

 [정보처리기사] 개정된 정보처리기사 필기 목차

 

[정보처리기사] 개정된 정보처리기사 필기 목차

 정처기 필기 100문제 중 각 챕터 당 20문제로 구성됩니다. 출판사 시나공의 정보처리기사 교재와 이전 기출문제들을 참고로 하여 간단히 키워드로요약하여 작성하였습니다. 각 중요도에 따라서

potato-potahto.tistory.com

 

반응형