본문 바로가기

Programming/Codeup.kr기초100제 && 컴퓨터 이야기

[기초-조건/선택실행구조] 정수 한 개 입력받아 평가 출력하기 && 서버

서버는 프로그램이나 기기에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터나 프로그램을 말한다. 또, 서비스를 요청하는 사용자와 요청을 처리하는 서버의 협력으로 사용자가 원하는 결과를 얻는 처리방식을 클라이언트-서버 시스템이라고 한다. 사용자수가 5-20으로 적으면 한개의 컴퓨터로도 충분하지만 사용자가 많을경우 여러개의 서버가 필요하다. 만약 서버에 사용자가 한계 이상으로 몰리는 현상이 일어나면 서버가 다운될 수 있다. 주로 서버는 리눅스같은 운영체제를 쓰지만 아닌 경우도 있다.

문제 설명

점수(정수)를 입력받아 평가를 출력해보자.
(0 ~ 100)

평가기준
점수범위 : 평가
90 ~ 100 : A
70 ~ 89 : B
40 ~ 69 : C
0 ~ 39 : D

로 평가되어야 한다.

입력

정수 한 개가 입력된다.
(0 ~ 100)

출력

평가 기준에 따라, 평가가 문자로 출력된다.

입력 예시

90

출력 예시

A

도움말

여러 조건들을 순서대로 비교하면서 처리하기 위해서 조건문을 중첩할 수 있다.

만약, 순서대로 검사하고 실행하기 위해 아래와 같이 중첩 시킨다면,

if(조건1)
{
 ...
}
else
{
 if(조건2)
 {
  ...
 }
 else
 {
  ...
 }
}


중첩된 구조가 논리적으로 1단위이기 때문에... 

코드블럭 기호를 생략해 아래와 같은 구조로 표현될 수 있다.

if(조건1) ... ;
else if(조건2) ...;
else ...;

이와 같이 계속 조건을 순서적으로 붙여나가면..

if(조건1) ... ;
else if(조건2) ...;
else if(조건3) ...;
else if(조건4) ...;
else if(조건5) ...;
else if(조건6) ...;
else if(조건...) ...;
else ...;

과 같은 구조를 만들어 순서대로 조건을 검사할 수 있다. 파이썬에서는

if(조건1): ...

elif(조건2): ...

elif(조건3): ...

elif(조건4): ...

elif(조건5): ...

else: ...
이다.


단, 어떤 조건이 참일 때에는 그 코드블럭의 내용만 실행하고 전체 조건/선택 구조를 탈출해 빠져나간다.

이렇게 조건들을 순서대로 검사할 때에는 중간에 범위가 빠지지 않았는지 꼼꼼하게 생각하고 조건들을 만드는 것이 중요하다. 이는 마치 수학에서의 부등식을 만드는 것과 유사하다.