好吧,我需要用日期数字制作一个数字模式,例如: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;
}
}
提前致谢
最佳答案
试试这个:
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
关于java - 创建带有天数的数字模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19307429/