您的位置:首页 > 其它

采用数学方法,巧妙运用循环,求解X的三次方的值

2015-05-12 16:36 393 查看
段奇妙的计算x^3的程序。它的原理如下:



由上可知,幂函数的增加量第次加6,其初始值为1.所以,就可以把程序写成这样来计算立方:

int f(x) {
int c = 0, d = 1, e = 6;
while(x--) {
c += d;
d += e;
e += 6;
}
reutnrn c;
}
同理,根据这个思路,还可以写出计算平方的类似的程序:
例如代码如下:
public class Main {

public static void main(String[] args) {

int x = 5, c = 0, d = 1, e = 6;
while(x-->0){

c += d;
d += e;
e += 6;

}
System.out.println(c);

}

}


x2-(x-1)2=2*x-1 , 平方函数的增加量,初始值为1
2*x-1 – [2*(x-1)-1]=2 ,平方函数增加量的增加量,是常数2
所以下面这个程序可以计算输入的正整数的平方:
#include <stdio.h>

int f(int x) {
int c = 0, d = 1;
while(x--) {
c += d;
d += 2;
}
return c;
}

int main() {
int n;
while(scanf("%d", &n), n) {
printf("%d/n", f(n));
}
return 0;
}


关于此有因式分解公式:an-bn=(a-b)(an-1+an-2b+…+abn-2+bn-1),理论上应该都可以计算。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐