计算天数

练习7-9 计算天数 (15分)

萝らか妹 提交于 2020-04-05 18:47:08
本题要求编写程序计算某年某月某日是该年中的第几天。 输入格式: 输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。 输出格式: 在一行输出日期是该年中的第几天。 输入样例1: 2009/03/02 输出样例1: 61 输入样例2: 2000/03/02 输出样例2: 62 #include<stdio.h> int main() { int nian,yue,ri; int i,sum1=0,sum=0; scanf("%d/%d/%d",&nian,&yue,&ri); if((nian % 400 == 0) || (nian%4==0&&nian%100!=0)) { int a[12]={31,29,31,30,31,30,31,31,30,31,30,31}; for(i=0;i<yue-1;i++) { sum1+=a[i]; } sum=sum1+ri; }else { int b[12]={31,28,31,30,31,30,31,31,30,31,30,31}; for(i=0;i<yue-1;i++) { sum1+=b[i]; } sum=sum1+ri; } printf("%d",sum); return 0; } 来源: https

VFP_获得:月天数.月初日期.月末日期及两个日期之间天数.月数.年数(十豆三)

谁都会走 提交于 2020-03-23 06:18:34
ClearldDate=Date()ldDateB={^2004/02/29}ldDateE={^2005/02/28}*--月天数?"月天数",32-Day(ldDate-Day(ldDate)+32)*--月初日期?"月初日期",ldDate-Day(ldDate)+1?"月初日期",Date(Year(ldDate),Month(ldDate),1)*--月末日期?"月末日期",Gomonth(ldDate-Day(ldDate)+1,1)-1?"月末日期",Gomonth(ldDate,1)-Day(Gomonth(ldDate,1))?"月末日期",ldDate-Day(ldDate)+32-Day(ldDate-Day(ldDate)+32)?"月末日期",Date(Year(Gomonth(ldDate,1)),Month(Gomonth(ldDate,1)),1)-1*--两个日期之间天数(Max是防止ldDateE小于ldDateB)?"两个日期之间天数",Max(ldDateE-ldDateB,0)*--两个日期之间月数(Max是防止ldDateE小于ldDateB)?"两个日期之间月数",Max((Year(ldDateE)-Year(ldDateB))*12+Month(ldDateE)-(Month(ldDateB)+Iif((Day(ldDateE)

分支-13. 计算天数

不打扰是莪最后的温柔 提交于 2020-03-16 09:24:52
本题要求编写程序计算某年某月某日是该年中的第几天。 输入格式: 输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。 输出格式: 在一行输出日期是该年中的第几天。 输入样例1: 2009/03/02 输出样例1: 61 输入样例2: 2000/03/02 输出样例2: 62 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); String inputs = input.nextLine(); String[] date = inputs.split("/"); int length = date.length; int d[] = new int[length]; for(int i = 0;i < length;i++) d[i] = Integer.parseInt(date[i]); int sum = 0; for(int j = 1;j < d[1];j++) { switch(j) { case 1: case 3: case 5: case 7:

计算闰年的第一种方法

喜你入骨 提交于 2020-03-16 09:20:10
      public class Calendardome {         //闰年计算 将日历设置到指定的年份 3月1日 add 向前偏移一天             //获取天数 29为闰年          public static void main(String[] args) {               fun(); }         public static void fun(){          //使用calendar 获取一个新的实例          Calendar c=Calendar.getInstance();              //添加日期           c.set(2009,2,1);                 //偏移向前偏移一天          c.add(Calendar.DAY_OF_MONTH, -1);             //Get 获取天数        int day=c.get(Calendar.DAY_OF_MONTH);        System.out.println(day);   //打印天数        if(day==28){       使用if 语句判断是否是闰年        System.out.println("不是闰年");      }else {  

有效工作日计算方法

拥有回忆 提交于 2020-03-15 05:44:21
功能要求:每天工作时间为9:00~17:00,周六、周日为休息日,输入当前日期和预计的工作日,得出实际完成的日期。 大致实现流程: 1、先算出今天占工作日的多少系数(今天已经用去的0.多少天)。 2、计算出这个星期用去的天数需要到小数位。 3、根据本周所用天数及工作日之和除以每周工作日数得到工作周数。 4、工作周数乘以2得到休息日数。工作周数乘以2得到休息日数(工作日数 + 休息日数得到实际工作天数。) 5、工作日数 + 休息日数得到实际工作天数。 6、工作起始日期 + 工作系数 + 实际工作天数 得到到期日期 + 到期那天的工作系数。 7、根据到期那天的的工作系数,得到小时数,最后就得到到期的日期和时间了。 代码模式 BeginData = 起始日期 BeginUsedHours = 起始当天的工作系数(已经工作小时数/每天总工作小时数) EndData = 结束的日期 EndTime = 结束当天时间 EndUsedHours = 结束当天的工作系数 ThisWeekUsedDays = 本周已用天数(包括小数,本周已过天数 + BeginUsedHours) WordDays = 工作日总数 RealDays = 实际所用天数 RealDays = 取整((ThisWeekUsedDays + WordDays) / 5) * 2 + WordDays EndData =

练习7-9 计算天数 (15分)

最后都变了- 提交于 2020-03-05 23:26:53
本题要求编写程序计算某年某月某日是该年中的第几天。 输入格式: 输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。 输出格式: 在一行输出日期是该年中的第几天。 输入样例1: 2009/03/02 输出样例1: 61 输入样例2: 2000/03/02 输出样例2: 62 # include <stdio.h> int main ( ) { int year , month , date , days = 0 ; scanf ( "%d/%d/%d" , & year , & month , & date ) ; int a [ 2 ] [ 13 ] = { { 0 , 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 } , { 0 , 31 , 29 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 } } ; int r , i ; r = ( year % 4 == 0 && year % 100 != 0 || year % 400 == 0 ) ; //闰年为1,平年为0 for ( i = 0 ; i < month ; i ++

银行贴现收益率

女生的网名这么多〃 提交于 2020-03-01 19:17:32
银行以低于票面价格出售票据,到期以票面价格回收,计算收益率 r B D = F − P 0 F × 360 t r_{BD} = \frac {F - P_0} {F} \times \frac {360} {t} r B D ​ = F F − P 0 ​ ​ × t 3 6 0 ​ F: 票面价值 P 0 P_0 P 0 ​ : 出售价格 t: 到期天数 360: 年天数 来源: CSDN 作者: RayXLei 链接: https://blog.csdn.net/weixin_37562241/article/details/104595859

3.4日期处理

泪湿孤枕 提交于 2020-02-23 12:17:22
codeup 1928: 日期差值 题目描述 有两个日期,求两个日期之间的天数,如果两个日期是连续的我们规定他们之间的天数为两天。 输入 有多组数据,每组数据有两行,分别表示两个日期,形式为YYYYMMDD 输出 每组数据输出一行,即日期差值 样例输入 Copy 20130101 20130105 样例输出 Copy 5 #include <stdio.h> #include <iostream> using namespace std; int m[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}}; //每月天数,1维平年,2维闰年 bool isLeap(int y) //判断闰年函数 { return (y % 4 == 0 && y % 100 != 0 || y % 400 == 0); } int main() { int y1, m1, d1, y2, m2, d2; //第一,二个日期的年月日 int p, q; //两个日期 while (scanf("%d%d", &p, &q) != EOF) { if (p > q) //交换

蔡勒公式求今天是星期几?

被刻印的时光 ゝ 提交于 2020-02-19 08:52:14
  之所以知道蔡勒公式,是因为今天在九度上做的一道题目[ 题目1043:Day of Week ]。以前也曾经做过求星期几这样的题目,当时的做法比较粗暴:已经知道某年某月某日是星期几,要求现在给的某天是星期几,直接求给的日期和已知日期的相差天数对7取余,再根据已知的星期做相应的调整即可。这样的做法不仅繁琐,而且一不留神就有可能算错。这次又碰到类似的题目,希望尝试新的方法。于是在查资料的过程中,知道了蔡勒公式。于是用蔡勒公式来解决了这道题目,虽然知道蔡勒公式,但是在使用过程中依旧错误不断。其实是因为对蔡勒公式理解不深刻导致的。   蔡勒公式的形式如下:w=[C/4]-2*c+y+[y/4]+[13*(M+1)/5]+d-1   其中各参数含义如下:   w:蔡勒公式计算出来的一个数。 w对7取模得:0-星期日,1-星期一,2-星期二,3-星期三,4-星期四,5-星期五,6-星期六。   C:当前世纪数-1(即年份前两位)   y:年份后两位   M:月份   d:日   [...]:表示取整数部分(非四舍五入)   使用时需要注意以下几点:   (1)w的值。w的值最后计算出来有可能是负数,而负数对7取余可能会因为环境不同而得到不同的值。所以,为了避免负数取余可能出现的问题,可以对w做个判断,如果w小于0,用w+=7使w为正。   (2)M。M的取值范围为[3,14]。其中,13

Java日期时间API系列18-----Jdk8中java.time包中的新的日期时间API类,java日期计算5,其他常用日期计算,星期计算,闰年计算等

笑着哭i 提交于 2020-02-07 19:42:13
  通过 Java日期时间API系列8-----Jdk8中java.time包中的新的日期时间API类的LocalDate源码分析 中可以看出,java8中的方法特别丰富,一些常用的计算如星期计算,闰年计算等等。 下面是应用代码: /** * 获取星期值 1-7,星期一到星期日 * @param date * @return */ public static int getDayOfWeek(Date date){ return DateTimeConverterUtil.toLocalDateTime(date).getDayOfWeek().getValue(); } /** * 获取星期值 1-7,星期一到星期日 * @param localDateTime * @return */ public static int getDayOfWeek(LocalDateTime localDateTime){ Objects.requireNonNull(localDateTime, "localDateTime"); return localDateTime.getDayOfWeek().getValue(); } /** * 获取星期值 1-7,星期一到星期日 * @param instant * @return */ public static int