문제 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다. 출력 첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다. 구상 n을 입력받는다. 1부터 99까지는 모두 한수이므로 이 경우 res에 1을 더한다. 100부터 999까지는 각 자리를 따로 저장한다. a에는 백의 자리, b에는 십의 자리, c에는 일의 자리를 저장하고, a-b가 b-c가 같으면, 즉 등차수열이면 True를 반환한다. 3번을 수행하는 함수 han이 Tru..
문제 소수를 크기 순으로 나열하면 2, 3, 5, 7, 11, 13, ... 과 같이 됩니다. 이 때 10,001번째의 소수를 구하세요 코드 #include int main(void) { int i, j; int count = 0; for (i = 1; i; i++) { for (j = 2; j < i; j++) { if (i % j == 0) break; } if (i == j) count++; if (count == 10001) { printf("%d\n", i); break; } } return 0; } 판별할 수의 반까지만 본다거나 에라토스테네스의 체를 활용하여 소수를 구하기도 하던데, 그냥 기본적인 방법을 사용했다. 10001번째가 될 소수가 얼마나 클 지 몰라 i를 무한히 증가시켰다. 소수는 ..
문제 1부터 10까지 자연수를 각각 제곱해 더하면 다음과 같습니다 (제곱의 합).1부터 10을 먼저 더한 다음에 그 결과를 제곱하면 다음과 같습니다 (합의 제곱).따라서 1부터 10까지 자연수에 대해 "합의 제곱"과 "제곱의 합" 의 차이는 3025 - 385 = 2640 이 됩니다. 그러면 1부터 100까지 자연수에 대해 "합의 제곱"과 "제곱의 합"의 차이는 얼마입니까? 코드 #include int main(void) { int sum_square = 0, square_sum = 0; //합의 제곱, 제곱의 합 int sum = 0; //합을 임시로 저장할 변수 int i; for (i = 1; i
문제 1 ~ 10 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수는 2520입니다. 그러면 1 ~ 20 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수는 얼마입니까? 코드 #include int main(void) { int x = 21, res = 0; while (1) { if (x % 2 == 0 && x % 3 == 0 && x % 4 == 0 && x % 5 == 0 && x % 6 == 0 && x % 7 == 0 && x % 8 == 0 && x % 9 == 0 && x % 10 == 0 && x % 11 == 0 && x % 12 == 0 && x % 13 == 0 && x % 14 == 0 && x % 15 == 0 && x % 16 == 0 && x % 17 == 0 && x % 1..
문제 앞에서부터 읽을 때나 뒤에서부터 읽을 때나 모양이 같은 수를 대칭수(palindrome)라고 부릅니다. 두 자리 수를 곱해 만들 수 있는 대칭수 중 가장 큰 수는 9009 (= 91 × 99) 입니다. 세 자리 수를 곱해 만들 수 있는 가장 큰 대칭수는 얼마입니까? 코드 #include int main(void) { int i, j; //반복제어변수 int pal = 0; //대칭수 int num = 0; //임시 수 for (i = 1; i
1. 다음 프로그램의 결과를 아래의 칸에 맞춰 쓰시오. #include int main(void) { int age = 20; double gpa = 4.19, weight = 72.3; printf("Result \nage=%3d \nGPA=%4.1lf\n", age, gpa); printf("weight=%5.1lf\"kg\"\n",weight); return 0; } Result age= 20 GPA= 4.2 weight= 72.3"kg" 2. 다음 프로그램을 실행했을 때의 결과를 아래의 칸에 맞춰 쓰시오. #include int main(void) { int op1 = 10, op2 = -20, sum; sum = op1 + op2; printf("%d+%d = %d\n", op1, op2, su..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.