Trang chủ Tin Học Lớp 12 viết chương trình :cho ngày sinh một người.in ra thứ(monday,tuesday,wednesday,...)...

viết chương trình :cho ngày sinh một người.in ra thứ(monday,tuesday,wednesday,...) của ngày sinh người đó. câu hỏi 4599193 - hoctapsgk.com

Câu hỏi :

viết chương trình :cho ngày sinh một người.in ra thứ(monday,tuesday,wednesday,...) của ngày sinh người đó.

Lời giải 1 :

#include <bits/stdc++.h>

using namespace std;

#define ll long long 
#define ld long double
#define ull unsigned long long
#define bigint __int128
#define pb push_back

const int N = 1e6, TT = 1e5 + 2, mod = 1e9 + 7;
const ll MAX = 1e18, MOD = 1000000000000000009;
const string palin = "ilovwxAHIMOTUVWXY";

bool nhuan(int year)
{
 return (year % 400 == 0) || (year % 100 && year % 4 == 0);
}

struct DMY
{
 int day, month, year;
};

bool not_equal(DMY a, DMY b)
{
 return a.day != b.day || a.month != b.month || a.year != b.year;
}

DMY NextDay(DMY x)
{
 if(x.month == 2)
 {
  if(x.day == 29 || (x.day == 28 && !nhuan(x.year))) return {1, 3, x.year};
  return {x.day + 1, 2, x.year};
 }
 if(x.month == 4 || x.month == 6 || x.month == 9 || x.month == 11)
 {
  if(x.day <= 29) return {x.day + 1, x.month, x.year};
  return {1, x.month + 1, x.year};
 }
 // if(month == {1, 3, 5, 7, 8, 10, 12})
 if(x.day <= 30) return {x.day + 1, x.month, x.year};
 if(x.month == 12) return {1, 1, x.year + 1};
 return {1, x.month + 1, x.year};
}

string fday(int n)
{
 if(n == 8) return "Sunday";
 if(n == 7) return "Saturday";
 if(n == 6) return "Friday";
 if(n == 5) return "Thursday";
 if(n == 4) return "Wednesday";
 if(n == 3) return "Tuesday";
 return "Monday";
}

int main()
{
    ios_base::sync_with_stdio(false);
 cin.tie(NULL);
 cout.tie(NULL);
 
 DMY l = {1, 1, 1}, r;
 cin >> r.day >> r.month >> r.year;
 int cnt = 0;
 while(not_equal(l, r))
  cnt += 1, l = NextDay(l);
 cout << fday(2 + cnt % 7);
}
// 1/1/0001  ->  Monday

image
image
image

Thảo luận

Lời giải 2 :

hôm sau nói freepascal hay cái khác nha

image

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự 12

Lớp 12 - Năm cuối ở cấp tiểu học, năm học quan trọng nhất trong đời học sinh trải qua bao năm học tập, bao nhiêu kì vọng của người thân xung quanh ta. Những nỗi lo về thi đại học và định hướng tương lai thật là nặng. Hãy tin vào bản thân là mình sẽ làm được rồi tương lai mới chờ đợi các em!

Nguồn : ADMIN :))

Liên hệ hợp tác hoặc quảng cáo: gmail

Điều khoản dịch vụ

Copyright © 2021 HOCTAPSGK