본문 바로가기
반응형

Programming44

[C] 이진수의 곱셈 ※ 이진수를 십진수로 바꿔서 계산하는 것이 아니라 이진수 그자체를 곱셈으로 계산 #include int main() { int A[4] = { 0, }; int B[4] = { 0, }; int C[8] = { 0, }; // 결과값을 위한 배열 C 초기화 int i, j; printf("Input A : "); for (i = 3; i >= 0; i--) // 이진수를 배열 A에 입력 scanf_s("%d", &A[i]); printf("Input B : "); // 이진수를 배열 B에 입력 for (i = 3; i >= 0; i--) scanf_s("%d", &B[i]); for (i = 0; i < 4; i++) { for (j = 0; j < 4; j++) { C[j + i] += (A[j] * .. 2017. 4. 3.
[C] 다이아몬드 찍기 ※ for문을 여러개 사용해도 되지만 일부러 2개만 사용. #include int main() { int num; int i, j; int center; printf("input : "); scanf_s("%d", &num); center = num / 2 ; if (num % 2 == 0) { // 짝수 다이아몬드 for (int i = 0; i = center - (i + 1)) && (j = (i + 1) - center) && (j < num.. 2017. 4. 3.
[C] 빈 다이아몬드 찍기 ※ for문을 여러개 사용해도 되지만 일부러 2개만 사용. #include int main() { int num; int i, j; int center; printf("input : "); scanf_s("%d", &num); center = num / 2; if (num % 2 == 0) { //짝수 빈 다이아몬드 for (i = 0; i = center - i && j = i + 1 - (center - 1)) && (j < num - (i + 1 - (center .. 2017. 4. 3.
[C] 계단 오르는 방법의 가짓수 (재귀함수) 한번에 1칸, 2칸 혹은 3칸씩 올라갈 수 있음. n개의 계단이 있을때 올라가는 방법의 가짓수 #include // 재귀함수 int stair(int n) { // f(n) = f(n - 1) + f(n - 2) + f(n - 3) 규칙이 사용 if (n == 1) return 1; else if (n == 2) return 1 + stair(1); else if (n == 3) return 1 + stair(1) + stair(2); else return stair(n - 3) + stair(n - 2) + stair(n - 1); } int main() { int num; printf("n=? "); scanf_s("%d", &num); printf("%d \n", stair(num)); //함수 호.. 2017. 4. 3.
[C] 피보나치 수열 (재귀함수) #include // 재귀함수 int fibo(int n) { if (n == 1) return 1; else if (n == 2) return 1; else return fibo(n - 1) + fibo(n - 2); } int main() { int i, num; printf("정수 입력 : "); scanf_s("%d", &num); for(i = 1; i 2017. 4. 3.
[C] 정수 개수 입력 받고 가장 큰 정수 출력하기 #include int main() { int num = 0; int max, i; int input; printf("입력 할 정수 개수 : "); scanf_s("%d", &input); scanf_s("%d", &max); // max 값 초기화 for (i = 1; i < input; i++) { scanf_s("%d", &num); if (max < num) max = num; } printf("%d \n", max); } 2017. 4. 3.
반응형