プロが教える店舗&オフィスのセキュリティ対策術

初めての質問なのでカテゴリが違うかもしれませんが
すみません。

a^b を 10^c で割った余りを求めるプログラムを作成したいのですが、
以下の条件を満たしながら解く方法が分かりません。

どなたかご教授下さい。
解き方さえ分かれば言語は不問です。

1≦a≦999999999
1≦b≦999999999
1≦c≦4
宣言した変数は11桁以上の値は保持できない。

A 回答 (2件)

VBS(VBScript)です。

メモ帳か何かで保存して拡張子を.vbsにしたら動きます。

----

a = 1
b = 1
c = 1

'変数の評価
bFlag = True
bFlag = bFlag And (1 <= a) And (a <= 999999999)
bFlag = bFlag And (1 <= b) And (b <= 999999999)
bFlag = bFlag And (1 <= c) And (c <= 4)

'結果を出力
WScript.Echo "a=" & a & ", b=" & b & ", c=" & c
If bFlag Then'変数の値が有効な場合
WScript.Echo "Result: " & ((a ^ b) Mod (10 ^ c))
Else'変数の値が無効な場合
WScript.Echo "Result: Failed."
End If
    • good
    • 0
この回答へのお礼

私の表記の仕方が悪かったのですが、11桁以上の計算ができないもの
(電卓のように桁が制限されている)に計算させたいのです。
今かいている文章も上手く伝えられていない気がしますが…
ですが迅速な回答ありがとうございました!

お礼日時:2009/05/25 22:42

要するに冪剰余を求めたいのね。


ここ読めば分かるんじゃないかな。
http://ja.wikipedia.org/wiki/%E5%86%AA%E5%89%B0% …
    • good
    • 0
この回答へのお礼

「べき乗余」という言葉さえ知りませんでしたが、
まさしくこれですね!
こんなに早く回答が頂けるとは思いませんでした。
ありがとうございます!

お礼日時:2009/05/25 22:36

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