일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 정보과학
- 알고리즘
- if문
- IT
- C
- C++
- 제어문
- 백도어
- Linux
- c언어
- 다중반복문
- 리눅스 명령어
- 반복문
- Backdoor
- 영재교육원
- 자료구조
- DBMS
- 배열
- 문제출저:www.dovelet.com
- 참조은요양병원
- API
- 정보올림피아드
- For문
- 독후감
- 리눅스
- 독서 감상문
- 풀이&소스코드저작권:왕유승
- 수학영재원
- 프로그래밍
- 정보영재원
Archives
- Today
- Total
되는대로 살자
[C언어 기출문제&풀이] 완전수 본문
프로그램 명: perfect
제한시간: 1 초
완전수(perfect) , 부족수(deficient) , 과잉수(abundant) 를 출력하는 문제.
완전수란 자신을 제외한 약수의 합이 자신과 같은 수 , 부족수는 합이 자신의 수보다 작은수 , 과잉수는 큰수
입력
각 수는 60,000 보다 작다.출력
수는 5 자리 확보후 오른쪽에 맞추어 출력후 2 칸 스페이스를 준 후 수의 종류를 출력한다.
입출력 예
입력 15 출력 15 DEFICIENT 입력 28 출력 28 PERFECT 입력 56 출력 56 ABUNDANT
출력 예의 보충 설명
입력 15 에 대한 출력12345678901234567890123..
15 DEFICIENT
참고
- c .. printf("%5d",);
- c++ .. cout << setw(5) << ..;
풀이 : 약수를 구하는 함수를 코딩한 다음 조건문을 통하여 해결한다.
소스코드
01 |
#include <stdio.h> |
02 |
|
03 |
int main() |
04 |
{ |
05 |
int n,ar[50],sum=0,i,j,count=0; |
06 |
scanf ( "%d" ,&n); |
07 |
for (i=1;i<n;i++) |
08 |
{ |
09 |
if (n%i==0) |
10 |
{ |
11 |
ar[count]=i; |
12 |
count++; |
13 |
} |
14 |
} |
15 |
for (i=0;i<count;i++) |
16 |
sum+=ar[i]; |
17 |
if (sum==n) |
18 |
printf ( "%5d PERFECT" ,n); |
19 |
else if (sum<n) |
20 |
printf ( "%5d DEFICIENT" ,n); |
21 |
else |
22 |
printf ( "%5d ABUNDANT" ,n); |
23 |
} |
'2009~2014 > C/C++' 카테고리의 다른 글
[C언어 기출문제&풀이] 최대공약수, 최소공배수 (0) | 2010.11.02 |
---|---|
[C언어 기출문제&풀이] 총합,최대,최소 (0) | 2010.11.02 |
[C언어 기출문제&풀이] 학점 (0) | 2010.11.02 |
[C언어 기출문제&풀이] 선의 수 (0) | 2010.11.01 |
[C언어 기출문제&풀이] Spot of Light (0) | 2010.11.01 |