Java从“For”语句转换为嵌套While语句
转换以下代码,使其使用嵌套的while语句而不是for语句 下面是将for循环转换为嵌套while循环的原始代码:Java从“For”语句转换为嵌套While语句,java,loops,Java,Loops,转换以下代码,使其使用嵌套的while语句而不是for语句 下面是将for循环转换为嵌套while循环的原始代码: public static void main (String [] args) int s =0; int t =1; for (int i =0; i < 5; i++) { s = s = i; for (int j =i; j >0; j --) { t = t + (j-1);
public static void main (String [] args)
int s =0;
int t =1;
for (int i =0; i < 5; i++)
{
s = s = i;
for (int j =i; j >0; j --)
{
t = t + (j-1);
}
s = s + t;
我目前的情况如下:
int i = 0;
int j = 0;
int s = 0;
int t = 1;
while ( i < 5)
{
s = s + i;
while (j > 0)
{
t = t + (j -1);
}
i++;
j--;
这将产生以下输出:
T是1,
T是1,
T是1,
T是1,
T是1,
S是10
它应该产生的是:
T是1,
T是1,
T是2,
T是5,
T是11,
S是30
现在在需要转换的第一个循环中,我知道“S”将通过循环向自身添加“1”,直到它超过5,然后它将下降到for循环并继续这些操作。然而,我不明白的是,在完成了“S”的运算后,它加上了30,然后下降到第二个“for”语句,“j”从何而来?例如,第一个语句int j=i;这是在问int j是否等于‘S’的总和吗?
谢谢大家的帮助 您需要在int own while循环(第二个while循环)中减小j。
同样在while循环之前,您需要初始化j=i,就像您在for循环中所做的那样
代码:
什么?为什么?我只是从原来的“for”语句中复制了这个语句。我没有假设在从“for”到嵌套的“while”的过程中会发生变化。对,它不会改变任何东西,s=s完全不会做任何事情。你的问题得到了回答还是你仍然需要帮助?问题得到了回答!谢谢你的帮助。然后将答案标记为已接受。谢谢!我很感激。
while ( i < 5)
{
s = s + i;
j=i;
while (j > 0)
{
t = t + (j -1);
j--;
}
i++;