题目要求:n个台阶,上楼可以一步上1阶,也可以一步上2阶,一共有多少种上楼的方法
解题思路:
- 找出第n阶和第n-1的关系
- 先画图找出基本规律
- 1-1 2-2 3-3 4-5 5-8 6-13….
- 发现后一项总等于前两项的和
import java.util.Scanner;
public class E201_07_09_阶梯问题 {
public static void main(String[] args) {
System.out.printf("请输入台阶数:");
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
int Method = Steps(num);//编号+1
System.out.printf("共有%d种方法!",Method);
}
/**
* 计算台阶方法种数
* @param num 输入的台阶数
* @return 方法总数
*/
private static int Steps(int num) {
if(1 == num ){
return 1;
}else if (2 == num){
return 2;
}else {
return (Steps(num-1)+Steps(num-2));
}
}
}