日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

我想知道怎么求N的N次方

發布時間:2024/7/19 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 我想知道怎么求N的N次方 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我想知道怎么求N的N次方,這個數據是很大的,但是我要的是這個數據的最高位的數,應該有什么好的方法吧!
請大俠們幫幫忙吧!!(N <1000000000)


這個問題提出后,fallening同學便很快的在五分鐘內作出了解答
log_10(N^N)=N*log_10(N) 因此,log_10(N)的第一位就是你要求的:)
我在三樓看的很疑惑,于是向同學提出問題,一天之后他給出解答
N^N=10^(Nlog(N))=10^(log(N))*10^N= 10^(log(N))*1000...0(N個0)
你要最高位置的數字,只需要計算10^(log(N))的最高位即可:)
而到這里,大家很明顯就能看出這位同學的推理錯誤10^(N log(N))= 10^(log(N))*10^N。。。哈哈
哈哈,如果你和我一樣開始笑話起這個同學,那么我們就太可悲了。。。
看看樓下的朋友們是怎么做的吧,,

?

hityct1:我的想法:
根據11樓的想法,改動一下。
N^N = 10^(N*log(N))中,
由于 N <1000000000,
N*log(N)取值在[0,9000000000],沒有超出double數據的范圍,沒有益處。
設N*log(N)的整數部分為intpart,分數部分為fractpart,
則N^N = 10^(intpart + fractpart) = 10^intpart * 10^fractpart.
其中10^intpart肯定為10的倍數,不影響結果,可忽略。
所以:
10^fractpart的最高位即為結果。

不用大數,double即可滿足。?

#include <iostream>
#include <limits>
#include <cmath>
using namespace std;

int GetHighest(const double& n)
{
//求n^n的最高位
//注意:n取 1,2,3,...,1000000000

??? double intpart;
??? double fractpart = modf ( n * log10(n), &intpart);

??? //顯然分數部分在[0,1)之間,所以temp在[1,10)之間,那么整數部分即為結果
??? double temp = pow( (double)10, fractpart);

??? modf ( temp, &intpart);

??? return intpart;
}

void main()
{
??? //cout<<numeric_limits<double>::max()<<endl;
???????
??? cout<<GetHighest(1)<<endl;
??? cout<<GetHighest(2)<<endl;
??? cout<<GetHighest(3)<<endl;
??? cout<<GetHighest(4)<<endl;
??? cout<<GetHighest(5)<<endl;
??? cout<<GetHighest(6)<<endl;
??? cout<<GetHighest(4678)<<endl;
??? cout<<GetHighest(1000)<<endl;
??? cout<<GetHighest(1000000000)<<endl;
??? cout<<GetHighest(1999)<<endl;
??? cout<<GetHighest(999999999)<<endl;
}


關鍵看你專注你什么了,所以說少笑話他人,而多想想該做什么事。勤思考,多思考。
這估計也是科學的精神吧,一個人提出一個觀點,雖然有點問題,可是大家受到他的啟發,通過論證,而最終得到了答案。

轉載于:https://www.cnblogs.com/dmesg/archive/2009/08/02/1536997.html

總結

以上是生活随笔為你收集整理的我想知道怎么求N的N次方的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。