利用类实现阶梯型电阻电路计算的实验报告
一、实验题目
利用类实现阶梯型电阻电路计算
二、实验目的
利用类改造试验三种构造的计算程序,实现类的封装。通过这种改造理解类实现数据和功能封装的作用,掌握类的设计与编程。
三、实验原理
程序要求用户输入的电势差和电阻总数,并且验证数据的有效性:电势差必须大于0,电阻总数必须大于0小于等于100的偶数。再要求用户输入每个电阻的电阻值,并且验证电阻值的有效性:必须大于零。此功能是由类CLadderNetwork的InputParameter ()函数实现的。
且该函数对输入的数据进行临界判断,若所输入数据不满足要求,要重新输入,直到满足要求为止。
本实验构造了两个类,一个CResistance类,封装了电阻的属性和操作,和一个CLadderNetwork类,封装了阶梯型电阻电路的属性和操作。
用户输入的'电势差、电阻总数、电阻值,并赋给CladderNetwork的数据,此功能是由类CLadderNetwork的InputParameter 函数实现的。
输出用户输入的电势差、电阻总数、电阻值,以便检查,,此功能是由类CLadderNetwork的PrintEveryPart()函数实现的。
根据用户输入的电势差、电阻总数、电阻值换算出每个电阻上的电压和电流。此功能是由类CLadderNetwork的Calculate ()函数实现的。
最后输出每个电阻上的电压和电流,此功能是由类CLadderNetwork的PrintResult()函数实现的。
此程序很好的体现了面向对象编程的技术:
封装性:类的方法和属性都集成在了对象当中。
继承性:可以继承使用已经封装好的类,也可以直接引用。
多态性:本实验未使用到多态性。
安全性:对重要数据不能直接操作,保证数据的安全性。
以下是各个类的说明:
class CResistance //电阻类
private:
double voltage;
double resistance;
double current;
public:
void InitParameter(); //初始化数据
void SetResist(double r); //设置resistance的值
void SetCur(double cur); //设置current的值
void SetVol(double vol); //设置voltage的值
void CalculateCurrent(); //由电阻的电压和电阻求电流
double GetResist(){return resistance;} //获得resistance的值 保证数据的安全性
double GetCur(){return current;} //获得current的值
double GetVol(){return voltage;} //获得voltage的值
class CResistance //电阻类{
private:
CResistance resists[MAX_NUM]; //电阻数组
int num;
double srcPotential;
public:
void InitParameter(); //初始化数据
void InputParameter(); //输入数据
void Calculate(); //计算
void PrintEveryPart(); //显示输入的数据以便检查
void PrintResult(); //显示结果
四、实验结果
程序开始界面:
错误输入 -1(不能小于0)
错误输入0 (不能为0)
输入正确数据3
输入错误数据-1
输入错误数据0
输入正确数据4
同样给电阻输入数据也必须是正数 现在一次输入 2,2,1,1
得到正确结果。
-
电路安装合同通用5篇
在人民愈发重视法律的社会中,合同的用途越来越广泛,签订合同可以明确双方当事人的权利和义务。那么常见的合同书是什么样的呢?下面是小编为大家整理的电路安装合同,希望能够帮助到大家。电路安装合同1甲方:(以下简称甲方)______________乙方:(以下简称乙方)_________...
-
电路实验心得体会(热门)
我们在一些事情上受到启发后,不妨将其写成一篇心得体会,让自己铭记于心,这样我们可以养成良好的总结方法。应该怎么写才合适呢?以下是小编帮大家整理的电路实验心得体会,欢迎阅读与收藏。电路实验心得体会1时间过得很快,转眼间一学期过去了,模拟电路实验这门课也接近...
-
电流和电路教学反思精选11篇
作为一名人民教师,教学是重要的任务之一,通过教学反思能很快的发现自己的讲课缺点,那么应当如何写教学反思呢?下面是小编为大家整理的电流和电路教学反思,仅供参考,大家一起来看看吧。电流和电路教学反思1这个月听了一些专家的讲座,专家们的理论加实践,让我深深地觉得...
-
简单电路教学反思12篇
身为一位到岗不久的教师,教学是我们的工作之一,教学的心得体会可以总结在教学反思中,那么写教学反思需要注意哪些问题呢?下面是小编帮大家整理的简单电路教学反思,仅供参考,希望能够帮助到大家。简单电路教学反思1这节课主要目的是:1、认识几种电路中常用的元件,2、知...