三天打魚兩天曬網 C Java

2021-07-10 16:38:26 字數 1024 閱讀 4020

/*

中國有句俗語叫"三天打魚兩天曬網"。某人從2023年1月1日起開始

「三天打魚兩天曬網」,問這個人在以後的某一天中是"打魚"還是"曬網"。

問題分析與演算法設計:

根據題意可以將解題過程分為三步:

1)計算從2023年1月1日開始至指定日期共有多少天;

2)由於"打魚"和"曬網"的週期為5天,所以將計算出的天數用5去除;

3)根據餘數判斷他是在"打魚"還是在"曬網";若餘數為0,1,2,則他是在"打魚";否則是在"曬網"。

在這三步中,關鍵是第一步。求從2023年1月1日至指定日期有多少天,要判斷經歷年份中是否有閏年,

二月為29天,平年為28天。

閏年的方法可以用偽語句描述如下:如果 ((年能被4除盡且不能被100除盡)或能被400除盡)

則該年是閏年;否則不是閏年。*/

#include

using namespace std;

typedef struct date

date;

int days(date para);

date temp;                               //指定日期前一年的最後一天

temp.month=12;

temp.day=31;

if(totaldays%5==4||totaldays%5==0)         //判斷該人是「釣魚」還是「休息」

cout<<"the person is sleeping!"<

//某年某月某日到該年1月1日的總天數

int days(date para)                                        

,   //平年每月平均天數

};                         //閏年每月平均天數

int flag=((para.year%4==0&¶.year%100!=0)||para.year%400==0);  //flag==0則為平年,否則閏年

for(i=0;i

三天打魚,兩天曬網。

判斷某人從2010年1月1日起開始 三天打魚,兩天曬網 到之後某一天是在打漁還是曬網 設計日期 2019.3.1 include define year 2010 void main 用陣列表示每月的天數 printf 請輸入所要判斷的時間 n scanf 4d 2d 2d year,month,d...

三天打魚兩天曬網(c )

中國有句俗語叫 三天打魚兩天曬網 某人從2010年1月1日起開始 三天打魚兩天曬網 問這個人在以後的某一天中是 打魚 還是 曬網 思路 問題分析與演算法設計 根據題意可以將解題過程分為三步 1 計算從2010年1月1日開始至指定日期共有多少天 2 由於 打魚 和 曬網 的週期為5天,所以將計算出的天...

三天打魚兩天曬網C

中國有句俗語叫 三天打魚兩天曬網 某人從2010年1月1日起開始 三天打魚兩天曬網 問這個人在以後的某一天中是 打魚 還是 曬網 使用檔案進行資料測試。如將日期 20100101 20111214 等資料儲存在in.txt檔案中,程式讀入in.dat檔案進行判定,並將結果輸出至out.txt檔案。i...