做2道题 c++
紧急求助做2道题 c++
一、裴波那契数列
有一对小兔子,出生一个月后变成大兔子开始怀孕;
两个月后,生出一对小兔子,这时共有两对兔子(一对大兔子,一对小兔子),同时大兔子再次怀孕。
3个月后,以前出生的小兔子变成大兔子,以前怀孕的大兔子又生出一对小兔子,这时共有三对兔子(两对大兔子,一对小兔子),所有大兔子又开始怀孕。
4个月后,以前出生的小兔子变成大兔子,以前怀孕的大兔子又生出一对小兔子,这时共有5对兔子(三对大兔子,两对小兔子),所有大兔子又开始怀孕。
5个月后,以前出生的小兔子变成大兔子,以前怀孕的大兔子又生出一对小兔子,这时共有8对兔子(五对大兔子,三对小兔子),所有大兔子又开始怀孕。
......
假设在兔子生养的过程中没有死亡,编写程序,输入n,计算n个月后有多少对兔子,并输出。
二、爱因斯坦阶梯问题,设有阶梯不知其数,但知道每步跨2阶,最后剩1阶;每步跨3阶,最后剩2阶;每步跨5阶,最后剩4阶;每步跨7阶,正好到楼顶。编写程序,求最少共有多少阶梯。
------解决方案--------------------
第二道题目我想应该可以是这个样
#include "stdio.h"
int main()
{
int m_T = 0; //总的阶梯数目
while(1)
{
if (m_T%2 == 1 && m_T%3 ==2 && m_T%5 == 4 && m_T%7 == 0)
{
printf("%d",&m_T);
break;
}
m_T++;
}
}
------解决方案--------------------
------解决方案--------------------
一、裴波那契数列
有一对小兔子,出生一个月后变成大兔子开始怀孕;
两个月后,生出一对小兔子,这时共有两对兔子(一对大兔子,一对小兔子),同时大兔子再次怀孕。
3个月后,以前出生的小兔子变成大兔子,以前怀孕的大兔子又生出一对小兔子,这时共有三对兔子(两对大兔子,一对小兔子),所有大兔子又开始怀孕。
4个月后,以前出生的小兔子变成大兔子,以前怀孕的大兔子又生出一对小兔子,这时共有5对兔子(三对大兔子,两对小兔子),所有大兔子又开始怀孕。
5个月后,以前出生的小兔子变成大兔子,以前怀孕的大兔子又生出一对小兔子,这时共有8对兔子(五对大兔子,三对小兔子),所有大兔子又开始怀孕。
......
假设在兔子生养的过程中没有死亡,编写程序,输入n,计算n个月后有多少对兔子,并输出。
二、爱因斯坦阶梯问题,设有阶梯不知其数,但知道每步跨2阶,最后剩1阶;每步跨3阶,最后剩2阶;每步跨5阶,最后剩4阶;每步跨7阶,正好到楼顶。编写程序,求最少共有多少阶梯。
------解决方案--------------------
第二道题目我想应该可以是这个样
#include "stdio.h"
int main()
{
int m_T = 0; //总的阶梯数目
while(1)
{
if (m_T%2 == 1 && m_T%3 ==2 && m_T%5 == 4 && m_T%7 == 0)
{
printf("%d",&m_T);
break;
}
m_T++;
}
}
------解决方案--------------------
#include<iostream>
using namespace std;
int fibonacci(int n);
int main()
{
int n;
cout<<"请输入几个月后(数字):";
cin>>n;
cout<<"the fibonacci you want is:"<<fibonacci(n)<<endl;
system("pause");
return 0;
}
int fibonacci(int n)
{
if(n==1
------解决方案--------------------
n==2)
return 1;
else
return fibonacci(n-1)+fibonacci(n-2);
}
------解决方案--------------------
#include <iostream>
using namespace std;
int main()
{
int n = 0; //总的阶梯数目
while(1)
{
if (n % 7 == 0)
{
if (n % 5 == 4)
{
if(n % 3 ==2)
{
if (n % 2 == 1)
{
cout<<"最少共有"<<n<<"阶梯"<<endl;
break;
}
}
}
}
n++;
}
system("pause");
return 0;
}