实验9 c++

problem :A 第一个类

 

#include <iostream>
#include <iomanip>
#include <cstring>
#include <cmath>
using namespace std;class Thing
{
private:string name;
public:Thing(){}Thing(string n):name(n) {cout << "" << name << endl;}~Thing(){ cout << "Destroy a thing" << " " << name << endl;}};int main()
{Thing A("Car");string str;cin>>str;Thing B(str);return 0;
}

 problem b:建造一间教室

description:

一间教室包括很多物品。这里只考虑灯(Light)和椅子(Chair)。定义Light类,只有一个int类型的参数,表示灯的瓦数;定义Chair类,只有一个字符串类型的参数,表示椅子的颜色。定义ClassRoom类,包括四个属性:两个int类型的属性,分别为灯的个数和椅子的个数。一个Light类的对象和一个Chair类的对象,分别为教室中灯的种类和椅子的种类。

input:

输入有6行,第1行是一个正整数,表示灯的瓦数。第2行是一个不含空白符的字符串,表示椅子的颜色。第3、4行表示教室中灯的个数和椅子的数量。第5行是一个正整数,表示教室中灯的瓦数,第6行是一个不含空白符的字符串,表示教室中椅子的颜色。

sample input:

20

blue

16

100

25

red

sample output:

代码示例:

 1 #include <iostream>
 2 #include <iomanip>
 3 #include <cstring>
 4 #include <cmath>
 5 using namespace std;
 6 class Light
 7 {
 8 private:
 9     int w;
10 public:
11     Light(){ }
12     Light(int ww):w(ww){ cout << "A " << w << "w light is created." << endl; }
13     ~Light(){ cout << "A " << w << "w light is erased." << endl;}
14     int getw() const { return w; }
15 };
16 class Chair
17 {
18 private:
19     string cl;
20 public:
21     Chair(){ }
22     Chair(string c):cl(c){ cout << "A " << cl << " chair is created." << endl; }
23     ~Chair(){ cout << "A " << cl << " chair is created." << endl;}
24     string getcl() const { return cl; }
25 };
26  
27 class ClassRoom
28 {
29 private:
30     int lnum, cnum;
31      Light lig;
32     Chair cha;
33 public:
34     ClassRoom(){ }
35     ClassRoom(int ln,int cn,int w,string c ): lig(w), cha(c),lnum(ln), cnum(cn)
36     {
37         cout << "A classroom having " << lnum << " lights and " << cnum << " chairs is created." << endl;
38     }
39     ~ClassRoom(){ cout << "A classroom having " << lnum << " lights and " << cnum << " chairs is erased." << endl;}
40 };
41  
42 int main()
43 {
44     int nl, nc;
45     int w;
46     string color;
47     cin>>w>>color;
48     Light light(w);
49     Chair chair(color);
50     cin>>nl>>nc;
51     cin>>w>>color;
52     ClassRoom room(nl, nc, w, color);
53     return 0;
54 }

problem c:  是否回文数?

description :

定义Data类,有一个int类型的属性。定义其构造函数、setValue函数和isPalindrome函数,其中setValue函数用于设置属性值,isPalindrome用于判断该属性值是否为回文数。判断回文数时,不考虑数的符号。

输入:

若干个int类型范围内的整数

输出:

每个输入对应一行输出,如果对应的输入是回文数,则输出Yes,否则输出No。

代码演绎:

 1 #include <iostream>
 2 #include <iomanip>
 3 #include <cstring>
 4 #include <cmath>
 5 using namespace std;
 6 class Data
 7 {
 8 private:
 9     int data;
10 public:
11     Data(int d = 0) : data(d) { }
12     ~Data(){ }
13 public:
14     void setValue(int v) { data = v; }
15     bool isPalindrome() const
16     {
17         int temp;
18         temp = data;
19         if(data < 0 ) temp = -temp;
20         int tt[100];
21         int i = 0;
22         while(temp != 0)
23         {
24           tt[i] = temp % 10;
25           temp /= 10;
26           i++;
27         }
28                 for(int j = 0, k = i-1; j < i;j++,k-- )
29                     if(tt[j] != tt[k])
30                       return false;
31            return true;
32     }
33 };
34 int main()
35 {
36     Data data;
37     int v;
38     while (cin>>v)
39     {
40         data.setValue(v);
41         if (data.isPalindrome())
42             cout<<"Yes"<<endl;
43         else
44             cout<<"No"<<endl;
45     }
46     return 0;
47 }

 

 problem d:Base 与 Derived

description:

定义Base和Derived类,Derived类是Base类的子类,两个类都只有1个int类型的属性。定义它们的构造函数和析构函数,输出信息如样例所示。

input;

输入2个整数。

output:

见样例

代码样例:

 1 #include <iostream>
 2 #include <iomanip>
 3 #include <cstring>
 4 #include <cmath>
 5 using namespace std;
 6 class Base
 7 {
 8 private:
 9     int bs;
10 public:
11     Base(int b = 0):bs(b) { cout << "Base " << bs << " is created." << endl; }
12     ~Base() { cout << "Base " << bs << " is created." << endl;}
13 };
14 class Derived:public Base
15 {
16 private:
17     int de;
18 public:
19     Derived(int x, int y):Base(x),de(y) { cout << "Derived " << de << " is created." << endl; }
20     ~Derived(){ cout << "Derived " << de << " is created." << endl; }
21 };
22 int main()
23 {
24     int a, b;
25     cin>>a>>b;
26     Base base(a);
27     Derived derived(a, b);
28     return 0;
29 }

problem e: 类模板sample

description:

定义类模板Sample,设模板参数为T,则Sample类只有一个T类型的属性。定义其构造函数、拷贝构造函数,输出与样例类似的信息。定义show函数,用于显示属性值(只输出属性值)。定义add函数,将当前对象与Sample类的另一个对象的属性值相加,和仍存入当前对象。

input:

输入2个int类型整数、2个double类型实数。

代码示例:

 1 #include <iostream>
 2 #include <iomanip>
 3 #include <cstring>
 4 #include <cmath>
 5 using namespace std;
 6 template <class T>
 7 class Sample
 8 {
 9 private:
10     T t;
11 public:
12     Sample(T tt) : t(tt){ cout << "Sample " << t << " is created." << endl; }
13     Sample(const Sample & s):t(s.t) { cout << "Sample " << t << " is copied." << endl;}
14     ~Sample() { }
15 public:
16     void show()const{ cout << t << endl; }
17     void add(Sample s){ t += s.t; }
18 };
19  
20  
21 int main()
22 {
23     int a, b;
24     double c, d;
25     cin>>a>>b>>c>>d;
26     Sample<int> s1(a), s2(b), s3(s1);
27     Sample<double> s4(c), s5(d), s6(s5);
28     s1.add(s2);
29     s1.show();
30     s5.add(s4);
31     s5.show();
32     return 0;
33 }

 

转载于:https://www.cnblogs.com/pxxfxxxx/p/10938271.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/569366.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

迭代器协议、斐波那契数列

f1.__iter__iter(f1)  把一个对象变成可迭代对象 __init__  构造函数 for循环遵循迭代器协议&#xff0c;要求对象有next、iter方法&#xff0c;有iter方法&#xff0c;for循环跟着对象对触发对象的方法&#xff08;协议规定&#xff09; 对象内部要有next方法 斐波那契数列…

如何用一个例子彻底解释白盒测试中语句覆盖、判定覆盖、条件覆盖、条件判定覆盖、条件组合覆盖?

白盒测试 白盒测试把测试对象看作一个打开的盒子&#xff0c;测试人员依据程序内部逻辑结构相关信息&#xff0c;设计或选择测试用例&#xff0c;对程序所有逻辑路径进行测试&#xff0c;通过在不同点检查程序的状态&#xff0c;确定实际的状态是否与预期的状态一致。 语句覆…

简易的实现对象内存池

简易的实现对象内存池MemoryNode结构体是保存每一个申请的内存节点&#xff0c;然后构成一个单链表。MemoryNodeList 结构体是保存的是每一块内存&#xff0c;当上一个内存块用完时&#xff0c;再次创建一个内存块。numofMemoryNode&#xff1a;一个内存块的内存节点数量 numof…

Linux关机操作

转载于:https://www.cnblogs.com/hlc-123/p/10958108.html

JAVA:贪吃蛇源代码

嘿嘿 新手来 表现了&#xff01;&#xff01;&#xff01; 2019年结束 游戏截图&#xff1a; 文件布局&#xff1a; 代码分享 用到的一些全局变量 //全局变量 public class Global {public static final int RECT_WIDTH20;//每个小方格的长宽public static final int WIDTH…

AppiumForWin安装

尝试安装Windows版本的Appium参考&#xff1a;http://www.cnblogs.com/fnng/p/4540731.html第一步&#xff1a;安装nodehttps://nodejs.org/en/安装成功后使用&#xff1a;node -v&#xff0c;进行验证第二步&#xff1a;安装Appium下面的方法失败&#xff1a;原因下载不成功&a…

activiti5第一弹-----基本的activiti示例

建立一个普通的javaSE工程&#xff0c;工程的目录结构如下&#xff1a;需要的jar包如下&#xff1a; 在config文件夹下创建log4j.properties用来输入日志&#xff0c;内容如下&#xff1a; log4j.rootLoggerINFO, CA # ConsoleAppender log4j.appender.CAorg.apache.log4j.Cons…

activiti5第三弹-----------脚本任务

首先是流程定义图&#xff1a; 重点关注一下流程节点中 Script Task 节点的 properties中的Main config 这里可以选择不同的脚本语言&#xff0c;由于其他的部怎么会就用javascript来吧。 从图中可以看出只是定义了一个变量x&#xff0c;它的值为 a; 很多人都说这样定义了这个…

activiti5第四弹----serviceTask中的java服务任务

activiti.cfg.xml内容&#xff1a; <?xml version"1.0"?> <beans default-lazy-init"false"xsi:schemaLocation" http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd http://ww…

activiti5第五弹 serviceTask中的webserviceTask 以及 shellTask

web service task是BPMN2.0中的一种任务类型&#xff0c;在activiti5中它并没有专门的标签表示&#xff0c;而是使用了service task 来表示。而且有很多要配置的内容是无法用图形化工具来完成的。要使用web service task&#xff0c;当然要先有web service。所以首先要编写一个…

activiti5第六弹 手动任务、接收任务、邮件任务

手动任务和接收任务几乎不在程序中做什么事情---只是在流程的历史中留下一点痕迹&#xff0c;表明流程是走过某些节点的。。。而且这两个任务是无法用taskservice查询到的 但是接收任务比手动任务多一个功能&#xff0c;就是确认功能。。。 activiti.cfg.xml配置 <?xml v…

手把手教你用原始方式上传项目至GitHub

小编GitHub&#xff1a;https://github.com/ds1889 首先你得注册一个自己的GitHub账号&#xff0c;注册网址&#xff1a;https://github.com/join 有了自己的账号以后&#xff0c;就可以进行登录&#xff0c;开始创建一个新的项目 创建一个新的项目&#xff0c;填写项目名称&am…

office如何快速删除重复数据

1、首先打开如下文档&#xff0c;在A列删除重复日期星期一&#xff0c;星期二&#xff1b; 2、选中编号栏&#xff0c;&#xff21;1-&#xff21;10&#xff0c;如下图: 3、点击数据——删除重复项&#xff1b;如下图红色剪头所指: 4、删除后&#xff0c;重复项就被删除成功。…

SQL中and和or的区别是?

今天有这样得一个需求&#xff0c;如果登陆人是客服的话&#xff0c;会查询订单是’该客服’以及还没有匹配客服的&#xff0c;刚开始想的是直接在sql语句上拼写 or assigned_id is null 的&#xff0c;测试了一下发现这样的话&#xff0c;前面的其他条件都没有用了 这样的话…

Java编程设计---数组Arrays

数组的的定义 数组是存放在连续存储空间的元素集合 数组定义的格式&#xff1a; int[] arrnew int[5]; int&#xff1a;数组元素的数据类型&#xff0c;可以是基本数据类型&#xff0c;也可以是引用 arr&#xff1a;数组名称 5&#xff1a;数组中元素个数 第一步&#xff1a;定…

SpringBoot整合升级Spring Security 报错 【The request was rejected because the URL was not normalized】...

前言 最近LZ给项目框架升级&#xff0c; 从Spring1.x升级到Spring2.x, 在这里就不多赘述两个版本之间的区别以及升级的原因。 关于升级过程中踩的坑&#xff0c;在其他博文中会做比较详细的记录&#xff0c;以便给读者参考&#xff0c;不要掉进同样的坑里。 这里我们讨论一个关…

个人测试作业

作业所属课程&#xff1a;https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2 作业地址&#xff1a;https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/3340 作业目标&#xff1a;测试其他同学项目 姓名&#xff1a;潘云峰201731062423 所…

Activiti5第十一弹,流程监听器与任务监听器

首先创建流程监听器和任务监听器的实体类&#xff0c;个人比较喜欢使用Delegate Expression方式&#xff0c;其他两种方式也可以 流程监听器 package org.mpc.final_activiti;import java.io.Serializable;import org.activiti.engine.delegate.DelegateExecution; import org.…

ASCII码对照表

1、字母转换成ASCII码 1 string str "hello";2 byte[] array new byte[1]; 3 array System.Text.Encoding.ASCII.GetBytes(str); //把str的每个字符转换成ascii码4 5 int asciicode1 (short)(array[0]);//h 的…

平行四边形的特殊性质

定义平行四边形内角平分线围城的四边形为$\lambda$四边形$\lambda$四边形是矩形 $\lambda$四边形的中线为平行四边形中心$\lambda$四边形的对角线和平行四边形的边平行转载于:https://www.cnblogs.com/guoshaoyang/p/11011612.html