C++实验 类和对象——普通数学题计算.doc

C++实验 类和对象——普通数学题计算.doc

ID:55928627

大小:54.50 KB

页数:10页

时间:2020-06-15

C++实验  类和对象——普通数学题计算.doc_第1页
C++实验  类和对象——普通数学题计算.doc_第2页
C++实验  类和对象——普通数学题计算.doc_第3页
C++实验  类和对象——普通数学题计算.doc_第4页
C++实验  类和对象——普通数学题计算.doc_第5页
资源描述:

《C++实验 类和对象——普通数学题计算.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验报告实验九类和对象(1)一、实验目的1.  掌握类的概念、类的定义格式、类与结构的关系、类的成员属性和类的封装性;2. 掌握类对象的定义;3. 理解类的成员的访问控制的含义,公有、私有和保护成员的区别;4. 掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义和重载构造函数。能够根据给定的要求定义类并实现类的成员函数。二、实验内容1.输入以下程序,并写出程序的输出结果。定义一个描述三角形的类Tri,具体要求如下:(1)私有数据成员doublea,b,c:三角形的三边。(2)公有成员函数Tri(doublex,doubley,doublez):构造函数,用x

2、,y,z初始化a,b,c,对指定的对象初始化。doublePeri():求三角形的周长。doubleArea():求三角形的面积。voidShow():输出三角形的各种参数(边长、周长、面积)。(3)在主程序中定义两个三角形对象:三角形tri1,边长分别为3,4,5,三角形tri2,边长分别为5,6,7,用构造函数初始化这两个对象a,然后输出这两个三角形的各种参数。将文件命名为S15_1.cpp。#include#includeclassTri{doublea,b,c;//定义三角形的三边public:Tri(doublex,doubley

3、,doublez)//构造函数,初始化三边{a=x;b=y;c=z;}doublePeri()//返回三角形的周长{return(a+b+c);}doubleArea()//返回三角形的面积{doubles=Peri()/2;doublearea=sqrt(s*(s-a)*(s-b)*(s-c));returnarea;}voidShow()//输出三角形的参数{cout<<"三角形的边长:"<

4、};//三角形类的定义结束,定义了三角形的各种属性和可实施的操作voidmain()//main函数决定了程序运行的过程和顺序{Tritri1(3,4,5),tri2(5,6,7);//定义了两个具体的三角形tri1.Show();//输出这两个三角形的参数tri2.Show();}要求:编译运行程序,程序的输出是。2.根据程序要求,完善程序后输入源程序,编译连接,并写出运行结果。如果某个自然数除了1和它本身外还有其他因子,则这个自然数就是合数(非素数)。试定义一个类NUM,从3开始向上试探找出n个连续的自然数,且它们都是合数。当找到第一组连续n个合数后,即停止查找。具体要求如下

5、:(1)私有数据成员:intn:存放满足条件的连续自然数的个数。int*p:根据n的值申请一个动态数组用来存放求出的满足条件的n个自然数。(2)公有成员函数。NUM(intn1):构造函数,用n1初始化n,根据n的值申请动态数组空间,使p指向该动态数组空间。intyes(intx):判定x是否为合数。如果是,返回1,否则返回0。voidfun():从3开始向上试探找出n个连续的自然数,且它们都是合数,并依次放入动态数组。voidprint():输出满足条件的n个合数。~NUM():析构函数,释放动态数组所占用的存储空间。(3)在主函数中定义一个NUM类的对象num,求出10个连续

6、的合数。然后通过对象num调用成员函数求出10个连续的合数,并输出计算结果。将文件命名为S15_2.cpp。#includeclassNUM{//定义数据类NUMprivate:intn;int*p;public:NUM(intn1)//构造函数,用n1初始化n,并且用p动态开辟n个整数空间,存放符合条件的合数{n=n1;p=newint[n];//连续开辟n个整型空间,将整型空间的首地址赋给p}intyes(intx)//判断x是否为合数,若是返回1,否则返回0{for(inti=2;i<=x/2;i++)//i从2循环到x/2,依次判断x能否整除iif

7、(x%i==0)//若能整除,说明x是合数return1;//直接返回1return0;//循环结束,说明不能整除,不是合数,返回0}voidfun(void)//寻找n个连续的合数{intj;for(inti=3;1;i++)//从3开始向上找,因为未给上限,所以一直循环(循环条件永远满足){j=0;//对连续的合数计数,所以在每次寻找之前清零while(yes(i)==1&&j

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。