A.类的应用1
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 162 (133 users) Total Accepted: 136 (132 users) Special Judge: No
Description
利用面向对象程序设计的方法,通过长方体的长、宽、高求长方体的体积与表面积。
Input
多组测试数据。第一行输入测试数据的组数t(0<t<10);以下t行每行输入长方体的长a、宽b、高c,(0<a,b,c<10,且为int型,a、b、c之间由空格分隔)。
Output
每组输出数据为2个,分别为长方体的体积和表面积,数据之间由空格分隔。
Sample Input
6
7 5 6
4 6 8
5 9 4
1 10 1
5 4 5
10 7 7
Sample Output
214 210
208 192
202 180
42 10
130 100
378 490

code:

#include<iostream>
using namespace std;
class rectangle{
float length;
float width;
float height;
public:
rectangle(){};
rectangle(float l,float w,float h){
length = l;
width = w;
height = h;
}
~rectangle(){};
void setDimension(float l,float w,float h){
length = l;
width = w;
height = h;
}
float getLength(){return length;}
float getWidth(){return width;}
float getHeight(){return height;}
float getVolum(){return length*width*height;}
float getArea(){return *(length*width+length*height+width*height);;}
};
int main(){
int T;
cin>>T;
while(T--){
int a,b,c;
cin>>a>>b>>c;
rectangle myrectangle(a,b,c);
cout<<myrectangle.getArea()<<" "<<myrectangle.getVolum()<<endl;
} return ;
}
B.类的应用2
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 166 (132 users) Total Accepted: 135 (131 users) Special Judge: No
Description
利用面向对象程序设计的方法,通过三角形的三边求三角形的周长。
Input
多组测试数据。第一行输入测试数据的组数t(0<t<10);以下t行每行输入三角形的三边a、b、c,(0<a,b,c<10,且为int型,a、b、c之间由空格分隔)。
Output
每组输出数据为1个。当输入的三边能够构成三角形时,输出周长;当输入的三边不能构成三角形时输出“error”。
Sample Input
2
1 10 1
5 4 5
Sample Output
error
14
#include<iostream>
using namespace std;
class triangle{
int a,b,c;
public:
void set(int a, int b, int c){
this->a = a;
this->b = b;
this->c = c;
}
bool istri(){
return a+b>c && a+c>b && b+c>a;
}
int getl(){
return a+b+c;
} };
int main(){
int a,b,c,N=;
triangle T;
cin>>N;
while(N--){
cin >> a >> b >> c;
T.set(a,b,c);
if(T.istri()){
cout <<T.getl()<< endl;
}else{
cout <<"error"<< endl;
}
}
}
C.类的应用3
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 193 (127 users) Total Accepted: 135 (127 users) Special Judge: No
Description
利用面向对象程序设计的方法解决问题。行走江湖,靠的是脑力和武器。脑瓜灵光,武器平平免不了输给或愚钝但手握屠龙的无名之辈,脑力与武器按照四六比例决定一个人的江湖地位。适逢Apple新店开业,当街擂台比武海选晋级选手赢取Apple X。比武之前要登记选手:选手名(长度不大于10的字符串)、脑力值(不大于100的整数)、武器名(长度不大于10的字符串)、武器攻击力(不大于100的整数)。比武方式:两两一组,对打。
Input
多组测试数据。第一行输入测试数据的组数t(0<t<10);以下2t行每2行输入2名比武者的信息:选手名、脑力值、武器名、武器攻击力,数据之间由空格分隔。
Output
针对每2行选手的输入,输出比武结果。
   当前者打败了后者,会输出:前者名 win 后者名
   当前者输给了后者,会输出:前者名 lost 后者名
   当前者与后者不分胜负,会输出:前者名 tie 后者名
Sample Input
3
Sunwk 100 Jingb 100
Niumw 0 Bajs 100
Tangsz 100 Chanzhang 0
Honghe 80 Huolongqiang 60
ZHUba 60 JCdp 60
SHAwj 30 FTc 80
Sample Output
Sunwk win Niumw
Tangsz lost Honghe
ZHUba tie SHAwj
Hint
Honghe 80 Huolongqiang 60:此人江湖能力为80*0.4+60*0.6=68
#include<iostream>
using namespace std;
class people{
string name;
int wind;
string gun;
int power;
public:
void set(string name,int wind, string gun, int power){
this->name = name;
this->wind = wind;
this->gun = gun;
this->power = power;
}
int getTolPower(){
return wind*0.4+power*0.6;
}
};
int main(){
int t;
cin>>t;
people p1,p2;
while(t--){
string name,name2,gun;
int wind,power;
cin>>name>>wind>>gun>>power;
p1.set(name,wind,gun,power);
cin>>name2>>wind>>gun>>power;
p2.set(name,wind,gun,power);
if(p1.getTolPower()==p2.getTolPower()){
cout<<name <<" tie "<< name2<<endl;
}else if(p1.getTolPower()>p2.getTolPower()){
cout<<name <<" win "<< name2<<endl;
}else{
cout<<name <<" lost "<< name2<<endl;
}
}
}
D.类的应用4
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 160 (127 users) Total Accepted: 128 (127 users) Special Judge: No
Description
利用面向对象程序设计的方法解决问题。
   神魔争斗一直延续着...,是集智慧兵器威力一体(智慧与兵器威力权重比为4:6)的神与仅凭兵器威力的魔的较量。进入新的时代,要举办一场神魔擂台预选赛。现场注册登记,要记录神的名号(长度不大于10的字符串)、神的智慧值(不大于100的整数)、神使用兵器的名字(长度不大于10的字符串)以及威力值(不大于100的整数)。魔要记录魔的名字(长度不大于10的字符串)、魔使用兵器的名字(长度不大于10的字符串)以及威力值(不大于100的整数)。
Input
多组测试数据。第一行输入测试数据的组数t(0<t<10);以下2t行每2行的第一行输入神的名号、神的智慧值、神使用的兵器名字以及威力值,数据之间由空格分隔;第二行输入魔的名字、魔使用的兵器以及威力值,数据之间由空格分隔。
Output
针对每2行神魔比武的输入,输出比武结果。
     当神打败了魔,会输出:神名 win 魔名
     当神败给了魔,会输出:神名 lost 魔名
     当神魔不分胜负,会输出:神名 tie 魔名
Sample Input
3
Tangsz 100 Chanzhang 0
Honghe Huolongqiang 60
Sunwk 100 Jingb 100
Niumw Bajs 100
Zhubj 20 Jiucdp 80
Xiaoy Pud 20
Sample Output
Tangsz lost Honghe
Sunwk tie Niumw
Zhubj win Xiaoy
Hint
Tangsz 100 Chanzhang 0:此神战斗力为100*0.4+0*0.6=40
Honghe Huolongqiang 60:此魔战斗力为60
#include<iostream>
#include<cstdlib>
using namespace std;
class people{
string name;
int wind;
string gun;
int power;
public:
void set(string name,int wind, string gun, int power){
this->name = name;
if(wind!=){
this->wind = wind;
}else{
this->wind = ;
}
this->gun = gun;
this->power = power;
}
int getTolPower(){
if(this->wind==){
return power;
}
return wind*0.4+power*0.6;
}
};
int main(){
int t;
cin>>t;
people p1,p2;
while(t--){
string name,name2,gun;
int wind,power;
cin>>name>>wind>>gun>>power;
p1.set(name,wind,gun,power);
cin>>name2>>gun>>power;
p2.set(name2,,gun,power);
if(p1.getTolPower()==p2.getTolPower()){
cout<<name <<" tie "<< name2<<endl;
}else if(p1.getTolPower()>p2.getTolPower()){
cout<<name <<" win "<< name2<<endl;
}else{
cout<<name <<" lost "<< name2<<endl;
}
}
}
 
E.类的应用5
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 168 (120 users) Total Accepted: 127 (120 users) Special Judge: No
Description

利用面向对象设计方法解决问题。根据主函数main()的内容、输入与输出数据,完成类的设计。
    在平面直角坐标系上建立两点A和B,并按格式输出其坐标。给定A、B两点坐标在x和y方向上的偏移量,再次输出两点的坐标。
    
    在平面直角坐标系上建立线段L,并按格式输出线段两端点的坐标及线段长度。
    在平面直角坐标系上建立线段L1,给定线段两端点在x和y方向上的偏移量从而得到线段的新位置与新的长度,并按格式输出该线段两端点的新坐标及线段长度。

主函数如下:
int main()
{
    int n,x1,x2,y1,y2;
    Point A,B(10,10);
    cout<<"PointA:["<<A.getX()<<","<<A.getY()<<"]\n";
    cout<<"PointB:["<<B.getX()<<","<<B.getY()<<"]\n";
    cin>>x1>>y1;
    A.setP(x1,y1); B.setP(x1,y1);
    cout<<"PointA:["<<A.getX()<<","<<A.getY()<<"]\n";
    cout<<"PointB:["<<B.getX()<<","<<B.getY()<<"]\n";

cin>>x1>>y1>>x2>>y2;
    Line L(x1,y1,x2,y2);
    L.getP();printf("%.2lf\n",L.dis());

Line L1(0,0,1,1);
    cin>>x1>>y1>>x2>>y2;
    L1.setL(x1,y1,x2,y2);
    L1.getP();printf("%.2lf\n",L1.dis());

return 0;

Input
    第一行输入的是:A、B两点坐标在x和y方向上的偏移量,数据以空格分隔。
    第二行输入的是:线段L两端点的坐标x1,y1,x2,y2,数据以空格分隔。    
    第三行输入的是:线段L1两端点在x和y方向上的偏移量,数据以空格分隔。
Output
    第一、二行输出的是点A与点B的坐标(按格式)。
    第三、四行输出的是在平移后的点A与点B的坐标(按格式)。
    第五行输出的是线段L两端点的坐标及长度(按格式)。
    第六行输出的是线段L1在平移后两端点的坐标及长度(按格式)。
Sample Input
5 5
0 0 10 10
1 1 5 5
Sample Output
PointA:[0,0]
PointB:[10,10]
PointA:[5,5]
PointB:[15,15]
(0,0)--(10,10):14.14
(1,1)--(6,6):7.07
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
class Point{
int X,Y;
public:
Point(){
X=;
Y=;
}
Point(int x,int y):X(x),Y(y){}
int getX(){
return X;
}
int getY(){
return Y;
}
void setP(int x,int y){
this->X+=x;
this->Y+=y;
}
};
class Line{
int X1,Y1,X2,Y2;
public:
Line(){
X2=;
Y2=;
}
Line(int x1,int y1,int x2,int y2):X1(x1),Y1(y1),X2(x2),Y2(y2){}
void setL(int x1,int y1,int x2,int y2){
this->X1=x1;
this->Y1=y1;
this->X2+=x2;
this->Y2+=y2;
}
int getP(){
cout<<"("<<X1<<","<<Y1<<")"<<"--"<<"("<<X2<<","<<Y2<<")"<<endl;
}
float dis(){
return sqrt((X2-X1)*(X2-X1)+(Y2-Y1)*(Y2-Y1));
}
};
int main()
{
int n,x1,x2,y1,y2;
Point A,B(,);
cout<<"PointA:["<<A.getX()<<","<<A.getY()<<"]\n";
cout<<"PointB:["<<B.getX()<<","<<B.getY()<<"]\n";
cin>>x1>>y1;
A.setP(x1,y1); B.setP(x1,y1);
cout<<"PointA:["<<A.getX()<<","<<A.getY()<<"]\n";
cout<<"PointB:["<<B.getX()<<","<<B.getY()<<"]\n"; cin>>x1>>y1>>x2>>y2;
Line L(x1,y1,x2,y2);
L.getP();printf("%.2lf\n",L.dis()); Line L1(,,,);
cin>>x1>>y1>>x2>>y2;
L1.setL(x1,y1,x2,y2);
L1.getP();printf("%.2lf\n",L1.dis()); return ;
}

网络工程18级《C++程序设计II》实践作业1的更多相关文章

  1. 复旦大学2018--2019学年第二学期(18级)高等代数II期末考试第六大题解答

    六.(本题10分)  设 $A$ 为 $n$ 阶实对称阵, 证明: $A$ 有 $n$ 个不同的特征值当且仅当对 $A$ 的任一特征值 $\lambda_0$ 及对应的特征向量 $\alpha$, 矩 ...

  2. 复旦高等代数II(18级)每周一题

    本学期将继续进行高等代数每周一题的活动.计划从第一教学周开始,到第十五教学周结束,每周的周末公布一道思考题(预计15道),供大家思考和解答.每周一题将通过“高等代数官方博客”(以博文的形式)和“高等代 ...

  3. 2019年春季学期《C语言程序设计II》助教注意事项

    本学期<C语言程序设计II>课程安排 理论课时24(1-12周),实验课时8(13周),课程设计课时16(14-15周) 理论课教学内容 附:教学进度表 本学期实验课和课程设计参考教材 & ...

  4. 【云+社区极客说】新一代大数据技术:构建PB级云端数仓实践

    本文来自腾讯云技术沙龙,本次沙龙主题为构建PB级云端数仓实践 在现代社会中,随着4G和光纤网络的普及.智能终端更清晰的摄像头和更灵敏的传感器.物联网设备入网等等而产生的数据,导致了PB级储存的需求加大 ...

  5. 20145236《网络对抗》Exp2 后门原理与实践

    20145236<网络对抗>Exp2 后门原理与实践 目录: 一.基础问题回答 二.常用后门工具实践 2.1 Windows获得Linux Shell 2.2 Linux获得Windows ...

  6. 20155232《网络对抗》Exp2 后门原理与实践

    20155232<网络对抗>Exp2 后门原理与实践 问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? 通过网页上弹出来的软件自动安装 2.例举你知道的后门如何启动起来(wi ...

  7. 20155317王新玮《网络对抗》Exp2 后门原理与实践

    20155317王新玮<网络对抗>Exp2 后门原理与实践 一.实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划 ...

  8. 20145317彭垚《网络对抗》Exp2 后门原理与实践

    20145317彭垚<网络对抗>Exp2 后门原理与实践 基础问题回答 例举你能想到的一个后门进入到你系统中的可能方式? 在网上下载软件的时候,后门很有可能被捆绑在下载的软件当中: 例举你 ...

  9. 软件架构自学笔记-- 转载“虎牙在全球 DNS 秒级生效上的实践”

    虎牙在全球 DNS 秒级生效上的实践 这次分享的是全球 DNS 秒级生效在虎牙的实践,以及由此产生的一些思考,整体上,分为以下 5 各部分: 背景介绍: 方案设计和对比: 高可用: 具体实践和落地: ...

随机推荐

  1. xcode 编译错误找不到 libz.dylib

    图片对应的是libxml2.dylib  (libz.dylib 遇到的编译错误跟这个类似) 解决方法是在引入库的地方调整原先 比如libz.dylib 的目录: ================== ...

  2. Hbase表重命名 表改名

    PS:现在我有个表 :test11_new  ,我要给他改名 开始: 1.先disable掉表hbase(main):023:0> disable 'test11_new' 0 row(s) i ...

  3. Hadoop运行程序不报错只有warn也没反应也不输出结果的解决办法

    log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFact ...

  4. [poj3348]Cows

    题目大意:求凸包面积. 解题关键:模板题,叉积求面积. 这里的cmp函数需要调试一下,虽然也对,与普通的思考方式不同. #include<cstdio> #include<cstri ...

  5. 蓝桥杯【入门训练】 Fibonacci数列

    问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少. 输入格式 输入包含一个整数n ...

  6. 简单的jQuery前端验证码校验

    简单的jQuery前端验证码校验2 html; <!DOCTYPE html> <html lang="zh-cn"> <head> <m ...

  7. keystone组件

    引:  什么是keystone    为何要有keystone     keystone的功能     keystone概念详解     keystone与openstack其他组件关系      k ...

  8. Luogu 4001 [BJOI2006]狼抓兔子

    BZOJ 1001…… 并不会这个trick,所以笔记要详细一点. 前置知识 : 平面图转对偶图    传送门 听说直接$Dinic$就好了,还跑得比正解快…… 首先我们按照平面图的定义,把网格图中所 ...

  9. SDUT 2142 数据结构实验之图论二:基于邻接表的广度优先搜索遍历

    数据结构实验之图论二:基于邻接表的广度优先搜索遍历 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Descript ...

  10. HUST高级软件工程--测试管理工具实践--Day2

    测试管理工具实践--Day2 今天完成任务情况: 小靳 今天主要探索如何安装jira.在官网下载了最新版Windows64位jira,然后按照网上教程走,设置好端口号.在安装之前自以为这款软件在安装的 ...