java - 如何将幂函数添加到 sigma

标签 java user-interface math

我编写了这段代码来计算正除数的总和,并且所有值都必须是 a 的幂。

例如:

sigma(0,14) = 1^0 + 2^0 + 7^0 + 14^0 = 4;
sigma(2,12) = 1^2 + 2^2 + 3^2 + 4^2 + 6^2 + 12^2 = 210. 
sigma(a, b).

我尝试过不同的版本,但不知道如何添加电源功能。

try {
    int a = Integer.parseInt(input1.getText());
    int b = Integer.parseInt(input2.getText());
        int result1 = 0;
        for (int i = 2; i <= Math.sqrt(b); i++) 
        { 
            if (b % i == 0) 
            {  
               if (i == (b / i)) 
               result1 += i; 
               else
               result1 += (i + b / i); 
               } 
               } 
        result.setText(String.valueOf(result1 + b + 1));       
}
}

最佳答案

在 Java 中,^ 字符表示 XOR。

power 功能由 Math.pow() 提供方法。

因此 3^2 将是 Math.pow(3, 2)

如果你想自己实现整数,你可以简单地这样做:

double power(int a, int b) {
  int pow = (b < 0) ? -b : b;

  double result = 1;
  for (int i = 0; i < pow; i++) {
    result *= a;
  }

  return (b < 0) ? 1 / result : result;
}

但我自己不会这么做。对于浮点来说,它变得有点复杂,而 Java 有一个原生的底层实现,速度要快得多。

关于java - 如何将幂函数添加到 sigma,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54200183/

相关文章:

java - 没有参数分支的 void 方法的测试用例

ios - 每次在按钮中完成点击时执行一个方法

java - 如何判断套接字是否已断开连接(Java)

java - Rally java Rest API - 处理此请求期间忽略 JSON 元素

java - Spring boot userRepository.findAll() 显示太多次并导致 stackoverflow 错误

java - removeAllViews() 不删除 TableLayout 中的 TableRow 子级

java - 如何更改 Java 中按下/单击/选择按钮的外观?

PHP 数学运算符

python - 使用 sympy 求解具有复系数的多项式

c++ - 从平面方程绘制任意平面,OpenGL