第十三周作业 1.0

来源:互联网 发布:gta5ol捏脸数据合集 编辑:程序博客网 时间:2024/06/05 20:22
 实验目的:学会使用函数编程,以及设计比较完备的测试用例完成对小程序的测试
实验内容:用函数完成分段数学函数的求解

/*
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:第十三周作业-1                             
* 作    者:孙建朋                             
* 完成日期:  2011   年  11   月  16 
* 版 本号:  20111116-1       

* 对任务及求解方法的描述部分
* 输入描述:函数自变量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 namespace std;const double x1=0.3, x2=0.8; //定义为全局常变量,方便,易维护double f(double);     //此处加入对自定义函数f的声明int main( ){int i=3;while(i>0){double x;cout<<"请输入x的值:";cin>>x;cout<<"解得:f("<<x<<")="<< f(x)<<"\n"<<"\n";i--;}return 0;}double f(double x){double y;if(x<0.3)y=0;if(x>0.8)y=1;if(x>=0.3 && x<=0.8)y=(x-0.3)/(0.8-0.3);return y;}

1) 遵循“判定/条件测试”覆盖原则(设计足够的测试用例,使得判定表达式的每个条件的所有可能取值至少出现一次,并使每个判定表达式所有可能的结果也至少出现一次),我设计了三组测试用例,测试方案及结果如下
序号 程序输入  预期结果 执行结果 结论
   x=0.2                   正确
   x=0.5     0.4      0.4      正确

   x=0.9                 正确

(2)判定的边界值是测试的“敏感”区,针对本程序的两个边界值,我设计了下面的两组测试用例,测试方案及结果如下
序号 程序输入   预期结果   执行结果   结论
   x=0.3                      正确
   x=0.8                      正确 

经验积累:
1. 程序的测试也是技术活,需要考虑各种可能的情况,设计用于测试的输入,将执行结果与预期的结果对比后才能得出结论。程序工作并不是能输出结果(不管对错)就视为完成。
2.函数的嵌套调用果然有趣,可是在某些问题上就略显麻烦,因此在以后的编程过程中选择至关重要!

上机感言:有时候一个小小的;也会影响运行结果,程序员的心必需要细啊!