teacup. [ 掲示板 ] [ 掲示板作成 ] [ 有料掲示板 ] [ ブログ ]


スレッド一覧

  1. スレッドが使えます(2)
  2. Paract BASIC(22)
  3. Amusement_Program(10)
  4. 改修予定のJIS非互換(3)
  5. 複数ページ長編プログラム(新規投稿)(16)
  6. 「十進BASIC第2掲示板」投稿記事リスト(17)
  7. Full BASIC互換ライブラリ(8)
  8. 「十進BASIC掲示板過去ログ」インデックス(トピック)(17)
  9. 人の色覚の数理(14)
  10. 「十進BASIC掲示板過去ログ」インデックス(ツリー)(91)
スレッド一覧(全10)  他のスレッドを探す  スレッド作成

*掲示板をお持ちでない方へ、まずは掲示板を作成しましょう。無料掲示板作成

新着順:26/3476 記事一覧表示 | 《前のページ | 次のページ》

Re: Linux版Decimal Basicに付いて

 投稿者:SHIRAISHI Kazuo  投稿日:2020年 7月30日(木)11時40分34秒
  通報 返信・引用 編集済
  > No.4862[元記事へ]

> DIM A(100)
> RANDOMIZE
> FOR n = 1 TO 100
>  LET A(n)=INT(RND*MAXNUM/100 + 1)
> NEXT n
> LET SUM = 0
> LET EVEN = 0
> LET S_EVEN = 0
> LET ODD = 0
> LET S_ODD = 0
> LET NUM = 0
> FOR n = 1 TO 100
>  LET NUM = A(n)
>  LET SUM = SUM + NUM
>  IF MOD(NUM,2)=0 THEN
>   LET EVEN = EVEN + NUM
>  ELSE
>   LET ODD = ODD + NUM
>  END IF
> NEXT n
> FOR n = 1 TO 100
>  LET NUM = A(n)
>  IF MOD(NUM,2)=0 THEN
>   LET S_EVEN = S_EVEN + 1
>  ELSE
>   LET S_ODD = S_ODD + 1
>  END IF
> NEXT n
> PRINT "SUM ", SUM
> PRINT "EVEN ", EVEN
> PRINT "#EVEN ", S_EVEN
> PRINT "ODD ", ODD
> PRINT "#ODD ", S_ODD
> END
>
> ところがMODの計算で上手く分岐出来ません。
> 実行はしてくれるんですが、計算結果が望まれたものと違います。
> 何か文法的に間違ってるのでしょうか。

A(n)に代入された数値がMAXNUM/100の倍数なので,数値変数の精度の範囲でいうと全部偶数です。
10進1000桁モードで実行してみると,違う結果が得られると思います。
MAXNUMの意味を誤解しているのかもしれません。MAXNUMは整数として精度が保証される最大数ではありません。



 
 
》記事一覧表示

新着順:26/3476 《前のページ | 次のページ》
/3476