首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >98和266之间的7的倍数

98和266之间的7的倍数
EN

Stack Overflow用户
提问于 2014-10-22 23:51:51
回答 7查看 80关注 0票数 1

声明说:

写一个98和266之间的7的倍数的列表,两者都包括

我把这段代码放在:

代码语言:javascript
复制
import java.util.*;

public class Multiples7 {

  public static void main (String[] args) {
    Scanner entrada;

    int x;

    entrada = new Scanner(System.in);

    while (x >= 98 && x <= 266) {
      if (x % 7 == 0){
        System.out.println(x);
      }
    }
  }
}

我得到了一个我不理解的错误:变量x可能没有被初始化

为什么x不开始呢?

EN

回答 7

Stack Overflow用户

发布于 2014-10-22 23:59:37

要解决这个问题:您只需初始化x,它当前未初始化。要初始化一个变量,你必须给它赋值。例如x = 0;

然而,这仍然不会使您的程序打印出正确的结果。

实现你真正想做的事情的一种方法是迭代98到266之间的数字,当它们被7整除时打印出来。

for(int y = 98; y <= 266; ++y) if (y % 7 == 0) System.out.println(y);

或者,您可以从98 (14 * 7)开始,然后将其递增7,并在执行过程中进行打印。

代码语言:javascript
复制
int y = 98;
while(y <= 266) {
  System.out.println(y);
  y+=7 
}
票数 3
EN

Stack Overflow用户

发布于 2014-10-22 23:55:08

您需要读取x的值或自己初始化它。之所以显示此错误,是因为程序可能会在x未初始化的情况下完成。

只需对其进行初始化:

代码语言:javascript
复制
int x = 0;

或从扫描仪读取

代码语言:javascript
复制
x = entrada.nextInt();
票数 2
EN

Stack Overflow用户

发布于 2014-10-22 23:56:47

或者,您可以使用for循环,它包括初始化。

代码语言:javascript
复制
for (int x = 98; x <= 266; x++) {
    if (x % 7 == 0) {
        System.out.println(x);
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26511675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档