很抱歉,我仍然坚持要将其转换为while循环,任何人都可以帮助我。
gc.setForeground(display.getSystemColor(SWT.COLOR_BLUE));
这是我做的while while循环
int sum = 0;
int num;
System.out.print("Enter number: ");
num = sc.nextInt();
// Store the user input into variable num
// Complete the for loop to start from 1
// and end at num
for (int i = 1 ; i <=num ; i++)
sum += i;
System.out.println("The sum is " + sum);
答案 0 :(得分:3)
int sum = 0;
int num;
int i = 0;
System.out.print("Enter number: ");
num = sc.nextInt();
do{
sum += i;
i++;
}
while ( i <=num );
System.out.println("The sum is " + sum);
将i初始化为零,因为do-while在检查之前首先执行,而不是在执行之前先执行检查。并且你的do-while将和你的for-work一样工作。否则你的do-while将得到1,即使你的num是0.与你的相反,如果num为0,则sum = 0。
答案 1 :(得分:1)
在第一种情况下,在for / while之外输入num值,在do / while上输入第二种情况。所以我想你想这样做:
//Variables
int sum = 0;
int num;
int i = 0;
//Select num
System.out.print("Enter number: ");
num = sc.nextInt();
do {
sum += i;
i++;
} while (i <=num);
System.out.println("The sum is " + sum);
答案 2 :(得分:0)
首先,您可能需要更多地研究循环的基础知识。 while循环和do-while循环之间的区别是检查条件的位置。 Do-while循环在执行代码块后检查条件。并且while循环没有。它在执行之前进行检查。
int num = sc.nextInt();
int i = 1;
int sum = 0;
do{
sum += i;
i++;
}while(i <= num); //check condition after the running do block
System.out.println(sum);
**这取决于您的输入。这意味着如果您的输入为零,答案将是错误的。因为你的i = 1和sum等于1.