在C++中将天数转换为周

Converting Days to Weeks in C++

本文关键字:转换 C++      更新时间:2023-10-16

我正在尝试将 X 天的总天数转换为 X 周C++数,这是我在网上看到的并且不起作用:

int weeks = ((days % 365) / 7);

例如,如果天 = 8,那么从技术上讲,它是在第 2 周,所以 int 周应该 = 2。同样,15 天应输出 3。

谢谢。

假设days是整数类型,您可以使用:

int weeks = (days + 6) / 7

这是有效的,因为整数除法会截断任何小数部分。

整数除法将截断结果。为了获得周数,您需要参加该部门的ceil。如果你只想要那些代表一年内几周的日子,你保留模组,否则,不要。

换句话说:

int weeks = (int)ceil(days / 7.0);

http://www.cplusplus.com/reference/cmath/ceil/

如果还有几天,您只需添加一个

int weeks = days / 7 + (days % 7 ? 1 : 0);