labview记录系统所用月数和天数

news2024/11/23 1:36:47

在做项目时会遇到采集系统的记录,比如一个项目测试要跑很久这个时候就需要在软件系统上显示项目运行了多少天,从开始测试开始一共用了多少年多少月。

年的话还好计算只需要把年份减掉就可以了,相比之下月份和天数就比较难确定,一年有12个月,每个月对应的天数都不同,还有年份不同但是结束测试的月份比开始测试的月份小一些,这样的话难免会进一,这样还好。涉及到天数时其中有很多种月份的情况,一年12个月,一共有7个月是31天,4个月是30天,还有二月份闰年是29天,平年是28天。

这里针对平年来判断一下,如果想要实现闰年的话在最前面加上一个判断闰年和平年的函数就可以了。这里以一年365天来算。

我们首先拿到结束测试时间和开始测试时间的年月日,通过数组来存储他们,分别比对开始测试时间和结束测试时间的年月日。这里分别获取他们的前六位并把他们放到数组中,以241120为例子这个是当前的时间。展现到数组里就是24,11,20,我们在和开始测试的时间211226,展现到数组中就是21,12,26,然后来判断一共过去了多少个月,和多少天。

首先我们来判断开始测试时间和结束测试时间的年份是否相等,如果相减为0的话我们只需要判断同一年里过去的天数和月数,这里示例如下,因为涉及到的情况比较繁琐,这里我用了一种比较笨的方法,首先先把1,3,5,7,8,10,12,这些大月放在一起,然后把2,4,6,9,这些30天的月份放在一起,最后2月单独放在一起,利用条件结构实现到具体月份的索引,这样的话就实现了除了月份之外,单独天数的相差的计算。

月份这里,因为如果结束测试时间和开始测试时间他们的天数相差超过30天,可以整除30这个就要在算上一个月,所以在这里加了一个判断的功能。

因为在同一年里,结束测试的月份肯定是大于开始测试的月份,这里确定月份后,以每个月固定30天来计算然后乘以相差的月份,然后在计算因为月份有31天和30天和28天所导致的区别,分别加上区别的天数就得到了所差月份导致的天数具体值。

下面我们来介绍一下,当年份不同时,也就是说我们运行了好几年之后,这个天数和月数是多少呢,这里就要针对年份来计算,这里我们还是以一年365天来计算,如果年份相差满一年但是月份相差较小,这里需要把年份之差减一。

针对相差过多的年份我们需要将月份乘以12在进行计算,然后再加上相应的月份相减之差,这里月份也分了两种情况,一种是当结束测试的月份大于开始测试的月份,还有一种情况是结束测试的月份小于开始测试的月份。

分别需要不同的计算方法来计算,这里是结束测试的月份小于开始测试的月份。

天数也是一样,我们先确定相差的年份,然后拿年份乘以365天,在加上相差的月份,这里还是拿一个月30天来乘然后根据索引的月份来判断最后加上多少天,最后来计算结束测试的时间和开始测试的时间天数之差,这里和之前也是一样,通过条件结构来分类一共几种情况,给他区分开,然后在计算即可。

这里我用到的方法属于比较笨拙了,把每个月按照30天计算,然后在枚举出不同月份31天,30天,28天,可能出现的情况,目前还没有好的办法,后面如果有更简便更精确的办法会继续更新上来。

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

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

相关文章

【C++笔记】list使用详解及模拟实现

前言 各位读者朋友们大家好!上期我们讲了vector的使用以及底层的模拟实现,这期我们来讲list。 目录 前言一. list的介绍及使用1.1 list的介绍1.2 list的使用1.2.1 list的构造1.2.2 list iterator的使用1.2.3 list capacity1.2.4 list element access1.…

window 中安装 php 环境

window 中安装 php 环境 一、准备二、下载三、安装四、测试 一、准备 安装前需要安装 Apache ,可以查看这篇博客。 二、下载 先到这里下载 这里选择版本为“VS16 x64 Thread Safe”,这个版本不要选择线程安全的,我试过,会缺少文…

【大模型】LLaMA: Open and Efficient Foundation Language Models

链接:https://arxiv.org/pdf/2302.13971 论文:LLaMA: Open and Efficient Foundation Language Models Introduction 规模和效果 7B to 65B,LLaMA-13B 超过 GPT-3 (175B)Motivation 如何最好地缩放特定训练计算预算的数据集和模型大小&…

流程图图解@RequestBody @RequestPart @RequestParam @ModelAttribute

RequestBody 只能用一次,因为只有一个请求体 #mermaid-svg-8WZfkzl0GPvOiNj3 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-8WZfkzl0GPvOiNj3 .error-icon{fill:#552222;}#mermaid-svg-8WZfkzl0GPvOiNj…

论文阅读--supervised learning with quantum enhanced feature spaces

简略摘要 量子算法实现计算加速的核心要素是通过可控纠缠和干涉利用指数级大的量子态空间。本文在超导处理器上提出并实验实现了两种量子算法。这两种方法的一个关键组成部分是使用量子态空间作为特征空间。只有在量子计算机上才能有效访问的量子增强特征空间的使用为量子优势提…

django+boostrap实现注册

一、django介绍 Django 是一个高级的 Python 网络框架,可以快速开发安全和可维护的网站。由经验丰富的开发者构建,Django 负责处理网站开发中麻烦的部分,因此你可以专注于编写应用程序,而无需重新开发。 它是免费和开源的&#x…

【面试题】接口怎么测试?如何定位前后端的Bug?

接口怎么测试? 接口测试用来验证不同软件组件之间的交互是否正常。包括验证数据传输,参数传递,我在多个项目中有过测试接口的经验。(… 当进行接口测试时,会使用Postman和Python的Requests库。首先根据接口文档设计测…

151页PDF | XX集团数字化转型SAP项目规划方案(限免下载)

一、前言 这份报告是XX集团数字化转型SAP项目规划方案,该报告涵盖了集团战略解读、管理痛点分析、信息化建设目标、整体架构方案、实施策略、SAP系统价值和预期收益,旨在通过数字化推动集团运营模式变革,实现降本增效和价值创新。 《XX集团…

iOS逆向入门:使用theos注入第三方依赖库

背景 theos是一个跨平台的软件开发框架,常用于管理,开发和部署iOS项目,同时也是开发iOS越狱插件的主要工具。和MonkeyDev不同的是,它不依赖于xcode,可以在多个操作系统上运行。一个完整的iOS越狱开发流程包括&#xf…

LLM文档对话 —— pdf解析关键问题

一、为什么需要进行pdf解析? 最近在探索ChatPDF和ChatDoc等方案的思路,也就是用LLM实现文档助手。在此记录一些难题和解决方案,首先讲解主要思想,其次以问题回答的形式展开。 二、为什么需要对pdf进行解析? 当利用L…

HarmonyOS Next 浅谈 发布-订阅模式

HarmonyOS Next 浅谈 发布-订阅模式 前言 其实在目前的鸿蒙应用开发中,或者大前端时代、vue、react、小程序等等框架、语言开发中,普通的使用者越来越少的会碰到必须要掌握设计模式的场景。大白话意思就是一些框架封装太好了,使用者只管在它…

【HCIP]——OSPF综合实验

题目 实验需求 根据上图可得,实验需求为: 1.R5作为ISP:其上只能配置IP地址;R4作为企业边界路由器,出口公网地址需要通过PPP协议获取,并进行CHAP认证。(PS:因PPP协议尚未学习&#…

利用大语言模型对基准数据集在预处理和微调过程的数据污染检测

概述 虽然大规模语言模型发展迅速,但对其进行评估却变得越来越困难。人们在短时间内建立了许多基准来评估大规模语言模型的性能,但这些分数并不一定反映真实世界的性能。此外,还有人指出,这些基准数据集可能受到预处理和微调过程…

【SKFramework框架】一、框架介绍

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享QQ群:398291828小红书小破站 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 【Unity3D框架】SKFramework框架完全教程《全…

Linux中定时操作

一、一次性定时 这里以23&#xff1a;00为例 输入相关时间----at 23&#xff1a;00 所保存在哪个文件里------ ls /root > at.txt <EOT> &#xff08;ctrld退出到root&#xff09; 查看计划任务 ------ at -l 最后删除任务----at -d 2 二、周期性定时&#xf…

自回归和Rectified Flow完美融合统一多模态理解和生成!DeepSeek北大等开源JanusFlow

论文链接&#xff1a;https://arxiv.org/pdf/2411.07975 github链接&#xff1a;https://github.com/deepseek-ai/Janus 亮点直击 统一多模态框架&#xff1a; 提出 JanusFlow&#xff0c;一个同时处理图像理解和文本到图像生成任务的统一模型&#xff0c;解决了任务分离带来的…

Docker1:认识docker、在Linux中安装docker

欢迎来到“雪碧聊技术”CSDN博客&#xff01; 在这里&#xff0c;您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者&#xff0c;还是具有一定经验的开发者&#xff0c;相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导&#xff0c;我将…

数据结构在二叉树Oj中利用子问题思路来解决问题

二叉树Oj题 获取二叉树的节点数获取二叉树的终端节点个数获取k层节点的个数获取二叉树的高度检测为value的元素是否存在判断两颗树是否相同判断是否是另一棵的子树反转二叉树判断一颗二叉树是否是平衡二叉树时间复杂度O(n*n)复杂度O(N) 二叉树的遍历判断是否是对称的二叉树二叉…

【C++】踏上C++学习之旅(九):深入“类和对象“世界,掌握编程的黄金法则(四)(包含四大默认成员函数的练习以及const对象)

文章目录 前言1. 实现Date类的构造函数2. 实现Date类的拷贝构造函数3. 实现Date类的赋值运算符重载4. 实现各Date对象之间的比较接口5. 实现Date对象的加减接口6. const成员7. 取地址及const取地址操作符重载 前言 在我们前面学习到了"类和对象"的四大默认成员函数(…

远程控制软件使用教程

随着数字化办公浪潮的席卷&#xff0c;远程控制软件已经悄无声息地融入我们的日常生活&#xff0c;成为提升工作效率的神奇工具。它让我们无论身处何地&#xff0c;都能轻松驾驭办公室电脑&#xff0c;让旅途中的工作也变得轻松自如。那么&#xff0c;远程控制软件究竟是什么&a…