プロが教えるわが家の防犯対策術!

やりなおしのSPI問題に頭を痛めています。10進法→n進法、n進法→10進法、というやり方はそれぞれ理解できますが、以下のような応用になると、うまくできません。どなたか、宜しくお願いします!

例題1
3進法で3桁の数は何個あるか。
(書き出していくとわかるのですが、それ以外に何か公式のようなもので求める方法がありますでしょうか。他の進数になるとたちまち困ります。)

例題2
3進法の112201は5進法でいくらか。
(いったん10進法に直さずに、n進法→m進法への変換をダイレクトに行なえ、効率的でわかりやすい方法はありますでしょうか。)

このQ&Aに関連する最新のQ&A

A 回答 (6件)

ヒント


例題1
一応正整数(固定小数点)と仮定します。
3進法の最大数は(222)3=2*3^2+2*3^1+2*3^0 =18+6+1=25
最小は(000)3=0ですから何個か分かりますね?

例題2→3進法→10進法→5進法
(112201)3=4*3^4+8*3^2+1=4*9^2+8*9+1=397
=79*5+2
=(15*5+4)*5+2
=((3*5+0)*5+4)*5+2
=>5進法

>n進法→m進法への変換をダイレクトに行なえ、効率的でわかりやすい方法はありますでしょうか。
一般的には良い方法ありません。
ただし、
2進法-4進法,2進法-8進法,2進法-16進法
3進法-9進法
4進法-16進法
5進法-25進法
のようにn進法と(n^k)進法の間ではダイレクトに変換できます。
ですから、
計算機のソフトや情報処理を扱う技術者の間では
2進法-8進法,2進法-16進法
が良く使われてきたし、
また2進法と10進法の変換を見かけ上で行う2進化10進法やV4のIPアドレス(32ビットの2進数)をドット区切り10進数の4組で表すことが行われたりしているわけです。

これらは一般的にn進法の変換が簡単にいかないために変換しやすい変換だけあつかったり、見かけ上2進数を10進数との関連付ける便法が採用されているわけです。
決して質問者さんだけが任意のn進法を別のm進法に変換するのに困っているわけではないですね。
    • good
    • 3

#4です。


>割り算の最後の<+1>のところが<+2>の単純ミスのようです。
 確かに明らかな単純ミスね。自らややこしいと書いたダイレクト変換での計算ミスを出してしまったようでお恥ずかしい限りです。

 oyaoya65さん、ご指摘ありがとうございました。
    • good
    • 0

#3です。


A#2,A#3では
(112201)3 =(397)10
となっています。

私もA#4さんのダイレクト割り算もやっていましたが計算ミスする恐れがあったので回答から省きました。
ダイレクト割り算も出来るのはA#4さん回答の通りですが

112201
の割り算の最後の<+1>のところが<+2>の単純ミスのようです。
<+1>だと10進数に直すと396になります。
(確認してみてください。)
そこだけ直せばダイレクトな割り算でもいけますね。

>=2221*12+1
>=(120*12+11)*12+1
>=((10*12+0)*12+11)*12+1

最後の式はA#3の
>=((3*5+0)*5+4)*5+2
の式に対応しています。
    • good
    • 1

例題2


ややこしいので不要と思われるけど、ダイレクト変換方法。

十進法以外での計算(割り算の筆算)で混乱しないなら、
3進法のまま5(3進法では12)で割りつづけ、
余りを順に出せば5進法の各桁が出てきます。
112201
=2221*12+1
=(120*12+11)*12+1
=((10*12+0)*12+11)*12+1
以下は答えになるので略

上の説明で混乱するor難しいようだったら、素直に十進を経由することをお薦めします。
何進数での変換も同じ要領でできることは確認していますが、10進数でない計算を苦もなくできる人向けかも。
    • good
    • 1

たびたびすみません。


NO.1です。

例題2ですが、やはり、一度10進数に直してやるのが一番分かりやすくて間違いが少ない方法だと思います。

112201(3)
=(3^5x1)+(3^4x1)+(3^3x2)+(3^2x2)+(3^1x0)+(3^0x1)
=397(10)

この397を5進数に直してあげればよいかと思います。
    • good
    • 2

こんにちは


例題1のほうだけですが・・・・・

3進法ということは、0・1・2の3つの数字のみをつかいますよね。
3桁ということは、この3つの数字がそれぞれ3回づつ使われる、ということなので、3桁の数は【 3×3×3 】個。
と、言いたいところですが、しかし、3桁目(一番大きい桁)に「0」を使うことはありませんので、
結局は【 2×3×3 】個、3桁の数がある、ということになります。

これでいいんじゃないかな、と思いますが・・・・。
例題1だけの回答ですいません。
    • good
    • 1

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q5進法を10進法への直し方

5進法の342は、2進法ではいくらかって問題ですが、
2進法では時間がかかりすぎるので、5進法を10進法に直す過程を教えていただけませんでしょうか?

Aベストアンサー

5進法表記では、右端からそれぞれ、
1の位、5の位、25の位、125の位、……を表しています。

たとえば、5進法で3141だったら、
3×125 + 1×25 + 4×5 + 1×1 = 421
より、10進法では421となります。

Q○進法とかの計算方法。

中学の時習ったのですが、2進法とか3進法の計算方法の計算方法って、どうやるんですか?
確か、10進法からその変更する計算があるったと思ったのですが…。

Aベストアンサー

こんにちは

10進法からn進法への変換ですね。
小学生の時、割り算で、商と余りをやりましたよね。
これを使います。
10進法の100を2進法にする場合、
100÷2=50...0
50÷2=25...0
25÷2=12...1
12÷2=6...0
6÷2=3...0
3÷2=1...1
1÷2=0...1
よって10進法の100は2進法の1100100です。(余りを下から並べただけです。)

同様に3進法では
100÷3=33...1
33÷3=11...0
11÷3=3...2
3÷3=1...0
1÷3=0...1
よって、3進法の10201です。

Q10進法で表された数0.12を5進法で表せ。

整数を10進法から5進法にするのは出来るのですが少数を変換するのが、
できません。どうすればいいか教えてください。

Aベストアンサー

1回5倍して1になる量は五進法で表すと  0.1
2回5倍して1になる量は五進法で表すと  0.01
3回5倍して1になる量は五進法で表すと  0.001

0.12 × 5 = 0.6  ・・・  五進法の小数第一位は   0(1回5倍して0)
0.6 × 5 = 3.0  ・・・  五進法の小数第一位は   3(2回5倍して3)
 ※これ以降は、小数点以下がすべて0なのでこれ以上は変化がないため、これで終了。

 従って、  0.03  がこたえです。

Q10進数から3進数

初めてお世話になります。 
コンピューターの基本的な部分の勉強をしているのですが、
10進数から3進数の変換のやり方が分からなくて、
ホームページなどを見たのですが、ほとんどよく分から
なかったので、どなたか教えてください。 
2つの数字なのですが、よろしくお願いします。

・876
・6547

Aベストアンサー

基本的に10進数をn進数に変換するときはちょっと文章で書くのは難しいのですが
例えば15という10進数の数字がある場合n進数で表すとき
n|15・・・あまりa
n|上の商・・・あまりb
この計算を商が0からn-1の数字になるまで計算し仮に次の商で終わったときは
最後の商,b,a
と数字を並べればn進数に変換完了です。
試しに12を3進数に直してみると
3|15・・・0
3|5・・・2
3|1
となり120となります.
検算:1×3^2+2×3^1+0×3^0=9+6+0=15(nの0乗はすべて0)
これさえ分かればどんな進数でも変換できてしまいます。
ちなみに10以上の進数に変換するときは10以上の数字にアルファベットのA~Zをそれぞれ割り当てます。(37以上は確か小文字になったはず)
(10:A、11:B、12:C、・・・)
最後にしつこいぐらいに876
3|876・・・0
3|292・・・1
3|97・・・1
3|32・・・2
3|10・・・1
3|3・・・0
3|1
なので1012110
13進数でも17進数でも何でも試してみてください。(ちょっとおもしろい)
コンピュータって言うのは答えが出せればいいじゃなくてそこまでのプロセスを理解しないと意味ないです。
今回紹介したのもなぜそうなるのか質問者さんがんばって考えてみてください!

基本的に10進数をn進数に変換するときはちょっと文章で書くのは難しいのですが
例えば15という10進数の数字がある場合n進数で表すとき
n|15・・・あまりa
n|上の商・・・あまりb
この計算を商が0からn-1の数字になるまで計算し仮に次の商で終わったときは
最後の商,b,a
と数字を並べればn進数に変換完了です。
試しに12を3進数に直してみると
3|15・・・0
3|5・・・2
3|1
となり120となります.
検算:1×3^2+2×3^1+0×3^0=9+6+0=15(nの0乗はすべて0)
これさ...続きを読む

Q「以降」ってその日も含めますか

10以上だったら10も含める。10未満だったら10は含めない。では10以降は10を含めるのでしょうか?含めないのでしょうか?例えば10日以降にお越しくださいという文があるとします。これは10日も含めるのか、もしくは11日目からのどちらをさしているんでしょうか?自分は10日も含めると思い、今までずっとそのような意味で使ってきましたが実際はどうなんでしょうか?辞書を引いてものってないので疑問に思ってしまいました。

Aベストアンサー

「以」がつけば、以上でも以降でもその時も含みます。

しかし!間違えている人もいるので、きちんと確認したほうがいいです。これって小学校の時に習い以後の教育で多々使われているんすが、小学校以後の勉強をちゃんとしていない人がそのまま勘違いしている場合があります。あ、今の「以後」も当然小学校の時のことも含まれています。

私もにた様な経験があります。美容師さんに「木曜以降でしたらいつでも」といわれたので、じゃあ木曜に。といったら「だから、木曜以降って!聞いてました?木曜は駄目なんですよぉ(怒)。と言われたことがあります。しつこく言いますが、念のため、確認したほうがいいですよ。

「以上以下」と「以外」の説明について他の方が質問していたので、ご覧ください。
http://oshiete1.goo.ne.jp/kotaeru.php3?qid=643134

Q16進数から10進数への変換

16進数の77が16×14+7だということはわかるのですが、少し複雑になるとわからなくなります。
例えば以下のような場合です。

「16進数で5D2Cは
16の三乗×5+16の二乗×13+16×2+12
とあらわされます。」

なぜ、16の三乗や、16の二乗をする必要があるのでしょうか?

5桁になるとおそらく16の4乗をする必要がありそうですが、
宜しくお願いします。

Aベストアンサー

5桁で16の4乗、というのは正しいです。
この説明は下でされているので省きます。

16進数は数が大きいので、扱いが面倒、と思われるかもしれないので、
簡単な2進数への変換法を書いておきます。

16進数で5D2Cの場合
 1、各桁を2進数に変換する
 ⇒5D2C = 0101 | 1101 | 0010 | 1100
 2、変換したものをそのまま結合する
 ⇒ 0101 | 1101 | 0010 | 1100 ⇒  0101110100101100

 これで、2進数になります。
2のN乗の方が計算が楽だと思いますので、10進数にする場合は
使ってみてはいかがでしょうか?
(8進数の場合も同様にできます)

Q3進法→10進法 小数変換

三進法で表すと
0.1222222222…
となる数を十進法で表すといくつになるか?

三進法で表すと
0.1111111111…
となる数を十進法で表すといくつになるか?

求め方を教えてください。

Aベストアンサー

数学で数列の和の極限値の求め方という考えがあります。ご存じであるという前提で説明しますと、

 0.12222222…
         ∞
=1/3 + lim   Σ(2/3^k)
     n→∞ k=2
です。


あるいは、循環している部分に注目して、
  x = 0.122222222
 3x = 1.222222222
引き算すると、
2x = 1.1(3進) = 4/3 (十進)
です。

後半も同様です。

Q国会と内閣の違いを簡単に教えてください!!

国会・内閣・裁判所って三権分立であるじゃないですか?それで、裁判所と国会は建物もあるし、なんとなくは分かるんですけど、内閣って一体なんなんですか??内閣には国会議事堂や裁判所のような建物とかって無いですよね??(間違ってたら指摘お願いします!)
じゃあ内閣って一体どこにあるんですか?内閣で一番偉い人は首相。つまり今は小泉総理ですよね?じゃあ国会で一番えらい人って誰なんですか?今の僕の意識では国会の中に内閣がある。っていう感じなんですけど、コレって間違ってますか??教えてください!

Aベストアンサー

 簡単にいいますと、国会は法律を作り、内閣は実務(実際の行政)を担当し、裁判所は法の執行を行う
これが三権分立ですね。
どこが違うか?って全然仕事が違います。

 しかし、内閣は「こういう法律を作ってください」と言うことはできます。
法律案のほとんどは内閣提出です。
でも、それを認めるかどうかを決めるのは国会です。
今年度の予算をどういうふうに使うかを決めるのは、実際に仕事をする内閣ですが
国会はそれを事前にチェックしたり(予算審議)、
実際の使い方をチェックし、ミスを指摘する(こちらは決算)ことができます。
このように、お互い独立して仕事をしていますが
自分の担当だからといって自分勝手な行動をとらないようにチェックしあっているのです。
ですから、どこが偉いということはありません。
3つとも同じ地位にあります。
総理大臣は必ず国会議員ですから
「国会の中に内閣がある」というような気もしますが
そうすると、国会議員の中でも偉い人が総理大臣、
つまり国会より内閣の方が偉い!ということになってしまいますから
その認識は正確ではありませんね。

 内閣はどこにあるか?ですが
内閣には総理大臣のもとにたくさんの省庁がありますね。
外務省とか財務省とか、防衛庁もそうです。
その建物の一つ一つが内閣をつくっています。
仕事が膨大で職員の規模も大きいので、
まとめてどこかに置くというわけにはいかないのです。
内閣のまとめ役の総理大臣の城である首相官邸が一番小さかったりします。
紛らわしいですが、内閣府は内閣の一つの機関にすぎませんのでお間違えなく。

 最後に、国会で一番偉い人ですが
やはり衆議院、参議院の議長でしょうね。
議長は野党でも与党でもなく、中立の立場にいます。
議長、副議長になると、党を離れて無所属になるんですよ。
ですから、与党からも野党からも敬われる存在です。
とはいえ、話し合いを重んじるのが議会ですから
偉いからといって何でもできるわけではないですけど。

 簡単にいいますと、国会は法律を作り、内閣は実務(実際の行政)を担当し、裁判所は法の執行を行う
これが三権分立ですね。
どこが違うか?って全然仕事が違います。

 しかし、内閣は「こういう法律を作ってください」と言うことはできます。
法律案のほとんどは内閣提出です。
でも、それを認めるかどうかを決めるのは国会です。
今年度の予算をどういうふうに使うかを決めるのは、実際に仕事をする内閣ですが
国会はそれを事前にチェックしたり(予算審議)、
実際の使い方をチェックし、ミスを指...続きを読む

Q大さじ一杯 小さじ一杯って・・・

それぞれ何グラムぐらいなんですか?困っています教えてください。私はさじを持っていないので測れないのです

Aベストアンサー

重さは量るものによって違いますが、
大さじ一杯=15cc
こさじ一杯=5cc
です。

Q10進法⇒2進法には何故2で割るか

タイトルどおりですが何故なんでしょうか?
学校ではただ2で割る程度にしか教わっておりません。
2進法では0と1の2種類だから2で割るのかなとか
ぼんやり思っておりますが
きっと正しくはないだろうと思いましたので。
どなたかお願いします。

Aベストアンサー

>2進法では0と1の2種類だから2で割るのかなとか
>ぼんやり思っておりますが
その通りです.3進法では3で16進法では16で割ればいいのです!!
では,そのぼんやりをこれから明確にしましょう.
ゆっくり読んで行って下さい.
例えば,10進法による表記で
77=7×10+7
は2進法による表記では
1001101
です.
これは

1×2^6+0×2^5+0×2^4+1×2^3+1×2^2+0×2^1+1

であるので,これを2で割ると

商1×2^5+0×2^4+0×2^3+1×2^2+1×2^1+0×1
余り1

さらにこの商を2で割ると

商1×2^4+0×2^3+0×2^2+1×2^1+1×1
余り0

以下同様にして

商1×2^3+0×2^2+0×2+1×1
余り1

商1×2^2+0×2^1+0×1
余り1

商1×2^1+0×1
余り0

商1×1
余り0

商0
余り1

下から余りを並べて行けば77の2進数表示1001101が得られます.
どんな10進数でも2で割った余りを下から並べて行けば2進数表示が得られるのです.

上の商の所をしっかり見て考えて下さい.
1001101を一般的にabcdefgと表すと
一番右の部分gは2より小さい数0か1なので,
2で割ると余りはgが出てきます.
さらにその商abcdefの一番右の部分も2より小さい数0か1なので2で割るとfが出てきます.
これを繰り返していくと
余りは下からabcdefgの順番に出てくるのでそれを並べれば2進数表示となるのです.
ちょっと説明がわかりにくかったかもしれませんが,これをヒントにじっくり考えれば分かるはずです.

>2進法では0と1の2種類だから2で割るのかなとか
>ぼんやり思っておりますが
その通りです.3進法では3で16進法では16で割ればいいのです!!
では,そのぼんやりをこれから明確にしましょう.
ゆっくり読んで行って下さい.
例えば,10進法による表記で
77=7×10+7
は2進法による表記では
1001101
です.
これは

1×2^6+0×2^5+0×2^4+1×2^3+1×2^2+0×2^1+1

であるので,これを2で割ると

商1×2^5+0×2^4+0×2^3+1×2^2+1×2^1+0×1
余り1

さらにこの商を2で割ると

商1×2^4+0×2^3+...続きを読む


人気Q&Aランキング