编写一个"日期查询系统"要求:用户输入今天是本月的几号以及当天是周几 (+Monday+ +Tuesday+、+Wednesday+、+Thursday+、+Friday+、+Saturday+、+u
时间: 2023-10-06 16:04:23 浏览: 73
已知日期和要求日期之间的天数可以通过计算两个日期之间的年份差、月份差和天数差来得到。根据给出的代码,我们可以使用以下公式来计算天数差:
Day = (unknowYear - knowYear) * 360 + (unknowday - knowday) + (unknowMouth - knowMouth) * 30
接下来,我们可以使用已知日期的星期几和天数差来计算要求日期的星期几。根据给出的代码,我们可以使用以下公式来计算要求日期的星期几:
ans[(5 + sum - 1) % 7]
所以,你可以使用上述公式来编写一个日期查询系统,用户输入今天是本月的几号以及当天是周几,系统会根据已知日期和要求日期之间的天数来计算要求日期的星期几。
相关问题
定义星期几的枚举类型,输入今天是周几,然后计算经过若干工作日和若干自然日后是周几
好的,这是一个关于计算日期的问题。以下是我的回答:
我们可以定义一个星期几的枚举类型,如下所示:
enum Weekday {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
};
然后,我们可以输入今天是星期几,比如 Monday,然后输入经过的工作日和自然日数,比如工作日数为 5,自然日数为 7。接着,我们可以编写一个函数来计算经过这些天后是星期几,如下所示:
Weekday calculateDay(Weekday today, int workDays, int naturalDays) {
int totalDays = workDays + naturalDays;
int daysToAdd = totalDays % 7;
int newDay = (today + daysToAdd) % 7;
return static_cast<Weekday>(newDay);
}
这个函数将返回经过这些天后的星期几。比如,如果今天是星期一,经过 5 个工作日和 7 个自然日后,将是星期三。
希望这个回答能够帮到你!
java如何获取一个日期字符串是周几
你可以使用Java的SimpleDateFormat类将一个日期字符串解析为Date对象,并通过Calendar类来获取它是星期几。以下是获取一个日期字符串是星期几的Java代码示例:
```java
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Main {
public static void main(String[] args) {
String dateString = "2022-08-01";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = dateFormat.parse(dateString);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
String[] weekdays = {"", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
System.out.println(dateString + " is " + weekdays[dayOfWeek]);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
```
运行以上代码,将输出类似于以下的结果:
```
2022-08-01 is Monday
```
其中,SimpleDateFormat类用于解析日期字符串,将其转换为Date对象。Calendar类用于获取日期对象是星期几。在以上代码中,首先我们将日期字符串 "2022-08-01" 解析为一个Date对象。然后,通过将Date对象传递给Calendar实例的setTime方法来设置Calendar对象的时间。最后,使用Calendar对象的DAY_OF_WEEK字段来获取日期是星期几,并将其打印出来。