首页 > 其他分享 >pta实验报告2

pta实验报告2

时间:2023-05-04 21:56:07浏览次数:36  
标签:count return int cin pta else break 实验报告

模板与类(对象数组)

#include<bits/stdc++.h>
using namespace std;
template<class T>
T maxn(T x[],int len)
{
int i=1;
T max=x[0];
for(i;i<len;i++)
{
if(max<x[i])
max=x[i];
}
return max;
}
class Date{
private:
int year=0,month=0,day=0;
public:
Date(){};
void dateset(int a,int b,int c){
year=a;
month=b;
day=c;
}
bool operator<(Date a)
{
if(year*365+month*30+day<a.year*365+a.month*30+a.day)
return 1;
else
return 0;
}
int y(){ return year;
}
int m(){ return month;
}
int d(){ return day;
}
};
class Time{
private:
int hh=0,mm=0,ss=0;
public:
Time(){};
void timeset(int a,int b,int c){
hh=a;
mm=b;
ss=c;
}
int h(){return hh;
};
int m(){return mm;
};
int s(){return ss;
}
bool operator<(Time a)
{
if(hh*3600+mm*60+ss<a.hh*3600+a.mm*60+a.ss)
return 1;
else
return 0;
}
};
int main()
{
int flag;
int intArray[100];
double douArray[100];
Time timeArray[100];
Date dateArray[100];
while(1)
{ cin>>flag;
if(flag==-1)
break;
else
{
switch(flag)
{
case 1:{
int count=0;
for(int i=0;i<100;i++)
{
cin>>intArray[i];
if(intArray[i]==0)
break;
else
count++;
}
cout<<maxn(intArray,count)<<endl;
break;
};
case 2:{
int count=0;
for(int i=0;i<100;i++)
{
cin>>douArray[i];
if(douArray[i]==0)
break;
else
count++;
}
cout<<maxn(douArray,count)<<endl;
break;
};
case 3:{
int h,m,s,count=0;
while(cin>>h)
{
if(h==0)
break;
else
{
cin>>m>>s;
timeArray[count].timeset(h,m,s);
count++;
}
}
cout<<maxn(timeArray,count).h()<<" "<<maxn(timeArray,count).m()<<" "<<maxn(timeArray,count).s()<<endl;
break;
};
case 4:{
int y,m,d;
int count=0;
while(cin>>y)
{
if(y==0)
break;
else
{
cin>>m>>d;
dateArray[count].dateset(y,m,d);
count++;
}
}
cout<<maxn(dateArray,count).y()<<" "<<maxn(dateArray,count).m()<<" "<<maxn(dateArray,count).d()<<endl;
break;
}
}
}
}
return 0;
}

 

 

 

 

标签:count,return,int,cin,pta,else,break,实验报告
From: https://www.cnblogs.com/djcf/p/17372657.html

相关文章

  • pta实验报告
    实验一:复数类及函数模板(switch语句)#include<bits/stdc++.h>usingnamespacestd;classComplex{private: inta,b; public: Complex(int_a,int_b):a(_a),b(_b){}; doubleoperator-(Complexn) { returnsqrt((a-n.a)*(a-n.a)+(b-n.b)*(b-n.b)); } ~Complex(){};......
  • C++/PTA 函数重载(数据类型不同)
    题目要求用同一个函数名对n(n<=10)个数据进行从小到大排序,数据类型可以是整数、浮点数,用函数重载实现。输入格式:输入n例如3输入n个整数,例如1089输入n个浮点数例如10.235.167.99输出格式:输出n个整数的升序排列:8910以空格间隔,并以空格结尾换行,输出n个浮点数的升......
  • 迁移学习(VMT)《Virtual Mixup Training for Unsupervised Domain Adaptation》
    论文信息论文标题:VirtualMixupTrainingforUnsupervisedDomainAdaptation论文作者:TakeruMiyato,S.Maeda,MasanoriKoyama,S.Ishii论文来源:2019CVPR论文地址:download 论文代码:download视屏讲解:click   ......
  • PTA题目集4~6总结Blog
    1.4~6题目集的大体总结第四次题目集的整体难度还是比较低的,第一题难度最大,放在后面说。第2,3题则涉及对重复数字的处理问题,本意是想要用双重循环解决问题结果运行超时,这也是我第一次学习hash表来解决问题,第4题则需相对更复杂一点,不仅需要对单词进行切割还要按指定规则进行排序,其......
  • PTA 4 - 6 总结
    1、前言这是第二次作业的博客总结,这次主要是在上次作业的基础上加大了难度,考验了我们写代码和自主学习的能力。    04:这次题目集主要学习了:使用LinkedHashSet删除arraylist中的重复数据,封装,了解Scanner类中nextLine()等方法、String类中split()等方法、Integer类中parse......
  • OOP PTA题目集4-6总结
    一、前言距离第一次做题目集总结已经过去了一个月,在这一个月里,我通过写题目又学到了许多新的知识。这一次题目集的难度比上一次的要难,考察的知识更多,也很考察设计能力与逻辑思维能力。题目集4总共7道题,题量适中,除了第一题外难度也适中。考察的内容主要有基础的语法、算法,还有......
  • PTA OOP训练集4-6总结
     一、前言二、设计与分析三、踩坑心得四、改进建议五、总结 南昌航空大学软件学院2201108郭海涛一、前言    OOP4-6次题目集,较前三次,知识点覆盖的范围更加广,难度也骤然上升,尤其是第六次题目集,从第三题开始就没有类图了,需要我们自行根据题目的需求和输入输出来设......
  • PTA实验4~6分析及总结
    1.前言   这是我们第二次的pta作业总结,这次主要是在上次作业的基础上加大了难度,考验了我们的编写代码能力和自主学习能力,考察了我们正则表达式训练,有参无参构造方法,(面对对象编程)(封装性)私有属性的表示和get,set方法的运用,了解Scanner类中nextLine()等方法、String类中split()......
  • PTA 4-6次总结
    (1)前言:04:这次题目集主要学习了:使用LinkedHashSet删除arraylist中的重复数据,封装,了解Scanner类中nextLine()等方法、String类中split()等方法、Integer类中parseInt()等方法的用法,了解LocalDate类中of()、isAfter()、isBefore()、until()等方法的使用规则,了解ChronoUnit类中DAY......
  • PTA实验4~6总结及分析
    1.前言  不知不觉一个月又过去了,也再次完成了三次pta上面的作业,总的来说,这几次pta实验在题量上比之前少了很多,但相对的,难度有了很多提升,其中第六次实验我更是连及格分都没有拿到。接下来我会对这几次实验进行分析,这几次实验涵盖了正则表达式、封装性。还有菜单和日期类程序,总......