javascript 如何计算几次方
底数和结果已知,比如x^y=z,已知x=2,z=8。求x。通过Javascript应该怎么实现?sqrt返回的是底数x,pow返回的是结果z。不知哪个方法能返回y?多谢高...
底数和结果已知,比如x^y=z,已知x=2,z=8。求x。 通过Javascript应该怎么实现?sqrt返回的是底数x,pow返回的是结果z。不知哪个方法能返回y? 多谢高手相助!
展开
8个回答
展开全部
/*
* 求y在数学中是求对数,数学公式是y=log(x)z
* 但是js中没有log函数,只有log(e)的运算
* 根据数学公式 y = log(x)z = (log(n)z)/(log(n)x)
* 所以可以 y = log(x)z = (log(e)z)/(log(e)x)
* 转化为js var y = Math.log(z)/Math.log(x);
*/
function mathLog(x, z){
var logx = Math.log(x);
var logz = Math.log(z);
return logz/logx;
}
* 求y在数学中是求对数,数学公式是y=log(x)z
* 但是js中没有log函数,只有log(e)的运算
* 根据数学公式 y = log(x)z = (log(n)z)/(log(n)x)
* 所以可以 y = log(x)z = (log(e)z)/(log(e)x)
* 转化为js var y = Math.log(z)/Math.log(x);
*/
function mathLog(x, z){
var logx = Math.log(x);
var logz = Math.log(z);
return logz/logx;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给你写了个最简单的,只能求最简单的,而且没有做异常处理。不能求1/2这样的值也不能求-的。
<script language=javascript>
function cifang(x,z)//自定义函数
{
var i=0;//临时变量
var s=1;//结果
while(s<z)//如果结果不等于参数2执行循
环
{
s=s*x;//结果乘于参数1
i+=1;//结果自增1
}
return(i);//返回结果
}
alert(cifang(3,9));//调用函数
</script>
<script language=javascript>
function cifang(x,z)//自定义函数
{
var i=0;//临时变量
var s=1;//结果
while(s<z)//如果结果不等于参数2执行循
环
{
s=s*x;//结果乘于参数1
i+=1;//结果自增1
}
return(i);//返回结果
}
alert(cifang(3,9));//调用函数
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
</head>
<body>
</div>
<script type="text/javascript">
var x = prompt('请输入底数,不要输入1,你会后悔的');
var zBegin = z = prompt('请输入结果') ;
var y = 0;
while(z >= x)
{
z /= x;
y++;
}
if(z != 1){
alert('不是次方算数')
}else alert('以' + x + '为底' + zBegin +'为结果的次方数是' + y);
</script>
</body>
</html>
<!-- 没发现具体方法,给你一个函数实现的办法,可直接运行 -- >
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
</head>
<body>
</div>
<script type="text/javascript">
var x = prompt('请输入底数,不要输入1,你会后悔的');
var zBegin = z = prompt('请输入结果') ;
var y = 0;
while(z >= x)
{
z /= x;
y++;
}
if(z != 1){
alert('不是次方算数')
}else alert('以' + x + '为底' + zBegin +'为结果的次方数是' + y);
</script>
</body>
</html>
<!-- 没发现具体方法,给你一个函数实现的办法,可直接运行 -- >
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2018-02-15 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:117538
获赞数:517201
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注
展开全部
1)如何计算乘方
题一:3的4次方(不会打,请原谅 ==!!!)
3的4次方=3*3*3*3
var a = Math.pow(3,4);
console.log(a);
说明:Math.pow()是用来计算乘方的语法
注意:Math的M是大写;
题二:3的4*5次方
var a =Math.pow(3,4*5);
console.log(a);
2)如何计算根号
题目:根号81
var a = Math.sqrt(81);
console.log(a);
题一:3的4次方(不会打,请原谅 ==!!!)
3的4次方=3*3*3*3
var a = Math.pow(3,4);
console.log(a);
说明:Math.pow()是用来计算乘方的语法
注意:Math的M是大写;
题二:3的4*5次方
var a =Math.pow(3,4*5);
console.log(a);
2)如何计算根号
题目:根号81
var a = Math.sqrt(81);
console.log(a);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询