🙇‍♀️10


🪐이진수 변환 예제

#include <stdio.h>
#include <stdlib.h> // exit()

// 이진수 변환 예제

void print_binary(unsigned long n);
void print_binary_loop(unsigned long n);

int main()
{
	print_binary_loop(10);
	print_binary(10);

	return 0;
}

void print_binary(unsigned long n)
{
	int remainder = n % 2;

	if (n >= 2)
		print_binary(n / 2);

	printf("%d", remainder);

	return;
}

void print_binary_loop(unsigned long n)
{
	while (1)
	{
		int quotient = n / 2;
		int remainder = n % 2;

		printf("%d", remainder);

		n = quotient;

		if (n == 0) break;
	}

	printf("\n");
}


🪐피보나치 예제와 재귀 호출의 장단점

int fibonacci(int number)
{
	if (number == 1 || number == 2) return 1;

	return fibonacci(number - 1) + fibonacci(number - 2);
}
  • 장점 : 구현이 간단해진다.
  • 단점 : 메모리를 많이 쓰고 계산에 중복이 생긴다.

태그:

카테고리:

업데이트: