public class Test {
public static void main(String[] args){
double m = 2
double n = 3
使用API,Math.pow(double m,double n) -->>'m' 的 'n' 次方
System.out.println("使用API:" + Math.pow(m, n))
通过两种回圈实现的 'm' 的 'n' 次方
System.out.println("使用while实现:" + MToThePowerOfNByWhile(m,n))
System.out.println("使用for实现:" + MToThePowerOfNByFor(m,n))
}
public static double MToThePowerOfNByWhile(double m,double n)
{
double result = 1
while(n >0)
{
result *= m
n--
}
return result
}
public static double MToThePowerOfNByFor(double m,double n)
{
double result = 1
for(int i = 0i<ni++)
{
result *= m
}
return result
}
}
java 中一个数的n次方怎么写– 智联问道Math.pow(double m, double n)
是求m的n次方的
你也可以用回圈实现^_^
望采纳~
一个数的n次方怎样搜寻怎样开一个数的n次方
用Excel表格 在空格里输入 =a^n。
3的2次方:就是3x3=9 3的3次方:就是3x3x3=27 几次方,就乘几个相同的数
怎么求一个数的N次方和另外一个数的N次方的差?2^17-2^13
=2^13×2^4-2^13(把2^17拆成2^13×2^4格式)
=2^13(2^4-1)
你这题出的有点难。考试卷上应该很少能出现这种题。
这样讲明白吗?如果不明白给我空间发信息。我大二,经常线上。或者在百度hi加我为好友。随时解答
一个数的n次方怎么打?你好:
a的b次方,在电脑用a^b表示
祝愉快!
一个数的N次方怎么算约等于0,这个需要一个判断标准.
比如要求前6位小数都是0的时候可以看做约等于0,那么就是4100*0.06^n<0.000001
0.06^n<0.000001/4100
0.06^n<2.44*10^(-10)
由于0.06<1,log<0.06>x是减函式.
所以由0.06^n<2.44*10^(-10),
可知n>log<0.06>(2.44*10^(-10))
则n>7.86,则N=8.
计算可知,4100*6%^8=0.00000068864256,小数点后有6个0,可以约等于0.
其他的演算法都是一样的,先找到到底多少位是0就可以约等于0,然后一步一步计算
一个数的0.5次方应该怎么算?譬如:2一个数的0.5次方就是2分之1次方,也就是开2次根号
2的0.5次方=√2
一个数的的小数次方应该怎么算a^(1/n)就是对a开n次根号
而如果不能化为1/n次方的话
就先化为a^(m/n) 次方
得到结果为(a^m)^(1/n)
即先进行m次方,再开n次方
一个数的的小数次方应该怎么算呢?这么举个例子吧,一个数的0.5次方就是开2次根号
计算2的N次方时间限制: 1000ms内存限制: 65536kB
描述
任意给定一个正整数N(N<=100),计算2的N次方的值。
输入
输入只有一个正整数N。
输出
输出2的N次方的值。
样例输入
5
样例输出
32
参考代码
[java] view plain copy print?
import java.util.*
public class Main {
public final static int SIZE = 30
public static void main(String[] args) throws Exception {
Scanner cin = new Scanner(System.in)
int n = cin.nextInt()
int res[] = new int[SIZE + 1]
int i
for(i = 0i <SIZE++ i){
res[i] = 0
}
res[0] = 1
while(n >0){
for(i = 0i <SIZE++ i){
res[i] *= 2
}
for(i = 0i <SIZE++ i){
if(res[i] >9){
res[i + 1] += res[i] / 10
res[i] %= 10
}
}
n --
}
boolean bl = false
StringBuffer bf = new StringBuffer()
for(i = SIZEi >= 0-- i){
if(res[i] != 0 || bl){
bf.append(res[i])
bl = true
}
}
System.out.println(bf)
}
}
根据高位低位改进的代码:
[java] view plain copy print?
/*
* Title :power 2
* From :http://blog.csdn.net/binfeihan/article/details/6858655
* Time :2011-10-11 21:10PM
* Author :Eric Zhou,binfeihan
* Email :[email protected]
*/
import java.io.BufferedReader
import java.io.IOException
import java.io.InputStreamReader
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader cin = new BufferedReader(new InputStreamReader(System.in))
int n = Integer.parseInt(cin.readLine().trim())
System.out.println(my_power_2(n))
//System.out.println(Long.MAX_VALUE)
//System.out.println(Long.MIN_VALUE)
}
public static StringBuffer my_power_2(int N){
StringBuffer v = new StringBuffer("")
long num[] = new long[2]
num[1] = 1
if(N >62){
num[0] = 1
num[0] = num[0]<<(N - 62)
num[1] = num[1]<<62
String s = String.valueOf(num[1])
int size = 30,i = 0,j = 0
long n[] = new long[size + 1]
//System.out.println(num[0]+" "+s)
for(i = s.length() - 1i >= 0-- i){
n[j ++] = (long) (num[0] * (s.charAt(i) - '0'))
//System.out.println(n[j - 1])
}
for(i = 0i <size++ i){
while(n[i] >9){
n[i + 1] += n[i] / 10
n[i] %= 10
}
}
boolean bl = false
for(i = sizei >= 0-- i){
if(n[i] != 0 || bl){
v.append(n[i])
bl = true
}
}
}else{
num[1] = num[1] <<N
v.append(String.valueOf(num[1]))
}
return v
}
}
java中通常进行数学运算的东西都在Math类中,求函数的幂次方就是Math类中的pow方法:public static double pow(double a, double b), 返回第一个参数的第二个参数次幂的值。
例如求2的3次方,代码如下:
public class test {
public static void main(String[] args) {
double a= Math.pow(2, 3)
}
}
运行结果为8
扩展资料:
Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
与 StrictMath 类的某些数学方法不同,并非 Math 类所有等价函数的实现都定义为返回逐位相同的结果。此类在不需要严格重复的地方可以得到更好的执行。
默认情况下,很多 Math 方法仅调用 StrictMath 中的等价方法来完成它们的实现。建议代码生成器使用特定于平台的本机库或者微处理器指令(可用时)来提供 Math 方法更高性能的实现。这种更高性能的实现仍然必须遵守 Math 的规范。
实现规范的质量涉及到两种属性,即返回结果的准确性和方法的单调性。浮点 Math 方法的准确性根据 ulp(units in the last place,最后一位的进退位)来衡量。对于给定的浮点格式,特定实数值的 ulp 是包括该数值的两个浮点值的差。
当作为一个整体而不是针对具体参数讨论方法的准确性时,引入的 ulp 数用于任何参数最差情况下的误差。
如果一个方法的误差总是小于 0.5 ulp,那么该方法始终返回最接近准确结果的浮点数;这种方法就是正确舍入。一个正确舍入的方法通常能得到最佳的浮点近似值;然而,对于许多浮点方法,进行正确舍入有些不切实际。
相反,对于Math 类,某些方法允许误差在 1 或 2 ulp 的范围内。非正式地,对于 1 ulp的误差范围,当准确结果是可表示的数值时,应该按照计算结果返回准确结果;否则,返回包括准确结果的两个浮点值中的一个。对于值很大的准确结果,括号的一端可以是无穷大。
除了个别参数的准确性之外,维护不同参数的方法之间的正确关系也很重要。
因此,大多数误差大于 0.5 ulp 的方法都要求是半单调的:只要数学函数是非递减的,浮点近似值就是非递减的;同样,只要数学函数是非递增的,浮点近似值就是非递增的。并非所有准确性为 1 ulp 的近似值都能自动满足单调性要求。
参考资料:
https://docs.oracle.com/javase