类和对象相关题
文章目录
- 1. 求1+2+3+...+n
- 2. 计算是这一年的第几天
- 3. 求两个日期之间的天数
- 4. 算出第n天是几月几号
- 5. 计算一个日期加上若干天后是什么日期
1. 求1+2+3+…+n
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
数据范围: 0 < n <= 200
class func{
public:static int i;static int sum;func(){sum+=i;++i;}
};int func::i = 1;
int func::sum = 0;class Solution {
public:int Sum_Solution(int n) {func* p = new func[n];return func::sum;}
};
2. 计算是这一年的第几天
根据输入的日期,计算是这一年的第几天。
保证年份为4位数且日期合法。
#include <iostream>
using namespace std;class Date{
public:int year;int month;int day;Date(){};// 声明友元friend istream& operator>>(istream& in, Date& d);// 判断闰年bool isLeapYear(int year) const{return((year % 4 == 0 && year % 100 != 0) || year % 400 == 0);}// 获得日期int Getday(int year, int month) const{static const int Getdays[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};if(month == 2 && isLeapYear(year))return 29;return Getdays[month - 1];}// 计算是这一年的第几天int my_sum(int year, int month, int day) const{int sum = 0;for(int i = 1;i < month; ++i){sum += Getday(year, i); }sum += day;return sum;}
};// >> 操作符重载
istream& operator>>(istream& in, Date& d){in >> d.year >> d.month >> d.day;return in;
}int main()
{Date d;while(cin >> d){cout << d.my_sum(d.year, d.month, d.day) << endl;}return 0;
}
3. 求两个日期之间的天数
有两个日期,求两个日期之间的天数,如果两个日期是连续的我们规定他们之间的天数为两天
#include <bits/stdc++.h>
using namespace std;
int day[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int leap(int year){if((year%4==0 && year%100!=0) || year%400==0) return 1;return 0;
}int main(){int day1,day2,mon1,mon2,year1,year2;scanf("%4d%2d%2d",&year1,&mon1,&day1);scanf("%4d%2d%2d",&year2,&mon2,&day2);int sum1=0,sum2=0;for(int yy=0;yy<year1;yy++){if(leap(yy)) sum1+=366;else sum1+=365;} if(leap(year1)) day[2]=29;else day[2]=28;for(int mm=1;mm<mon1;mm++){sum1+=day[mm];}sum1+=day1;for(int yy=0;yy<year2;yy++){if(leap(yy)) sum2+=366;else sum2+=365;} if(leap(year2)) day[2]=29;else day[2]=28;for(int mm=1;mm<mon2;mm++){sum2+=day[mm];}sum2+=day2;cout<<abs(sum1-sum2)+1<<endl;return 0;
}
4. 算出第n天是几月几号
给出年分m和一年中的第n天,算出第n天是几月几号。
#include <iostream>
using namespace std;class Date {public:// 判断是否为闰年bool isLeapYear(int year) const {if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)return true;return false;}// 获取某年某月的天数int GetMonthDay(int year, int month) const {static const int GetMonthDay[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };if (month == 2 && isLeapYear(year))return 29;return GetMonthDay[month - 1];}// 构造函数Date(int year, int x) {this->year = year;if (x <= 31) {month = 1;day = x;} else {x -= 31;month = 2;for (int i = 2; x > GetMonthDay(year, i); ++i) {++month;x -= GetMonthDay(year, i);}day = x;} }private:int year;int month;int day;friend ostream& operator<<(ostream& out, const Date& d);
};// << 运算符重载
ostream& operator<<(ostream& out, const Date& d) {if (d.month < 10 &&d.day < 10) out << d.year << "-0" << d.month << "-0" << d.day << endl;else if (d.month < 10) out << d.year << "-0" << d.month << "-" << d.day <<endl;else if (d.day < 10) out << d.year << "-" << d.month << "-0" << d.day << endl;else out << d.year << "-" << d.month << "-" << d.day << endl;return out;
}int main() {int year, x;while (cin >> year >> x){Date d(year, x);cout << d;}return 0;
}
5. 计算一个日期加上若干天后是什么日期
设计一个程序能计算一个日期加上若干天后是什么日期。
#include <iostream>
using namespace std;class Date {
public:// 判断是否为闰年bool isLeapYear(int year) const {if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)return true;return false;}// 获取某年某月的天数int GetMonthDay(int year, int month) const {static const int GetMonthDay[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };if (month == 2 && isLeapYear(year))return 29;return GetMonthDay[month - 1];}// 日期天数递增一天void incrementDate() {++day;if (day > GetMonthDay(year, month)) {day = 1;++month;if (month > 12) {month = 1;++year;}}}// 后置++运算符重载Date& operator++(){Date tmp = *this;incrementDate();return *this;}Date(int year, int month, int day): year(year), month(month), day(day) {}private:int year;int month;int day;friend ostream& operator<<(ostream& out, const Date& d);
};// << 运算符重载
ostream& operator<<(ostream& out, const Date& d) {if (d.month < 10 && d.day < 10) out << d.year << "-0" << d.month << "-0" << d.day << endl;else if (d.month < 10) out << d.year << "-0" << d.month << "-" << d.day <<endl;else if (d.day < 10) out << d.year << "-" << d.month << "-0" << d.day << endl;else out << d.year << "-" << d.month << "-" << d.day << endl;return out;
}int main() {int n;int y, m, d, x;cin >> n;for (int i = 0; i < n; ++i) {cin >> y >> m >> d >> x;Date d1(y, m, d);while(x--){++d1;}cout << d1;}return 0;
}
相关文章:
类和对象相关题
文章目录 1. 求123...n2. 计算是这一年的第几天3. 求两个日期之间的天数4. 算出第n天是几月几号5. 计算一个日期加上若干天后是什么日期 1. 求123…n 求123…n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C&a…...
Word大珩助手:超大数字怎么读?35位数字?69位数字?
俄罗斯日前对谷歌开出了20000000000000000000000000000000000(35位数字)美元的罚款 这一数字远超全球GDP总和,消息一出很快就登上热搜。 面对这样一个庞大的数字,人们不禁好奇,这样的数字该如何读出来? …...
阿里云k8s-master部署CNI网络插件遇到的问题
问题 按照网络上的部署方法 cd /opt/k8s # 下载 calico-kube-controllers配置文件,可能会网络超时 curl https://docs.projectcalico.org/manifests/calico.yaml -O kubectl apply -f calico.yaml 试了很多次都不行,k8s-master都是Not ready的状态 ca…...
【LwIP源码学习4】主线程tcpip_thread
前言 本文对lwip的主要线程tcpip_thread进行分析。 正文 tcpip_thread是lwip最主要的线程,其创建在tcpip_init函数中 sys_thread_new(TCPIP_THREAD_NAME, tcpip_thread, NULL, TCPIP_THREAD_STACKSIZE, TCPIP_THREAD_PRIO);tcpip_init函数被TCPIP_Init函数调用。…...
求猫用宠物空气净化器推荐,有没有吸毛强、噪音小的产品
自从成为铲屎官,真的和当妈没有区别了。家里的毛孩子成天掉毛,我就跟在它屁股后面默默收拾,一举一动都要时刻关注。最近换季,家里还多了不少浮毛,全飘在空气中,阳光照射下非常明显。 我妈看到后各种吐槽&a…...
pycharm中python控制台出现CommandNotFoundError: No command ‘conda run‘.
1、错误现象 pycharm中打开python控制台出现CommandNotFoundError: No command conda run.的错误。 2、背景 conda是4.6版本,在Anaconda Prompt可以正常运行虚拟环境。 3、解决方法 更新conda版本,基本命令,会自动更新到最新版本。 con…...
架构师备考-架构基本概念
目录 基本概念 架构设计与生命周期 需求分析 设计阶段 实现阶段 构件组装阶段 部署阶段 后开发阶段 动态软件体系结构 体系结构恢复与重建 软件架构设计的重要性 基本概念 软件架构(Software Architecture)设计主要关注软件构件的结构、属性和…...
信奥赛C++知识点
参加信息学奥林匹克竞赛(信奥赛)所需学习的C知识点,以下是一个详细的知识点列表: 一、C语言基础 程序结构 头文件:包含必要的头文件,如<iostream>用于输入输出。 命名空间:使用using …...
高并发内存池扩展 -- 处理大内存,优化释放时需要传入空间大小,加入定长内存池,存放映射关系的容器的锁机制,优化性能(基数树,优势,优化前后对比)
目录 高并发内存池 扩展 测试 大内存 介绍 代码 优化释放时需要传入空间大小 介绍 赋值 代码 加入定长内存池 引入 介绍 代码 存放映射关系的容器 锁机制 写入 读取 优化性能 引入 基数树 单级基数树 两级基数树 三级基数树 优势 引入代码 优化前后…...
Composite(组合)
1)意图 将对象组合成树型结构以表示“部分-整体”的层次结构。Composite 使得用户对单个对象和组合对象的使用具有一致性。 2)结构 组合模式的结构如图 7-33 所示。 其中: Component 为组合中的对象声明接口;在适当情况下实现所有类共有接口的默认行为;声明一个接口用于访问…...
有Bootloader,为什么还要BROM?
有Bootloader,为什么还要BROM? 不少硬件平台都提供类似Boot ROM或者PBL(高通平台)固化的一段程序,出厂后用户一定不能修改。BROM可以引导Bootloader程序。大家知道,每个可启动的平台都会在存储设备,例如EMMC/NAND/UFS保存Bootloa…...
【MATLAB代码】CV和CA模型组成的IMM(滤波方式为UKF),可复制粘贴源代码
该MATLAB代码实现了基于无迹卡尔曼滤波器(UKF)的交互式多模型(IMM)滤波算法,旨在跟踪目标在不同运动模式(匀速直线运动CV和匀速圆周运动CT)的位置和速度。订阅专栏后,直接复制粘贴代码到MATLAB空脚本中,即可运行 文章目录 运行结果源代码程序介绍1. 初始化和参数设定2…...
【网络】传输层协议TCP(下)
目录 四次挥手状态变化 流量控制 PSH标记位 URG标记位 滑动窗口 快重传 拥塞控制 延迟应答 mtu TCP异常情况 四次挥手状态变化 之前我们讲了四次挥手的具体过程以及为什么要进行四次挥手,下面是四次挥手的状态变化 那么我们下面可以来验证一下CLOSE_WAIT这…...
服务器数据恢复—EVA存储故障导致上层应用不可用的数据恢复案例
服务器存储数据恢复环境: 一台EVA某型号控制器EVA扩展柜FC磁盘。 服务器存储故障&检测: 磁盘故障导致该EVA存储中LUN不可用,导致上层应用无法正常使用。 服务器存储数据恢复过程: 1、将所有磁盘做好标记后从扩展柜中取出。硬…...
支持向量机相关证明 解的稀疏性
主要涉及拉格朗日乘子法,对偶问题求解...
静态ip和动态ip适合什么场景
静态住宅ip由于他的ip位置保持不变的,更加适合: 1、账号管理。 使用静态住宅来注册和管理社交媒体账号,例如facebook、领英等,包括电商类的账号也是可以的,例如亚马逊等 2、网站测试 很多网站会检测使用者是否为机器…...
Istio Gateway发布服务
1. Istio Gateway发布服务 在集群中部署一个 tomcat 应用程序。然后将部署一个 Gateway 资源和一个与 Gateway 绑定的 VirtualService,以便在外部 IP 地址上公开该应用程序。 1.1 部署 Gateway 资源 vim ingressgateway.yaml --- apiVersion: networking.istio.…...
前端vue3若依框架pnpm run dev启动报错
今天前端vue3若依框架pnpm run dev启动报错信息: > ruoyi3.8.8 dev D:\AYunShe\2024-11-6【无锡出门证】\wuxi-exit-permit-web > vite error when starting dev server: Error: listen EACCES: permission denied 0.0.0.0:80 at Server.setupListenHand…...
python线条爱心
效果图 代码 import math from turtle import * def hearta(k):return 15*math.sin(k)**3 def heartb(k):return 12*math.cos(k)-5*\math.cos(2*k)-2*\math.cos(3*k)-\math.cos(4*k) speed(1000) bgcolor("black") for i in range(6000):goto(hearta(i)*20,heartb(…...
GPU的内存是什么?
GPU(图形处理器)的内存是指专门用于 GPU 存储数据的内存,也被称为显存。 一、显存的作用: 1、存储图像数据 当计算机要显示图像时,显存会存储屏幕上每个像素点的颜色、亮度等信息。例如,对于一个分辨率为 1…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
cf2117E
原题链接:https://codeforces.com/contest/2117/problem/E 题目背景: 给定两个数组a,b,可以执行多次以下操作:选择 i (1 < i < n - 1),并设置 或,也可以在执行上述操作前执行一次删除任意 和 。求…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
计算机基础知识解析:从应用到架构的全面拆解
目录 前言 1、 计算机的应用领域:无处不在的数字助手 2、 计算机的进化史:从算盘到量子计算 3、计算机的分类:不止 “台式机和笔记本” 4、计算机的组件:硬件与软件的协同 4.1 硬件:五大核心部件 4.2 软件&#…...
Pydantic + Function Calling的结合
1、Pydantic Pydantic 是一个 Python 库,用于数据验证和设置管理,通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发(如 FastAPI)、配置管理和数据解析,核心功能包括: 数据验证:通过…...
【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)
旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据!该数据集源自2025年4月发表于《地理学报》的论文成果…...
门静脉高压——表现
一、门静脉高压表现 00:01 1. 门静脉构成 00:13 组成结构:由肠系膜上静脉和脾静脉汇合构成,是肝脏血液供应的主要来源。淤血后果:门静脉淤血会同时导致脾静脉和肠系膜上静脉淤血,引发后续系列症状。 2. 脾大和脾功能亢进 00:46 …...
