Page 31 - Do it! 자료구조와 함께 배우는 알고리즘(C 언어, 3쇄)
P. 31
Q7 실습 1-5 프로그램을 참고하여 n이 7이면 ‘1 + 2 + 3 + 4 + 5 + 6 + 7 = 28’로 출력하는
연습
문제 프로그램을 작성하세요.
Q8 1부터 10까지의 합은 (1 + 10) * 5와 같은 방법으로 구할 수 있습니다. 가우스의 덧셈이라는
이 방법을 이용하여 1부터 n까지의 정수 합을 구하는 프로그램을 작성하세요.
Q9 정수 a, b를 포함하여 그 사이의 모든 정수의 합을 구하는 아래 함수를 작성하세요.
int sumof(int a, int b);
a와 b의 대소 관계에 상관없이 합을 구하세요(a가 3, b가 5면 12, a가 6, b가 4면 15).
보충수업 1-6 0이 아니면 참이고 0이면 거짓
보충수업 1-2에서 관계 연산자와 등가 연산자는 대소 관계와 등가 관계가 참이면 int형 1을, 거짓이면
int형 0을 반환한다고 했습니다. C 언어에서는 0은 거짓, 0이 아닌 모든 값은 참으로 간주합니다. 다음
과 같은 코드를 실행할 경우
if(a) printf("ABC");
변수 a의 값이 0이 아니기만 하면(1도 100도 –2도 모두) ‘ABC’를 출력합니다.
양수만 입력하기
실습 1-5의 프로그램을 실행하여 변수 n에 음수 –5를 입력하면 다음과 같이 출력됩니다.
1부터 –5까지의 합은 0입니다.
이 문장은 수학적으로 정확한 표현이 아닙니다. 원래 이 프로그램은 양수만을 n 값으로 입력
해야 합니다.
01•기본 알고리즘 31