我目前正在开始用Java编程。我试图将标题中的序列编码为Java中的输出,但我被卡住了!我正在试验for功能,欢迎任何帮助;)
答案 0 :(得分:23)
System.out.println("1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0");
但严肃地说,伙计们,这是一个未经测试的第一次通过:
for(int i=1; i<100; i++){
System.out.print("1 ");
for(int j=0; j<i; j++){
System.out.print("0 ");
}
}
如果您正在寻找有关如何入门的基本信息,Google就是您的朋友。例如,尝试谷歌搜索“for loop java”,你会得到很多很好的例子。此外,要学习任何语言的基本内容,Google搜索“&lt; language&gt; hello world”非常可靠。
答案 1 :(得分:20)
为什么要两个循环?
(从C#转换,原谅任何语法错误)
String s = "1 ";
for (int i = 0; i < 5; ++i)
{
s = s + "0 ";
System.out.print(s);
}
自批评:
答案 2 :(得分:4)
您可以将数字10存储在变量中,然后在循环中打印数字,将其乘以10(将十进制表示附加零),然后重复。
答案 3 :(得分:3)
for (int i = 2; i < 64; i <<= 1)
//System.out.print(Integer.toString(i, 2));
System.out.print(Integer.toString(i, 2).replaceAll("[01]", "$0 "));
答案 4 :(得分:0)
或者你的老师问你了吗? 两个嵌套的for循环可以解决问题。
或者用另一种语言(Ruby)的另一种方式:
4.times {|n| print 10**(n+1)}
答案 5 :(得分:0)
这不是真正的问题,而是非常基本的算法思维。 你有一个由一个“1”组成的序列,然后是一个随时间增长的其他东西“,另一个”1“,另一个东西,等等。你可以把这些视为交错的两个不同的系列。
因此,整体结构将类似于:
while(... infinity?)
{
System.out.print("1");
doSomething();
}
现在这个东西显然与外部循环的迭代次数(“阶段”)或1的计数相关,所以你需要这样的东西:
int stage=0;
while(...infinity?)
{
++stage;
System.out.print("1");
for(int i=0; i<stage; ++i) System.out.print("0");
}
如果您知道需要经历多少个周期,请使用for循环而不是一段时间,并通过它增加阶段。
答案 6 :(得分:-1)
for (int i = 1; i < 100000;)
{
i = i * 10;
System.out.print(i);
}
或
int i = 1;
while (i < 100000)
{
i = i * 10;
System.out.print(i);
}