Java 调用方法
我是Java的新手,开始阅读Think Java并坚持做一些练习。你介意帮我吗?非常感谢 费马的最后一个定理说,不存在这样的整数a、b和c 那 n=2时除外。编写一个名为checkFermat(inta,intb,intc,intn)的方法 将四个整数作为参数a、b、c和n,并检查 如果费马定理成立。如果n大于2,结果是 如果an+bn=cn是真的,那么程序应该打印“神圣的烟, Fermat错了!”否则程序应该打印“不,那 不管用。” 您应该假设有一个名为Java 调用方法,java,Java,我是Java的新手,开始阅读Think Java并坚持做一些练习。你介意帮我吗?非常感谢 费马的最后一个定理说,不存在这样的整数a、b和c 那 n=2时除外。编写一个名为checkFermat(inta,intb,intc,intn)的方法 将四个整数作为参数a、b、c和n,并检查 如果费马定理成立。如果n大于2,结果是 如果an+bn=cn是真的,那么程序应该打印“神圣的烟, Fermat错了!”否则程序应该打印“不,那 不管用。” 您应该假设有一个名为raiseToPow(intx,intp
raiseToPow(intx,intpow
)的方法
两个整数作为参数,并将第一个参数提升到
第二种力量。例如:
int x = raiseToPow(2, 3);
将值8赋给x,因为2^3=8
public class Buzz {}
但是我不知道如何将checkFermat中的值交给我必须调用的另一个方法raiseToPow,以及如何编写方法raiseToPow来工作。如果raiseToPow方法假设您不能在Java中使用
Math.pow()
方法,那么编写您自己的方法将是:
public int raiseToPow(int base, int powerTo){
if(power == 0){
return 1;
} else{
int result = x;
for(int i = 1; i <= powerTo; i++) {
result = result * x;
}
return result;
}
}
要检查费马定理,您可以将其用作示例,如果您愿意,可以更改数字的值:
public void checkFermat(int a, int b, int c, int n){
int x = raiseToPow(a, n);
int y = raiseToPow(b, n);
int z = raiseToPow(c, n)
if(x + y == z && n> 2){
System.out.println("Holy smokes, Fermat was wrong!");
} else{
System.out.println("No, that doesn’t work.");
}
}
希望这有帮助 谢谢你,尼尔,但这并不是我想要的。应该有一个方法checkerfermat,其中声明了4个整数-a、b、c和n,并且应该有另一个名为raisedToPow的方法,该方法将a提升到n(a^n)并用于b和c。我知道如何调用checkFermat并为其赋值,但我不知道如何编写另一个名为raiseToPow的方法,该方法使用checkFermat方法的赋值进行提升。我得到的答案是
raiseToPow()
方法,还显示了如何在checkFermat()
方法中使用它。很抱歉,我只是有点困惑,你在评论中问了什么,因为我认为我的代码符合你的要求。它起到了作用:)我只是想要一种不同的方法,因为我已经知道了,但谢谢你的确认。有一些解释和检查是好的。
public int raiseToPow(int base, int powerTo){
if(power == 0){
return 1;
}
return base * pow(base, --power);
}
public void checkFermat(int a, int b, int c, int n){
int x = raiseToPow(a, n);
int y = raiseToPow(b, n);
int z = raiseToPow(c, n)
if(x + y == z && n> 2){
System.out.println("Holy smokes, Fermat was wrong!");
} else{
System.out.println("No, that doesn’t work.");
}
}