第14周报告1
实验目的:学会使用函数的递归
实验内容:用递归函数求解表达式
* 程序头部注释开始(为避免提交博文中遇到的问题,将用于表明注释的斜杠删除了)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 递归求f(n)=1^3+2^3+…+n^3
* 作 者: 刘镇
* 完成日期: 2011 年 11 月 22 日
* 版 本号: 1.012
* 对任务及求解方法的描述部分
* 输入描述:n的值
* 问题描述:求f(n)=1^3+2^3+…+n^3(在此^表示幂运算,1^3即1的3次方)
* 程序输出:f(n)的值
* 问题分析:首先,可以将f(n)表示为以下的递归式
f(1)=1
f(n)=
* 算法设计:……
运行结果:
实验目的:学会使用函数的递归
实验内容:用递归函数求解表达式
* 程序头部注释开始(为避免提交博文中遇到的问题,将用于表明注释的斜杠删除了)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:
* 作
* 完成日期:
* 版 本号:
* 对任务及求解方法的描述部分
* 输入描述:n的值
* 问题描述:求f(n)=1^3+2^3+…+n^3(在此^表示幂运算,1^3即1的3次方)
* 程序输出:f(n)的值
* 问题分析:首先,可以将f(n)表示为以下的递归式
f(1)=1
f(n)=
* 算法设计:……
* 程序头部的注释结束
#include <iostream>
using namespace std;
int f(int);
int main( )
{
int n, m;
cout << "请输入n的值:";
cin >> n;
m = f(n);
cout << "f(" << n << ")的值为: " << m << endl;
return 0;
}
int f(int n)
{
int sum;
if(n <= 0)
{
cout << "数据错误,重新输入!" << endl;
sum =- 1;
}
else if(n == 1)
{
sum = 1;
}
else
{
sum = f(n - 1) + (n * n * n);
}
return sum;
}
运行结果:
经验积累:
1.递归编写很简单,但要找出问题的递归式,而这个工作要用计算完成。
上机感言:还有锻炼一下,要一下子想出来还不行啊!