Board logo

標題: 609 閏年 [打印本頁]

作者: 陳曜誌    時間: 2024-9-19 13:12     標題: 609 閏年

1. 題目說明:
請依下列題意進行作答,使輸出值符合題意要求。

2. 設計說明:
請撰寫一程式,讓使用者輸入三個正整數,分別為西元年、月、日,請計算此日期為當年的第幾天,需注意閏年;若輸入的日期有誤,請輸出「error」。

閏年:
西元年份除以4不可整除,為平年。
西元年份除以4可整除,且除以100不可整除,為閏年。
西元年份除以100可整除,且除以400不可整除,為平年。
西元年份除以400可整除,為閏年。

提示:若使用 Java 語言答題,請以「JP」開頭命名包含 main 靜態方法的 class,評測系統才能正確評分。

3. 輸入輸出:
輸入說明
三個正整數,分別為西元年、月、日

輸出說明
此日期為當年的第幾天

範例輸入1
2012 3 7
範例輸出1
67

範例輸入2
2018 6 31
範例輸出2
error

本帖隱藏的內容需要回復才可以瀏覽

作者: 何權晉    時間: 2024-9-27 20:01

  1. #include<bits/stdc++.h>
  2. using namespace std;

  3. int main()
  4. {
  5.     int y,m,d,sum=0;
  6.     int n[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  7.     cin>>y>>m>>d;
  8.     if((y%4==0 && y%100!=0 ) || y%400==0)
  9.         n[2]=29;
  10.     if(d<n[m])
  11.     {
  12.         for(int i=1;i<=m-1;i++)
  13.         {
  14.             sum=sum+n[i];

  15.         }
  16.         sum=sum+d;
  17.         cout<<sum;
  18.     }
  19.     else
  20.     {
  21.         cout<<"error";
  22.     }
  23. }
複製代碼

作者: 蔡沛倢    時間: 2024-9-27 20:01

本帖最後由 蔡沛倢 於 2024-9-27 20:02 編輯
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int y,m,d,sum=0;
  4. int n[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  5. int main()
  6. {
  7.     cin>>y>>m>>d;
  8.     if((y%4==0 and y%100!=0) or y%400==0)
  9.     {
  10.         n[2]=29;
  11.     }
  12.     if(d>n[m])
  13.     {
  14.         cout<<"error";
  15.     }
  16.     else
  17.     {
  18.         for(int i=1;i<m;i++)
  19.         {
  20.             sum+=n[i];
  21.         }
  22.         sum+=d;
  23.         cout<<sum;
  24.     }
  25.     return 0;
  26. }
複製代碼

作者: 吳侑諶    時間: 2024-9-27 20:01

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int y,m,d;
  4. int n={0,31,30,31,30,31,30,31,31,30,31,30,31};
  5. int main()
  6. {
  7.     int sum=0;
  8.     cin>>y>>m>>d;
  9.     if((y%4==0 && y%100!=0) || y%400==0)
  10.     {
  11.         n[2]=29;
  12.     }
  13.     if(d>n[m])
  14.     {
  15.         for(int i=0;i<m;i++)
  16.         {
  17.             sum+=n[i];
  18.         }
  19.         sum+=d;
  20.     }
  21.     else{
  22.         cout<<"error";
  23.         return 0;
  24.     }
  25.     cout<<sum;
  26.     return 0;
  27. }
複製代碼

作者: 聿均    時間: 2024-9-27 20:02

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5.     int y,m,d,sum=0;
  6.     int n[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  7.     cin>>y>>m>>d;
  8.     if((y%4==0&&y%100!=0)||y%400==0)
  9.         n[2]=29;
  10.     if(d<=n[m]){
  11.         for(int i=1;i<m;i++)
  12.             sum+=n[i];
  13.         sum+=d;
  14.         cout<<sum;
  15.     }else
  16.         cout<<"error";
  17. }
複製代碼

作者: 田家齊    時間: 2024-9-27 20:08

  1. #include <bits/stdc++.h>

  2. using namespace std;
  3. int y,m,d,x,n[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  4. string str;
  5. int main()
  6. {
  7.     cin>>y>>m>>d;
  8.     if(y%4==0 and y%100!=0 or y%400==0)
  9.     {
  10.         n[2]=29;
  11.     }
  12.     if(d>n[m])
  13.     {
  14.         cout<<"error"<<endl;
  15.         return 0;
  16.     }else
  17.     {
  18.         for(int i=1;i<=m-1;i++)
  19.         {
  20.             x+=n[i];
  21.         }

  22.     }
  23.     cout <<x+d<<endl;
  24.     return 0;
  25. }
複製代碼

作者: 黃翊豪    時間: 2024-9-27 20:08

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int y,m,d,sum=0;
  4. int n[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  5. int main()
  6. {
  7.     cin>>y>>m>>d;
  8.     if((y%4==0 && y%100!=0) || y%400==0)
  9.         n[2]=29;
  10.     if(d<n[m])
  11.     {
  12.         for(int i=1;i<=m-1;i++)
  13.         {
  14.             sum+=n[i];
  15.         }
  16.         sum+=d;
  17.         cout<<sum;
  18.     }
  19.     else
  20.         cout<<"error";
  21. }
複製代碼

作者: 郭又瑄    時間: 2024-10-10 21:54

  1. #include<bits/stdc++.h>
  2. using namespace std;

  3. int main()
  4. {
  5.     int y,m,d,sum=0;
  6.     int n[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  7.     cin>>y>>m>>d;
  8.     if((y%4==0 && y%100!=0 ) || y%400==0)
  9.         n[2]=29;
  10.     if(d<n[m])
  11.     {
  12.         for(int i=1;i<=m-1;i++)
  13.         {
  14.             sum=sum+n[i];

  15.         }
  16.         sum=sum+d;
  17.         cout<<sum;
  18.     }
  19.     else
  20.     {
  21.         cout<<"error";
  22.     }
  23. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2