JAVA/STUDY

6. 반복문과 재귀함수 (팩토리얼, 피보나치)

dev_sr 2020. 9. 9. 20:55

각각 한번씩 반복문으로 실행해보고

재귀함수로 실행해봄

 

팩토리얼 함수 : number!의 값 구하기

피보나치 함수 : 피보나치 수열에서 number 번째에 있는 값 구하기 

 

C#이랑 똑같당

 

public class Main {

	public static void main(String[] args) {
		
		//팩토리얼
		System.out.println(Factorial1(5));
		System.out.println(Factorial2(5));
		
		//피보나치 수열
		System.out.println(Fibonacci1(7));
		System.out.println(Fibonacci2(7));
		
	}
	
	public static int Factorial1(int number)
	{
		int result=1;
		
		for(int i=number; i>0; i--)
		{
			result *=i;
		}
		return result;
	}
	
	public static int Factorial2(int number)
	{
		if(number==1)
		{
			return 1;
		}
		else 
		{
			return number*Factorial2(number-1);
		}
	}
	
	public static int Fibonacci1(int number)
	{
		int one =1;
		int two =1;
		int result = -1;
		if(number==1)
		{
			return one;
		}
		else if(number==2)
		{
			return two;
		}
		else
		{
			for(int i=2; i<number; i++)
			{
				result = one+two;
				one = two;
				two = result;
				
			}
			return result;
		}
	}
	
	public static int Fibonacci2(int number)
	{
		if(number==1)
		{
			return 1;
		}
		else if(number==2)
		{
			return 1;
		}
		else
		{
			return Fibonacci2(number-1)+Fibonacci2(number-2);
		}
		
	}

}

 

'JAVA > STUDY' 카테고리의 다른 글

8. 추상 / Final  (0) 2020.09.10
7. 클래스 / 상속  (0) 2020.09.10
5. 입력 / 파일 입력  (0) 2020.09.09
4. 조건문 & 반복문  (0) 2020.09.08
3. 자료형(데이터 타입)  (0) 2020.09.08