标题:一个数的x次幂之后再y次幂再z次幂········给个算法,回报专家分
只看楼主
wslhnsng
Rank: 2
等 级:论坛游民
帖 子:48
专家分:37
注 册:2009-2-20
结帖率:100%
已结贴  问题点数:10 回复次数:13 
一个数的x次幂之后再y次幂再z次幂········给个算法,回报专家分
一个数的x次幂之后再y次幂再z次幂········((n^x)^y)^z=?     比如2的2次幂之后再2次幂 (2^2)^2=16  我用for语句编写了一个实例 怕麻烦就只编写了两次幂运算的程序 但是要想得到更多次幂的结果 能不能有简单一点的算法了? 为了简便 规定所有进行运算的数都是正整数  如下是我的程序  要求大家给出更简便的算法
#include<stdio.h>
void main()
{    int x,y,z,i,j,k=1;
double s1=1.0,s2=1.0;
scanf("%d%d%d",&x,&y,&z);
for(i=1;i<=y;i++)
   s1=s1*x;
   for(j=1;j<=z;j++)
   s2=s1*s2;
   printf("%f\n",s2);

}
搜索更多相关主题的帖子: 回报 算法 专家 
2009-11-07 14:31
タンポポ
Rank: 2
等 级:等待验证会员
帖 子:30
专家分:97
注 册:2009-11-6
得分:4 
a=pow(x,y)
b=pow(a,y)
...
2009-11-07 14:35
wslhnsng
Rank: 2
等 级:论坛游民
帖 子:48
专家分:37
注 册:2009-2-20
得分:0 
大哥 给个简单的程序给我 你这样我可不给你分啊 给个简单程序吧
2009-11-07 14:37
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
得分:2 
人家不是提供思路了吗?pow(x,y)函数不会用吗?查查c语言后面的库函数命令。
还有,不要拿分来威胁别人好吗,大家都是相互学习,谁也不欠谁的
2009-11-07 16:45
wslhnsng
Rank: 2
等 级:论坛游民
帖 子:48
专家分:37
注 册:2009-2-20
得分:0 
尴尬了   我可没威胁啊 那个库函数我确实没用过啊 我的书上简单的带过 连个例子都没有啊 实在无语
2009-11-07 20:44
wslhnsng
Rank: 2
等 级:论坛游民
帖 子:48
专家分:37
注 册:2009-2-20
得分:0 
#include<stdio.h>
#include<math.h>
void main()
{
double a=0,b=0,c=0,d=0;
double s1=0,s2=0,s3=0;                     
scanf("%d%d%d%d",a,b,c,d);
s1=pow(a,b);
s2=pow(s1,c);
s3=pow(s2,d);
printf("%lf",s3);
}
 我自己编写了这样的一个程序 为什么用vc6.0运行会出现这样的情况啊
2009-11-07 21:18
lijm1989
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:珠海
等 级:贵宾
威 望:12
帖 子:675
专家分:2844
注 册:2009-10-14
得分:4 
pow(x,y)就是x的y次方的意思,函数原型:double pow(double x,double y);
二楼的仁兄说的很明白了  
a=pow(x,y)   //  把x的y次方的值赋给a;
b=pow(a,z)   //  把a的z次方的值赋给b;(a的z次方即(x的y次方)的z次方) (x^y^z)
不就是你想的么??
    没见过那个函数的话可以去查一下,百度也好,msdn也好,学习最主要的是主动,不知道怎么做的时候,别人一个提示就够了,
    C语言常用的函数不多,多去了解下,我学matlab的时候,它的函数是很多的,我在论坛提问,别人回答一个‘ help 函数名’
我就知道怎么办了···
    楼上的都是为你好··如果直接给你代码,对他们来说没什么,也不会太麻烦,但对你的影响就大了,你很可能会养成不想思考直接要代码的习惯,这个问题有多重要LZ好好想下,···
    另外,我们回答问题不是说是要专家分,那只能说是一种鼓励,没有专家分拿的贴我们就不理了吗》》??你去论坛上看看是不是这回事···
我们只是想帮助下能帮助的人,因为我们也需要比我们强的人帮我们,这是一个良性循环,不是说可以靠专家分来维持,
    说那么多只是想LZ端正下自己这方面的态度····
2009-11-07 21:18
lijm1989
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:珠海
等 级:贵宾
威 望:12
帖 子:675
专家分:2844
注 册:2009-10-14
得分:0 
scanf("%d%d%d%d",a,b,c,d);   不要忘记读址符&···
改为scanf("%d%d%d%d",&a,&b,&c,&d);
2009-11-07 21:19
wslhnsng
Rank: 2
等 级:论坛游民
帖 子:48
专家分:37
注 册:2009-2-20
得分:0 
好了 谢谢了
2009-11-07 21:28
cnbj
Rank: 2
等 级:论坛游民
威 望:1
帖 子:67
专家分:55
注 册:2008-11-4
得分:0 
程序代码:
#include<stdio.h>
#include<math.h>
int main()
{
  double a=0,b=0,c=0,d=0;
  double s1=0,s2=0,s3=0;                      
  scanf("%d%d%d%d",&a,&b,&c,&d);
  s1=pow(a,b);
  s2=pow(s1,c);
  s3=pow(s2,d);
  printf("%lf\n",s3);
  return 0;
}
2009-11-07 21:33



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-291380-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023842 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved