铺地板

1.实验题目

有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限。要将这个长度为N的地板铺满,一共有多少种不同的铺法?

例如,长度为4的地面一共有如下5种铺法:

4=1+1+1+1

4=2+1+1

4=1+2+1

4=1+1+2

4=2+2

2.需求分析

本演示程序用dev-c++编写,计算出需要的地板数量。

① 输入的形式和输入值的范围:只有一个数N,代表地板的长度。

② 输出的形式: 输出一个数,代表所有不同的瓷砖铺放方法的总数。

③ 程序所能达到的功能:利用for循环判断是否符合要求。

④ 测试数据:4

 

3.概要设计 
为实现上述程序功能,利用for循环

 

4.详细设计

#include <iostream>  

using namespace std;  

int main()  

{  

    int a[100];  

    int n;  

    cin >> n;  

    a[0]=1; a[1]=1;  

    for(int i=2;i<=n;i++)  

        a[i]=a[i-1]+a[i-2];           

    cout << a[n]<<"\n";  

}

5.使用说明

本演示程序用dev-c++编写,a[i]表示长度为i的铺放方法,显然a[i]等于第i长度放长度为1的放法加上长度为2的放法。

6. 测试结果

猜你喜欢

转载自blog.csdn.net/PD137/article/details/80473974