java - 简单的 Java 错误

标签 java coding-style

这是一个java中的阶乘程序,它不工作,请让我知道错误。谢谢!

class Fact {
   public static void main(String[] args) {

      int i=5,num=1;

      while(i>1) {
         num=num*i;
      }
      i--;

      System.out.println("Value: " + num);      
   }
}

最佳答案

当变量 i 应该位于 while 循环内部时,您可以在其外部减少该变量。

  while(i>1)
  {
     num=num*i;
  }
  i--;

应该是:

  while(i>1)
  {
     num=num*i;
     i--;
  }

您当前的代码表示当 *i* 大于 1 时进行乘法。问题是 i 总是大于 1,因为你从不减去它。

关于java - 简单的 Java 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7937798/

相关文章:

ios - 从 XCode 4.2 到 4.3,新的 ViewController 类 .m 文件的定义不同。为什么?

c - (MS Visual Studio) c 中按成员名称初始化 const typedef 结构

c# - 如何在代码中命名iOS相关元素?

java - Android - 如何在 android 中将字符串转换为 utf-8

java - sqlite DB 内带方括号的数据

java - 如何对使用 javafx 文件选择器的方法进行单元测试

javascript - knockout 带有继承数据的 js 嵌套模型

java - 列出对象 - 最佳实践

java - 常规实现中如何改变轨迹球的中心?

java - 在 DAO 类上使用事务注释时 Hibernate session 关闭