int g_nCheckYear = 1901;     //校验年份
int g_nCheckMonth = 0;       //校验月份
int g_nCheckDay = 0;         //校验日
int g_nCheckHour = 0;        //校验时
int g_nCheckMinute;          //校验分
int g_nEndYear = 0;          //截止年份
int g_nEndMonth = 0;         //截止月份
int g_nEndDay = 0;           //截止日
int g_nEndHour = 0;          //截止时
int g_nEndMinute = 0;        //截止分

2、全局函数

//判断是否是闰年
bool isLeap(int y)
    if((y % 4 == 0) && (y % 100 != 0))      //是闰年
        return true;
    else if(y % 400 == 0)                   //是闰年
        return true;
    else                                    //不是闰年
        return false;
//判断 y年m月 共有的天数
int daysOfMonth(int y,int m)
    int days[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    if(m != 2)
        return days[m-1];
        return 28 + isLeap(y);

3、计算截止日期

bool calEndTime(int nUseDays)
	if(nUseDays <= 0)
		return false;
	//【1】获取系统当前时间
	QDateTime local(QDateTime::currentDateTime());
	//【2】校验日期初始化为系统当前时间
	g_nCheckYear = local.toString("yyyy").toInt();
	g_nCheckMonth = local.toString("MM").toInt();
	g_nCheckDay = local.toString("dd").toInt();
	g_nCheckHour = local.toString("hh").toInt();
	g_nCheckMinute = local.toString("mm").toInt();
	//【3】计算截止日期
	//剩余时间
	int tempSurplusTime = nUseDays;
	//初始化 截止年、日、时、分 为 当前时间
	g_nEndYear = g_nCheckYear;
	g_nEndDay = g_nCheckDay;
	g_nEndHour = g_nCheckHour;
	g_nEndMinute = g_nCheckMinute;
	//创建临时变量 当前月、下个月,初始化为当前日期的月
	int tempCurrMonth = g_nCheckMonth;
	int tempNextMonth = g_nCheckMonth;
	//计算当前月共有多少天
	int tempDaysOfMonth = daysOfMonth(g_nEndYear, tempCurrMonth);
	//判断 剩余时间 是否可以将当前月剩余天数补全
	if(tempSurplusTime > (tempDaysOfMonth - g_nEndDay)) //如果可以将当前月剩余天数补全 且 有剩余
		tempSurplusTime = tempSurplusTime - (tempDaysOfMonth - g_nEndDay);
		//判断当前月是否是 12月
		if(tempCurrMonth < 12)  //不是
			tempNextMonth += 1;
		else                    //是
			tempNextMonth = 1;
			g_nEndYear += 1;     //年份 加1
		//截止日 临时设置为 当前月 月底
		g_nEndDay = tempDaysOfMonth;
	else   //如果剩余时间 刚好可以将当前月剩余天数补全 或者不能将当前月剩余天数补全
		g_nEndDay += tempSurplusTime;       //截止日 就是tempSurplusTime 之后的那天
		g_nEndYear = g_nCheckYear;
		g_nEndMonth = g_nCheckMonth;
		// 结束操作
		return true;
	//连续计算下个月的天数,用剩余时间 与它比较
	while(true)
		//计算下个月共有多少天
		int tempDaysOfMonth = dateManage.daysOfMonth(g_nEndYear, tempNextMonth);
		//判断下个月是否是 12月
		if(tempNextMonth < 12)      //不是
			//判断 剩余时间 是否大于 下个月天数
			if(tempSurplusTime > tempDaysOfMonth)       //剩余时间 大于 下个月天数
				tempSurplusTime -= tempDaysOfMonth;
				tempNextMonth += 1;
			else        //剩余时间 小于或等于 下个月天数
				g_nEndMonth = tempNextMonth;    //截止月 即是 下个月
				g_nEndDay = tempSurplusTime;    //截止日 即是 剩余时间
				break;
		else                        //是
			//判断 剩余时间 是否大于 下个月天数
			if(tempSurplusTime > tempDaysOfMonth)       //剩余时间 大于 下个月天数
				tempSurplusTime -= tempDaysOfMonth;
				tempNextMonth = 1;
				g_nEndYear += 1;        //年份 加1
			else        //剩余时间 小于或等于 下个月天数
				g_nEndMonth = tempNextMonth;        //截止月 即是 下个月
				g_nEndDay = tempSurplusTime;        //截止日 即是 剩余时间
				break;
	return true;
                    1、全局变量int g_nCheckYear = 1901;     //校验年份int g_nCheckMonth = 0;       //校验月份int g_nCheckDay = 0;         //校验日int g_nCheckHour = 0;        //校验时int g_nCheckMinute;          //校验分int g_nEndYea...
int g_nCheckYear = 1901;     //校验年份
int g_nCheckMonth = 0;       //校验月份
int g_nCheckDay = 0;         //校验日
int g_nCheckHour = 0;        //校验时
int g_nCheckM...
				
输入一个日期:startdate(年月日)和天数(days>=1),输出字该输入日期days天的日期enddate(即enddate=startdate+days)要求输入和输出的年份为四位整数,并确保得到有效的输入数据。同时需要考虑跨年和闰年等情况,闰年用自定义函数计算日期自定义结构体描述。 #include "stdio.h" int Is_Special_Year(int year); #include <cstdio> int month[13][2]={{0,0},{31,31},{28,29},{31,31},{30,30}, {31,31},{30,30},{31,31},{31,31},{30,30},{31,31},{30,30},{31,31}}; bool Isleap(int year) return ((year%4==0...
/// @brief 计算前N天或者后N的日期 /// @param[in] cDateIn : 输入,格式"2019-03-11 12:00:00" /// @param[in] n : 前N天,输入-N;后N天,则输入N /// @param[out] cDateOut : 输出,格式"2019-03-11 12:00:00" /// @return...
C++线性表是一种数据结构,用于存储和操作一系列元素。而计算工作日天数可以通过线性表来实现。 在C++中,可以使用数组或者向量(vector)来实现线性表。你可以将日期作为元素存储在线性表中,并编写相应的法来计算工作日天数。 以下是一个简单的示例代码,用于计算两个日期之间的工作日天数: ```cpp #include <iostream> #include <vector> // 判断是否为工作日 bool isWorkday(int year, int month, int day) { // 在这里编写判断逻辑,判断给定的日期是否为工作日 // 返回true表示是工作日,返回false表示不是工作日 // 计算两个日期之间的工作日天数 int calculateWorkdays(int startYear, int startMonth, int startDay, int endYear, int endMonth, int endDay) { int workdayCount = 0; // 将起始日期和结束日期转换为整数表示,方便计算 int startDate = startYear * 10000 + startMonth * 100 + startDay; int endDate = endYear * 10000 + endMonth * 100 + endDay; // 遍历起始日期到结束日期之间的每一天 for (int date = startDate; date <= endDate; date++) { int year = date / 10000; int month = (date % 10000) / 100; int day = date % 100; // 判断当前日期是否为工作日 if (isWorkday(year, month, day)) { workdayCount++; return workdayCount; int main() { // 示例:计算2022年1月1日到2022年12月31日之间的工作日天数 int workdays = calculateWorkdays(2022, 1, 1, 2022, 12, 31); std::cout << "工作日天数:" << workdays << std::endl; return 0; 在上述示例代码中,`isWorkday`函数用于判断给定的日期是否为工作日,你可以根据实际需求编写判断逻辑。`calculateWorkdays`函数用于计算两个日期之间的工作日天数,它通过遍历起始日期到结束日期之间的每一天,并调用`isWorkday`函数来判断是否为工作日,最后返回工作日天数
[code=python] [/code]AutoAnchor: 0.00 anchors/target, 0.000 Best Possible Recall (BPR). Anchors are a poor fit to dataset , attempting to improve... AutoAnchor: Running kmeans for 9 anchors on 10709 points..跑yolov5时就一直显示这个就不继续运行下去了 InvalidArgumentError: Each axis in Attr(axes) should be in the range of [0, -1]But current axis is:2 weixin_39891230: 博主,我配置好环境,连续执行一段时间后,出现这个错误,可以帮忙看一下吗? 3: [executionContext.cpp::nvinfer1::rt::ExecutionContext::enqueueInternal::342] Error Code 3: API Usage Error (Parameter check failed at: executionContext.cpp::nvinfer1::rt::ExecutionContext::enqueueInternal::342, condition: (mEngine.bindingIsInput(x) && hasZeroVolume(dims)) || bindings[x] 深度学习 1x1卷积核的作用 qq_53921598: 如果只是单纯conv1d,没添加激活函数呢 opencv getRotationMatrix2D函数介绍 lBChaiN: 我还以为能缩放回去,这两个凑在一起讲有点不太好吧?不明所以