• ベストアンサー

数について

はじめまして。 今わからないことがあって困っています。c言語のlong型で取り扱う事ができる2147483647よりも大きい数を扱いたいのですが、どのようにすればいいのでしょうか?どうかお力を貸してください。

質問者が選んだベストアンサー

  • ベストアンサー
  • tksoft
  • ベストアンサー率36% (99/273)
回答No.2

多桁計算については 河西朝雄著 改訂 C言語によるはじめてのアルゴリズム入門 ISBN 4-87408-500-8 が参考になると思います。 こちらのサイトにも簡単なアルゴリズムが載っています。 http://www5c.biglobe.ne.jp/~MOGI/algorithm/algorithm02.htm また、このサイトにあるサンプルプログラムのソースコードもJavaScriptですが参考になる(上記書籍のアルゴリズムです)と思います。

参考URL:
http://www5c.biglobe.ne.jp/~MOGI/algorithm/algorithm02.htm
goma200
質問者

お礼

ありがとうございます!早速試してみます。本当にありがとうございました!

その他の回答 (1)

  • nagare
  • ベストアンサー率33% (280/831)
回答No.1

unsigned longなら0~4294967295です unsignedは正数のみということです ちなみに longは-2147483647から~2147483647です

goma200
質問者

お礼

なるほど!確かにunsigned longならもっと大きい値も扱えますね。ただ、もっと大きい数を扱いたいんです。RSA暗号に興味を持ちプログラムを作ろうと思ってます。そのためには巨大な値を扱わないといけまけせん。説明不足で申し訳ありません。

関連するQ&A

  • 2進数を10進数にする方法

    2進数を10進数にする。 またその逆の10進数を2進数にした時の値の2つが 知りたいのです。 00010100だと10進数では20になりますよね。 この位なら、良いのですけど、 11010110見たいに複雑になってくると解りません。 言語が関係あるか解りませんがC言語しか使えません。

  • 配列の要素数を超えた参照のコンパイル

    C言語においては”配列の要素数を超えての参照もコンパイルエラーにはならない”という事がいえます。 例えば int a[10]={1}; とした時、a[-1] a[11]を参照しても、コンパイルエラーにはなりません。不定値が表示されるか、Red Hat Linuxに関しては”セグメンテーション違反です”とでるだけです。 しかし、わたしはCしか学んではいませんので解りませんが、配列の要素数を超えての参照はコンパイルエラーになる言語もあるのではないかと思います。 C言語はよく”暴走する言語”と言われます。規制をできる限り排除して軽くし、ミスはプログラマが取るという意味に考えています。 ”C言語においては配列の要素数を超えての参照もコンパイルエラーにはならないという事”はC言語のその様な設計思想に基ずいた仕様なのでしょうか。 それとも、違う考えに基ずいて、”配列の要素数を超えての参照もコンパイルエラーにはならない”という事に成っているのでしょうか。 宜しく願います。

  • 素数問題

    今C言語を勉強してるんですが・・・ 「n以下の素数をすべて表示せよ」 という問題の答えがわかりません>< 御願いします

  • 10進数を2進数に変換するには・・・

    前にも質問された方がいらっしゃるかもしれないですが検索してもわからなかったのでお願いします。 C言語で10進数を2進数に変換するためにはprintf文を使用して表すことはできないですよね?どうすればよいですか? 例えば10進数である214を2進数の11010110というのに変換したい場合プログラムではどのようになるのでしょうか? 基本的なことですみませんがお願いします。

  • 10進数を16進数に変換

    c言語で文字列に含まれる10進数部分を16進数に変換する方法を教えてください。  sdkk161h→sdkkA1h 161 →  A1

  • 公約数のプログラム。

    今、C言語を独学していて・・・問題の答えが書いていなかったため質問させていただきます。 「与えられた2つの自然数の公約数をすべて求めよ」という問題なんですが、わかるかた教えていただきたいです。

  • 10進数の変換方法

    C言語にてゾーン10進数→パック進数、パック10進数→ゾーン10進数にする 簡単な方法ありませんか?

  • 周波数カウンタについてです。

    周波数カウンタを作ってみたいのですが、調べてみても分からない(難しい)情報もしくは情報が少ないです。 周波数カウンタを作るにあたっての参考書のようなものがありましたら、なんでもいいので教えていただけないでしょうか。 あと、作るときはC言語などのプログラミング言語は必要でしょうか。 回答お願いします。

  • ステップ数??

    ステップ数って何ですか?就職活動の面接の時にプログラミング能力をステップ数で聞かれることがよくありますが、そんな言葉知りません。誰かC言語でのステップ数について教えてください。

  • C言語で16進数文字列から16進数数値への変換

    C言語で、16進数文字列を16進数に変換したいのですが解りません! 教えていただけないでしょうか?