13周作业1

本文介绍了一个简单的函数编程案例,该函数根据输入值x返回不同的结果,并详细展示了如何设计测试用例来验证函数的正确性。

 第13周报告1:

实验目的:学会使用函数编程,以及设计比较完备的测试用例完成对小程序

* All rights reserved. 
* 文件名称: 
* 作 者: 苗影 
* 完成日期: 2011 年 11 月 16日 
* 版 本 号: 
* 对任务及求解方法的描述部分 
* 输入描述:函数自变量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( ) 
{ 
double x; 
cout<<"请输入x的值:"; 
cin>>x; 
cout<<"解得:f("<<x<<")="<< f(x)<<"\n";
 return 0; } //下面是自定义函数的定义部分  
#include <iostream>   
using namespace std;
const double x1=0.3, x2=0.8;
 double f(double);     
int main( )
{ 
double x;  
cout<<"请输入x的值:";
 cin>>x; 
cout<<"解得:f("<<x<<")="<< f(x)<<"\n"; 
 return 0;}
 


double f(double)
{double f,a;
if (a>x1)
{f=0;}

 

else if (a>=x2)
{f=1.0;}

 

else
{f=(a-x1)/(x2-x1);}

 

cout<<endl;
return 0;
}



 

测试用例设计及测试结果(请程序设计者将“?”位置上的内容补充完整): (1) 遵循“判定/条件测试”覆盖原则(设计足够的测试用例,使得判定表达式的每个条件的所有可能取值至少出现一次,并使每个判定表达式所有可能的结果也至少出现一次),我设计了三组测试用例,测试方案及结果如下序号 程序输入 预期结果 执行结果 结论1 x=0.2 0 0 正确  x=0.5 0.4    0.4    正确   结论 3       x=1.2       1.0     1.0      正确 (2)判定的边界值是测试的“敏感”区,针对本程序的两个边界值,我设计了下面的两组测试用例,测试方案及结果如下序号 程序输入预期结果 执行结果 结论 4 x=0.3              正确 5 x=0.8         正确

经验积累: 1. 程序的测试也是技术活,需要考虑各种可能的情况,设计用于测试的输入,将执行结果与预期的结果对比后才能得出结论。程序工作并不是能输出结果(不管对错)就视为完成。

要知道啥是自定义,才会做。

3.和从前不定的程序有点不同。

上机感言;

我做的有点慢,要多练习啊!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值