タイトル | : Re: MOD と ¥ の有効範囲 |
投稿日 | : 2024/03/18(月) 00:36 |
投稿者 | : konno | 番 号 | : 11165 11161 番 konno さんへのコメント コメント数 1 |
MOD と \ の有効範囲テストを NP2 でやってみました。 結果は 32767 を超えると オーバーフローエラーになりました。 また、N88BASICでは行番号が必要で、タブは使えなかったので 以下のようにプログラムを修正しました。 10 'N88mod.bas 14 print " input "; 20 input a ' 30 OPEN "mod.dat" FOR append AS#1 'ファイル出力 40 print " a MOD i ","2bytes "," Froat "," a / i" 50 for i=2 to 5 60 bb=int((a/i-int(a/i))*i+.5) ' MOD 代替式 70 print a;"mod";i, 72 if a>32767 then print "over! ", else print a mod i, '32767 over 74 print bb,a/i 80 print#1, a;"mod";i, 82 if a>32767 then print#1,"over! ", else print#1, a mod i, ' 32767 over 84 print#1, bb,a/i ' 90 next i 100 print " a \ i","2bytes "," Froat "," a / i" 110 for i=2 to 5 120 cc=int(a/i) ' \ 代替式 130 print a;" \ ";i, 132 if a>32767 then print "over! ", else print a \ i, ' 32767 over 134 print cc,a/i ' 140 print#1,a;" \ ";i, 142 if a>32767 then print#1,"over! ", else print#1, a \ i, ' 32767 over 144 print#1,cc,a/i ' 150 next i 160 PRINT#1,"" 170 CLOSE#1 180 '入力待ち 190 print " push eny key "; 200 a$=input$(1) 210 if a$="" then 180 220 end エラーになるのと不正な結果になるのとどっちが良いかはともかく MOD と \ の有効範囲は 普通は 32767 までのようですね。 だから素数のような桁数が多くなる計算は UBASIC などを使うのが良いのでしょうね。
- No.11165 一括表示へ - コメント元:11161 一括表示へ - [ 返信 ] [引用無し] pre