数学ナビゲーター掲示板

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 発言ランク ファイル一覧 検索 過去ログ

■52508 / 1階層)  進数の表現
□投稿者/ WIZ 一般人(1回)-(2024/04/17(Wed) 13:34:28)
    # らすかるさんが既にコメントされていますが、私も一生懸命下書きを作ったので書き込ませて頂きます。

    質問の問題文が曖昧だと思います。

    Mが定義されていないので、何の値かが不明です。
    > 例:10進数で0から999999までの整数を表現するコストはlog[10](100000)*10

    「例」での数の範囲「10進数で0から999999まで」に含まれる整数の個数は1000000個で、
    「log[10](100000)*10」の100000は0が1つ(1桁)少ないのは何故? 書き間違い???

    以下、私の想像で補った解釈で回答しますので、話半分に聞いといてください。
    ・「b進数」「b(>=2)」ということなので、bは2以上の整数である。
    ・Mを固定して、log[b](M+1)*bを最小にするbを求めれば良い。

    自然対数をlnで表すことにします。b ≧ 2に対して
    f(b) = log[b](M+1)*b = ln(M+1)*{b/ln(b)}とおきます。

    f'(b) = ln(M+1)*{(1*ln(b)-b*(1/b))/(ln(b)^2)} = ln(M+1)*{(ln(b)-1)/(ln(b)^2)}
    eを自然対数の底とすれば、
    2 ≦ b < eで、f'(b) < 0なので、f(b)は減少
    b = eで、f'(b) = 0なので、f(b)は極小
    e < bで、f'(b) > 0なので、f(b)は増加

    2 < e < 3かつ、bは整数なので、b = 2またはb = 3でf(b)は最小になります。
    f(2) = ln(M+1)*{2/ln(2)}
    f(3) = ln(M+1)*{3/ln(3)}
    ⇒ f(2)/f(3) = (2/3){ln(3)/ln(2)} = log[2](3^(2/3)) = log[2](9^(1/3)) > log[2](8^(1/3)) = log[2](2) = 1
    ⇒ f(2) > f(3)

    よって、b = 3のとき、f(b) = log[b](M+1)*bは最小になります。
    # f(b)が最小になるbの値がMに依存しないので、問題文がおかしい気がする。
記事引用 [メール受信/OFF] 削除キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←進数の表現 /tass →Re[2]: 進数の表現 /らすかる
 
上記関連ツリー

Nomal 進数の表現 / tass (24/04/17(Wed) 10:14) #52506
Nomal Re[1]: 進数の表現 / らすかる (24/04/17(Wed) 13:11) #52507
│└Nomal Re[2]: 進数の表現 / tass (24/04/17(Wed) 14:10) #52509
Nomal 進数の表現 / WIZ (24/04/17(Wed) 13:34) #52508 ←Now
  └Nomal Re[2]: 進数の表現 / らすかる (24/04/17(Wed) 17:03) #52510

All 上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信

Mode/  Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 発言ランク ファイル一覧 検索 過去ログ

- Child Tree -
Edit By 数学ナビゲーター