プレイ日記
SilverBlue Corei72630QM
【Help me】 変数に実数型を使用して、DATAの打ち間違いも一切なく、変数をいじる関数も使用していないのにも関わらず、0.9が0になってしまいます…。 (OPTION DEFINTも使用していません) 原因がわかる方、お助けお願いします…。
4そうだね
プレイ済み
返信[1]
親投稿
SilverBlue Corei72630QM
This source code have unknown problem.
0そうだね
プレイ済み
返信[2]
親投稿
おちゃめ ochame_nako
関数の引数に使用している変数やOUTの後の変数のローカル変数は最初に代入を行った時点で型が確定します。 このプログラムの場合はデータの最初が整数になっている変数はそれ以降整数型変数として動作してしまいます。 もしも、整数や小数が混在したデータを読み込ませたい場合はA#=0.0:B#=0.0などのようにDEF内で変数の初期化処理を行えばすべて実数型変数として使用することができます。(#や%というサフィックス記号は何の意味も持たない)
3そうだね
プレイ済み
返信[3]
親投稿
SilverBlue Corei72630QM
そうなんですか!?初めて知りました...。そんな仕様があるとは...。 意外な所に落とし穴があるんですね...。プチコンの沼、深い!
0そうだね
プレイ済み
返信[4]
親投稿
なんと! 知りませんでした。(そもそもOUTを使う自作命令を作らず、VAR()を使う派なので。)
0そうだね
プレイ済み
返信[5]
親投稿
キルル2 kiruru2
その罠、私も陥った経験があります つらいですよね 画像のコードなら DEF内に VAR P#=PERSON とか書いて、実数型の変数に代入し直すか MIKYMON_PERSONを呼び出すときに(数値)+0.0とするのが簡単ですよ
0そうだね
プレイ済み
返信[6]
親投稿
キルル2 kiruru2
コードをよく読まないでコメントしてしまいました おちゃめさんの方法で大丈夫でしたね
0そうだね
プレイ済み