几个递归小题
2017-01-10 13:32
246 查看
代码:
#include<iostream>
using namespace std;
int f(int n)
{
if (n==1)
return 1;
return n*f(n-1);
}
int main()
{
int n,i;
double s=1;
cin>>n;
for (i=1;i<=n;i++)
{
s+= (double)1.0/f(i);
}
cout<<s<<endl;
return 0;
}
代码:
#include<iostream>
#include<stdio.h>
using namespace std;
int f(int n)
{
if (n==1)
return 1;
else if (n==2)
return 2;
else
{
return 3*f(n-1)-2*f(n-2);
}
}
int main()
{
int n,i,s;
cin>>n;
for (i=1;i<=n;i++)
s+=f(i);
printf("第%d项:%d",n,f(n));
printf("之和:%d",s);
return 0;
}
4-4 递归求解双递推摆动数列 已知递推数列:
a(1)=1,a(2i)=a(i)+1,a(2i+1)=a(i)+a(i+1),(i为正整数)
试建立递归,求该数列的第
n(n<100000)
项与前
n
项的和。
试建立递归,求该数列的第
n(n<100000)
项与前
n
项的和。
试建立递归,求该数列的第n(n<100000)项与前n项的和。
代码:
#include<iostream>
#include<stdio.h>
using namespace std;
int f(int n)
{
if (n==1)
return 1;
else if (n%2==0)
return f(n/2)+1;
else
return f((n+1)/2)+f((n+1)/2);
}
int main()
{
int n,i,s=0;
cin>>n;
for (i=1;i<=n;i++)
{
s+=f(i);
}
printf("第%d项为:%d",n,f(n));
printf("之和为:%d",s);
return 0;
}
相关文章推荐
- PHP递归删除目录几个代码实例
- 关于递归的几个算法实现
- python函数递归的几个例子
- 最近正准备找工作呢,熟悉下递归算法,做了几个递归的例子包括汉诺塔问题
- 几个经典递归问题用js实现
- 如何用C++递归在BST(Binary Search Tree) 数有几个节点大于根节点的数字
- 递归的几个应用举例
- 牛客几个有意思的小题
- 递归的几个简单题目
- 几个经典递归问题(放苹果,红与黑,八皇后,木棍)
- 体验C#——用几个小题看一下“集合”
- 经典面试题 之 递归调用 几个经典示例
- 输入两个整数n和m,从数列1,2,3,...,n中随意取几个数,使其和等于m,将其所有可能的组合列出来。 递归求解
- 算法小题(1)python递归小练习
- 递归的几个简单题目
- 几个递归练习题问题(迷宫,算24,小游戏,碎纸机)
- 递归的几个demo
- 分治法对最大连续和以及归并排序,分治与递归实质把问题区间区域分割成几个小区间或者小分区,一直下钻到一个元素小区解决问题
- 几个有趣的小题
- 几个简单的递归题目