令和2年秋期 午前 問1について
広告
Kさん
(No.1)
令和2年秋期の午前問1について、解説を読んでもうまく納得できなかったので、
他の方のご意見や解説を伺いたいです。
「最小値同士(10^D-1と2^B-1)及び最大値同士(10^Dと2^B)はほぼ等しい」となるのは何故でしょうか。
そもそも、この場合の最小値・最大値とは何を表すのでしょうか?
もし初歩的なことだったらすみません、よろしくお願いします。
他の方のご意見や解説を伺いたいです。
「最小値同士(10^D-1と2^B-1)及び最大値同士(10^Dと2^B)はほぼ等しい」となるのは何故でしょうか。
そもそも、この場合の最小値・最大値とは何を表すのでしょうか?
もし初歩的なことだったらすみません、よろしくお願いします。
2022.07.27 21:30
Howitzerさん
(No.2)
まず、「最小値・最大値」は同じ桁数での最小値と最大値のことです。
※10進数4桁の最小値は1000で最大値は9999ということ
D=4、B=11の場合を考えると
最小値は1000と1024で確かにほぼ等しいのですが、
最大値の9999と2047は、およそ5倍の値だから....
ほぼ等しいと言うのは無理がある→これでは納得できない
解説が言いたいのは下記のようなことではないかと....
10^(D-1)≦x<10^D → x≒10^D
2^(B-1)≦x< 2^B → x≒ 2^B
xを媒介変数にすると 10^D≒2^B となる。
あとは解説のとおりです。
※10進数4桁の最小値は1000で最大値は9999ということ
D=4、B=11の場合を考えると
最小値は1000と1024で確かにほぼ等しいのですが、
最大値の9999と2047は、およそ5倍の値だから....
ほぼ等しいと言うのは無理がある→これでは納得できない
解説が言いたいのは下記のようなことではないかと....
10^(D-1)≦x<10^D → x≒10^D
2^(B-1)≦x< 2^B → x≒ 2^B
xを媒介変数にすると 10^D≒2^B となる。
あとは解説のとおりです。
2022.07.28 15:50
boyonboyonさん
★AP シルバーマイスター
(No.3)
解説の
10^(D-1)≦x<10^D
2^(B-1)≦x<2^B
の次に、対数をとります。
D-1≦log x <D
(B-1)*log2≦log x <B*log2
になります。
logxが、Dになる手前までxを大きくしたとき、DとB*log2の誤差は、小さなものになっていると思います。(B*log2の小数部分を切り上げまたは切り捨てるとDになるかな。)
なので、D≒B*log2 が回答になるかと。
解説の最大値、最小値は、範囲の終端の意味ではないかと思います。
でも、そう考えるとほぼ等しくならないんですよね???
10^(D-1)≦x<10^D
2^(B-1)≦x<2^B
の次に、対数をとります。
D-1≦log x <D
(B-1)*log2≦log x <B*log2
になります。
logxが、Dになる手前までxを大きくしたとき、DとB*log2の誤差は、小さなものになっていると思います。(B*log2の小数部分を切り上げまたは切り捨てるとDになるかな。)
なので、D≒B*log2 が回答になるかと。
解説の最大値、最小値は、範囲の終端の意味ではないかと思います。
でも、そう考えるとほぼ等しくならないんですよね???
2022.07.28 16:47
名波さん
(No.4)
桁数の話をしているので定数倍程度のズレは無視して桁数がほぼ同じことを等しいと言っているのかと
計算量の話のときも大事なのはあくまでオーダーなので定数倍のズレは無視してますよね。それと同じようなことじゃないでしょうか
計算量の話のときも大事なのはあくまでオーダーなので定数倍のズレは無視してますよね。それと同じようなことじゃないでしょうか
2022.07.30 03:54
Howitzerさん
(No.5)
> 桁数がほぼ同じことを等しいと言っているのかと
確かに解説では、10進数の1桁と2進数の1桁がほぼ等しいと(間接的に)言ってますね。
1桁がほぼ等しいなら、ある数(正の整数)を表したときの桁数もほぼ等しくなるはずです。
桁数がほぼ等しいなら、その時点で D≒B が解答なのでは?
しかし、問題の答えも解説の結論も D≒B×log2 なんですよ。
10進数は1桁増やすと10倍になるのに対し、2進数では1桁増やしても2倍にしかならないです。
3桁増やしても8倍です。
2進数は3.32桁ぐらい増やさないと釣り合わないので、B≒D×3.32
つまり D≒B÷3.32 → D≒B×log2 です。
解説は、10進数の1桁と2進数の1桁がほぼ同じであること(D≒B)を前提に
D≒B×log2 を説明しているので辻褄が合わない(つまり間違っている)と思います。
2022.07.30 13:43
名波さん
(No.6)
私の主張は10進数の1桁と2進数の1桁がほぼ等しい、というものではありません。
あなたのおっしゃっていた「最大値の9999と2047は、およそ5倍の値だから....ほぼ等しいと言うのは無理がある」というのは桁数のみを考えると別に無理ではなく定数倍程度のずれなのでほぼ等しいと言える、というものです。
あなたのおっしゃっていた「最大値の9999と2047は、およそ5倍の値だから....ほぼ等しいと言うのは無理がある」というのは桁数のみを考えると別に無理ではなく定数倍程度のずれなのでほぼ等しいと言える、というものです。
2022.07.30 17:07
Howitzerさん
(No.7)
名波さん
「桁数のみを考えると」って、もしかして 9999 も 2047 も4桁だからですか?
「桁数のみを考えると」って、もしかして 9999 も 2047 も4桁だからですか?
2022.07.30 19:52
Kさん
(No.8)
スレ主なのに反応が遅くなってしまってすみません!
色々と議論してくださってありがとうございます。
浅学で申し訳ないのですが、皆様の回答を読んで色々と考えてみても
きちんと理解できる落としどころを見つけられませんでした。
No.2とNo.3の返信で言及していただいている、
自分が納得できない理由は上記の通りで合っています。
xを正の整数としての式なので、桁数ではなく値が等しいと書かれているように読めて混乱していました。
とりあえず一旦この問題は置いておいて、そのうち自分の納得できる解を見つけられるように努めようかと思います。
スレ主は返信したりしなかったりになるかもしれませんが、本スレッドは当該問題の議論に使っていただいても構いません。
まとめてのお返事になって恐縮ですが、皆様ご回答ありがとうございました!
色々と議論してくださってありがとうございます。
浅学で申し訳ないのですが、皆様の回答を読んで色々と考えてみても
きちんと理解できる落としどころを見つけられませんでした。
No.2とNo.3の返信で言及していただいている、
>最大値の9999と2047は、およそ5倍の値だから....
>ほぼ等しいと言うのは無理がある→これでは納得できない
>解説の最大値、最小値は、範囲の終端の意味ではないかと思います。
>でも、そう考えるとほぼ等しくならないんですよね???
自分が納得できない理由は上記の通りで合っています。
xを正の整数としての式なので、桁数ではなく値が等しいと書かれているように読めて混乱していました。
とりあえず一旦この問題は置いておいて、そのうち自分の納得できる解を見つけられるように努めようかと思います。
スレ主は返信したりしなかったりになるかもしれませんが、本スレッドは当該問題の議論に使っていただいても構いません。
まとめてのお返事になって恐縮ですが、皆様ご回答ありがとうございました!
2022.08.02 19:54
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。