好吧所以我需要制作一个带有日期数字的数字模式,例如:1 - 星期一,2 - 星期二,3 - 星期三到7 - 星期日。如果我输入“n”,我会得到以下内容:
N = 4
1 2 3 4
N = 7
1 2 3 4 5 6 7
N = 12
1 2 3 4 5 6 7 1 2 3 4 5
如果n< = 14,我已经成功制作了这个节目,但如果n> 14,我得到了:
N = 17
1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 9 10
应该是什么时候:
N = 17
1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3
这是我的代码
for (x=1;x<=n;x++){
System.out.print(x+" ");
if (x==7){
for (x=1;x<=(n-7);x++)
System.out.print(x+" ");
break;
}
}
提前致谢
答案 0 :(得分:2)
请改为尝试:
for (int i = 0; i < n; i++)
System.out.print(i % 7 + 1 + " ");
每当您想要具有“重复”行为时,如果一系列数字上升到某个值然后重新启动,请使用%
运算符和一些模运算来实现所需的效果。对于n = 17
,上面将打印:
1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3