取乙個數的前幾位

2022-08-02 01:03:14 字數 384 閱讀 5012

先看對數的性質,loga(b^c)=c*loga(b),loga(b*c)=loga(b)+loga(c);

(每次給的數字數都不確定,通過取對數變得很簡單)

假設給出乙個數10234432,用科學計數法1.0234432*10^7表示,那麼log10(10234432)=log10(1.0234432*10^7)=log10(1.0234432)+7;

log10(1.0234432)就是log10(10234432)的小數部分.

log10(1.0234432)=0.010063744

10^0.010063744=1.023443198

那麼要取幾位就很明顯了吧~

先取對數(對10取),然後得到結果的小數部分bit,pow(10.0,bit)

取乙個大數的前幾位

此思想借助2.2.1來幫助理解 先看對數的性質,loga b c c loga b loga b c loga b loga c 假設給出乙個數10234432,那麼log10 10234432 log10 1.0234432 10 7 log10 1.0234432 7 log10 1.02344...

輸入乙個數,判斷它是幾位數?

printf 請輸入乙個數 n int n,r 定義變數r scanf s d n int a n 在輸出的時候n值變為0,所以在這先保留n值 int count 0 變數count記錄數的位數 do while n 0 printf n printf d是 d位數 n a,count 第二種方法 ...

求乙個數約數的個數

求約數的個數 計算乙個整數的約數個數 輸入格式 輸入乙個整數 輸出格式 輸出一行,為輸入整數的約數的個數 樣例輸入 10 樣例輸出 4ac import math number int raw input count 0 sqrt float math.sqrt number if number s...