変数を使ったべき乗計算

返信する


答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: 変数を使ったべき乗計算

by 山本 » 2006年2月24日(金) 00:57

ar さんが書きました:標記の件、ver.4.13.00および4.21.00で下記のようなプログラムを実行すると演算結果が0となります。

コード: 全て選択

#N88BASIC
Dim a As Integer, b As Integer
a = 2
b = 2
Print a^b
どうやらどちらかの変数の型が2byte以下のもの(Char型、Byte型、Integer型、Word型)である場合に起こるようで、組み合わせによって例外処理やらアクセス違反やらエラーは無いけど結果がおかしかったりします。
当然ながら、二つの変数をLong型、DWord型、QWord型で宣言したり、演算時に型キャストした場合には正常に動きました。
確認願います。
ご報告ありがとうございます。次回のバージョンアップで修正しますので、今しばらくお待ちください。

ar さんが書きました:ついでながら、Sqr関数内の変数2が型宣言されていないので#strictを記述したときに警告が出ます。
実用上は問題ないですが、宣言したほうが良いのでは。
こちらのほうも、次回のバージョンアップで修正させていただきます。

変数を使ったべき乗計算

by ar » 2006年2月23日(木) 21:35

標記の件、ver.4.13.00および4.21.00で下記のようなプログラムを実行すると演算結果が0となります。

コード: 全て選択

#N88BASIC
Dim a As Integer, b As Integer
a = 2
b = 2
Print a^b
どうやらどちらかの変数の型が2byte以下のもの(Char型、Byte型、Integer型、Word型)である場合に起こるようで、組み合わせによって例外処理やらアクセス違反やらエラーは無いけど結果がおかしかったりします。
当然ながら、二つの変数をLong型、DWord型、QWord型で宣言したり、演算時に型キャストした場合には正常に動きました。
確認願います。

ついでながら、Sqr関数内の変数2が型宣言されていないので#strictを記述したときに警告が出ます。
実用上は問題ないですが、宣言したほうが良いのでは。

ページトップ