1번 문제
/*
내용
: 정수 m을 입력받을 때, 1부터 시작하여 값을 1씩 증가시키면서
차례로 더한 합이 최초로 m이상이 되는 때의 마지막에 더한 정수를 구하는 프로그램을 작성하시오.
ex) 1+2+…+n ≥ m 인 가장 작은 n 구하기
입출력 예시
입력 M : 100
출력 N : 14
*/
m = int(input("M:"))
sum = 1
for i in range(m):
sum += i
if sum >= m :
print("N: %d" %i)
break
1-1 %서식문자
%서식 문자 모양은 %기호 뒤에 자료형을 가리키는 문자가 온다.
while문은 먼저 출력 후 break 하는 것임
2번 문제
다음은 철수가 푼 과제문제지이다.
철수가 문제를 맞히면 3점을 얻고 틀리면 1점이 깎인다.
아래 문제지를 보고 철수의 과제 점수를 구하여라.
1. for문에서 while True와 같은 효과를 내는 방법은 없다. (X) -> 3점
2. def max(a,b): max=1 if a>b: max=a else: max=b return max 은 내장함수 max와 같은 기능을 한다 (O) -> 3점
3. try except는 오류 상황에서 추가 동작을 지시할 수 있다. (x) -> -1점
#try문에서 오류 시 execpt를 실행해 추가 동작을 지시할 수 있다.
4. 파이썬3는 파이썬2와 달리 9/3을 계산해도 float형으로 출력되지 않는다.(O) -> -1점
#파이썬3에서 9/3 계산 시 3.0 으로 출력된다.
5. 변수명으로 사용하기에 (num_1, sai_02, sa1, sai 2, 0SAI, int)가 모두 적절하다. (X) -> 3점
2-1 예외 처리 참고
‘3. try except는 오류 상황에서 추가 동작을 지시할 수 있다’
05-4 예외 처리 - 점프 투 파이썬 (wikidocs.net)
try문 수행중 오류가 발생하면 except절이 수행되고 오류가 없으면 else절이 수행된다.
다음은 try문에 else절을 사용한 간단한 예제이다.
try: age=int(input('나이를 입력하세요: ')) except: print('입력이 정확하지 않습니다.') else: if age <= 18: print('미성년자는 출입금지입니다.') else: print('환영합니다.')
여러개의 오류처리하기
try문 안에서 여러 개의 오류를 처리하려면 다음과 같이 사용한다.
try: ... except 발생오류1: ... except 발생오류2: ...
2-2 변수명으로 사용하기에 적절하지 않은 것
‘5. 변수명으로 사용하기에 (num_1, sai_02, sa1, sai 2, 0SAI, int)가 모두 적절하다.’
int
숫자로 시작하는 것
공백이 있는 변수명 ex. sai 2