第13周报告1:用函数完成分段数学函数的求解
来源:互联网 发布:篮球比赛软件 编辑:程序博客网 时间:2024/05/21 11:30
任务1:编写函数,求解分段函数的值,并设计能够满足路径覆盖的测试用例完成测试。
0 当x<0.3时;
f(x)= (x-0.3)/(0.8-0.3) 当0.3≤x≤0.8时
1 当x>0.8时
实验目的:学会使用函数编程,以及设计比较完备的测试用例完成对小程序的测试
实验内容:用函数完成分段数学函数的求解
/** 程序的版权和版本声明部分* Copyright (c)2011, 烟台大学计算机学院学生* All rightsreserved.* 文件名称: fun.cpp * 作 者: 贺利坚 * 完成日期: 2011 年 11 月 22 日* 版本号: v1.0 * 对任务及求解方法的描述部分* 输入描述:函数自变量x* 问题描述:求函数的值:当x<0.3时,f(x)=0; 当0.3≤x≤0.8时,f(x)=(x-0.3)/(0.8-0.3);当x>0.8时,f(x)=1;* 程序输出:f(x)的值*/ #include<iostream> using namespacestd;const doublex1=0.3, x2=0.8; //定义为全局常变量,方便,易维护doublef(double); //此处加入对自定义函数f的声明 int main( ){ double x; cout<<"请输入x的值:"; cin>>x; cout<<"解得:f("<<x<<")="<<f(x)<<"\n"; return 0;}//下面是自定义函数的定义部分//当x<0.3时,f(x)=0; 当0.3≤x≤0.8时,f(x)=(x-0.3)/(0.8-0.3);当x>0.8时,f(x)=1; double f(doublex){ double result; if(x<x1) result=0; else if (x>x2) result=1; else result = (x-x1)/(x2-x1); return result;}
测试用例设计及测试结果(请程序设计者将?位置上的内容补充完整):
(1) 遵循“判定/条件测试”覆盖原则(设计足够的测试用例,使得判定表达式的每个条件的所有可能取值至少出现一次,并使每个判定表达式所有可能的结果也至少出现一次),我设计了三组测试用例,测试方案及结果如下
序号 程序输入 预期结果 执行结果 结论1 x=0.2 0 0 正确
2 x=0.5 0.4 0.4 正确
3 x=0.9 1 1 正确
(2)判定的边界值是测试的“敏感”区,针对本程序的两个边界值,我设计了下面的两组测试用例,测试方案及结果如下
序号 程序输入 预期结果 执行结果 结论
4 x=0.3 0 0 正确
5 x=0.8 1 1 正确
经验积累:
1. 程序的测试也是技术活,需要考虑各种可能的情况,设计用于测试的输入,将执行结果与预期的结果对比后才能得出结论。程序工作并不是能输出结果(不管对错)就视为完成。
2. 布置题目时,专门选择了以前做过的题目,同学们只要专心写函数而不用多想算法。用心良苦,感动ing
3. 同学们做的不错,几乎全做出来了,并且真的将函数中的几个概念通过这个题搞清楚了。
上机感言:
编程需要积累经验,多练习是硬道理。光喊难,不投入做,有的是喊难的时候,直至“难”字都喊不出来了。
其实,只要实践过了,也就不难了。只要上路,一路顺风,挡都挡不住。
看小宗——[转载]应该如何学习计算机编程【写给计算机专业的同学们】http://blog.sina.com.cn/s/blog_5d1b834f0100wy45.html
- 第13周报告1:用函数完成分段数学函数的求解
- 第13周报告1:用函数完成分段数学函数的求解
- C++第13周报告(一)用函数完成分段数学函数的求解
- 第13周报告1之分段函数的调用及测试用例
- 第14周报告1 用递归函数求解表达式
- C++程序设计实验报告(十三)---用函数完成分段数学函数的求解
- 第13周报告3之函数的嵌套应用
- 第14周报告1--函数的递归
- 第14周报告任务1--函数的递归
- 第14周报告1之函数的递归
- 第14周报告1 学会使用函数的递归
- C++第14周报告(一)用递归函数求解表达式
- 第13周报告1
- 第13周报告1
- 第13周报告1
- 第13周报告1
- 第13周报告1:
- 第13周报告1
- Hibernate关联映射 --- 多对多实例分析
- HDU-1541 树状数组(基础题)
- Error while preforming database login with the sql driver Unable to create...
- ubuntu中文文件名乱码
- 好可惜
- 第13周报告1:用函数完成分段数学函数的求解
- linux 下常用命令
- (转)centos6安装stardict
- uC/OS事件标志组(event flag)
- AS3 元件内访问主时间轴的变量和函数
- 15 第十五章 创建可组合函数库
- 那些优雅的数据结构(1) : BloomFilter——大规模数据处理利器
- 宏定义中Do{...}while(0)的作用
- ald install for ubuntu