日历问题 —— C++
在我们现在使用的日历中, 闰年被定义为能被4整除的年份,但是能被100整除而不能被400整除的年是例外,它们不是闰年。例如:1700, 1800, 1900 和 2100 不是闰年,而 1600, 2000 和 2400是闰年。 给定从公元2000年1月1日开始逝去的天数,你的任务是给出这一天是哪年哪月哪日星期几。
输入
输入包含若干行,每行包含一个正整数,表示从2000年1月1日开始逝去的天数。输入最后一行是−1, 不必处理。可以假设结果的年份不会超过9999。
输出
对每个测试样例,输出一行,该行包含对应的日期和星期几。格式为“YYYY-MM-DD DayOfWeek”, 其中 “DayOfWeek” 必须是下面中的一个: “Sunday”, “Monday”, “Tuesday”, “Wednesday”, “Thursday”, “Friday” 或 "Saturday“。
样例输入
1730
1740
1750
1751
-1
样例输出
2004-09-26 Sunday
2004-10-06 Wednesday
2004-10-16 Saturday
2004-10-17 Sunday
代码:
#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
int Isrun(int a){if (a % 4 != 0 || (a % 100 == 0 && a % 400 != 0)){return 0;}else{return 1;}
}
int main(){int years[2] = { 365,366 };int days;int Month[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };int MonthR[13] = { 0,31,29,31,30,31,30,31,31,30,31,30,31 };string week[] = { "Saturday","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday" };while (cin >> days && days != -1) {int type = days%7;int i = 2000,j = 1;for (i = 2000; days >= years[Isrun(i)]; i++){days -= years[Isrun(i)];}if (Isrun(i) == 0){for (j = 1; days >= Month[j]; j++){days -= Month[j];}}else{for (j = 1; days >= MonthR[j]; j++){days -= MonthR[j];}}cout << i << "-" << setfill('0') << setw(2) << j << "-" << setfill('0') << setw(2) << days + 1 << " " << week[type] << endl;}
}
日历问题 —— C++相关推荐
- app如何打开了request url_手机日历app内如何打开节日提醒功能?支持提前提醒节日的云便签...
我们一年中要度过的节日有很多,除了法定节假日之外,还有其他的很多节日,例如西方传来的圣诞节.万圣节,国际性的节日例如父亲节.母亲节等,还有一些传统节日例如小寒.冬至.腊八等,这些都是不放假的. 有时候 ...
- Python Qt GUI设计:QCalendar日历类和QDateTimeEdit时间类(基础篇—20)
目录 1.QCalendar日历类 2.QDateTimeEdit时间类 1.QCalendar日历类 QCalendar是一个日历控件,它提供了一个基于月份的视图,允许用户通过鼠标或键盘选择日期,默 ...
- mui ios中form表单中点击输入框头部导航栏被推起及ios中form表单中同时存在日期选择及输入框时,日历选择页面错乱bug...
一.ios header导航栏被推起解决方法 1 设置弹出软键盘时自动改变webview的高度 plus.webview.currentWebview().setStyle({ softinputMo ...
- 【Qt】qss样式表之:QCalendarWidget,日历窗口样式表设置
1.效果图: 2.qss样式表 其中表头的背景颜色等设置不起作用,只好在下面的代码中实现. /*日历*/ QCalendarWidget QHeaderView {qproperty-minimumS ...
- 年季度月周日控件html,基于bootstrap按年、季度、年月、年月日的日历插件(原创)...
插件描述:基于bootstrap按年.季度.年月.年月日的日历插件,作为bootstrapdatetimepicker的扩展 更新时间:2020-07-02 22:02:19 更新说明:修改yk-da ...
- Java项目:日历万年历(java+swing)
源码获取:博客首页 "资源" 里下载! 功能简介: 万年历 启动类: public class CalendarMainClass { public static void mai ...
- python中ttk和tkinter_Python tkinter与ttk日历
我正在使用 this代码在我的Tkinter上创建一个简单的日历.当我在主根窗口上放置日历时,日历显示正常.因此,我决定放置另一个按钮,它将创建一个Tkinter顶层窗口并在顶层窗口上放置另外一个日历 ...
- iOS访问系统日历 添加提醒事件
1 添加隐私请求提示 Privacy - Calendars Usage Description 2 代码 #import <EventKit/EventKit.h> // 添加提醒事件 ...
- 【iOS】日历行程的增删改查(完整)
前言 我们可以使用系统提供的EventKit框架来访问和操作用户的日历日程和提醒(虽然日历和提醒是两个独立的app,但是是用同一个框架来处理数据).同样地,日历和提醒的数据的数据,都是存储在同一个叫做 ...
- iOS 高可控性日历基础组件 - SKCalendarView 的使用和实现思路的分享
阅读 61 收藏 5 2017-04-02 原文链接:http://www.jianshu.com/p/ce4c64a4d437 SKCalendarView 是一个高可控性的日历基础组件,为了提高应 ...
最新文章
- cent os 6 fdisk fat32
- 元宇宙iwemeta: 克林顿指出,加密货币与生物恐怖主义有相同的威胁
- 用pc装华为服务器系统,pc安装服务器系统安装
- Spring Boot基础学习笔记15:实现文件下载功能
- Linux内核哈希表分析与应用
- atitit 部门日常工作流程体系 日常日程表 日常工作内容列表清单.docx
- Javashop 7.0 统一登录unionID问题修改
- keras神经网络搭建六步法
- php中的接口 interface 和实现 implement
- 软件系统可靠性的指标计算
- EDA软件_Cadence_Allegro 16.6焊盘制作
- Part 2 如何进行埋点(内附埋点文档模板)
- plsql快速导入sql文件
- 反斜杠,让您的csv文档字符不撞车;让“借”您csv数据的人叫苦不迭。
- Cookie、Session、Token、JWT 看一篇就够了
- Java 文件压缩及下载
- 程序员向 GitHub 仓库提交 PR,结果 “轰炸” 了近 40 万开发者
- 谷歌地图下载器中“地图艺术照”
- 无人值守自动安装——PXE(Preboot eXecution Environment)
- Auto-Encoder (什么是Auto-Encoder part1)