プレイ日記
%ってなにで使うんですか??
2そうだね
プレイ済み
返信[1]
親投稿
強制的に整数型にする
2そうだね
プレイ済み
返信[2]
親投稿
四捨五入というコトで??
0そうだね
プレイ済み
返信[3]
親投稿
というわけでないらしい。
0そうだね
プレイ済み
返信[4]
親投稿
だにえる haru2016nen
ROUND じゃなくて FLOOR じゃないかな
0そうだね
プレイ済み
返信[5]
親投稿
ムン?
0そうだね
プレイ済み
返信[6]
親投稿
だにえる haru2016nen
0そうだね
プレイ済み
返信[7]
親投稿
何の事を言ってるです?
0そうだね
プレイ済み
返信[8]
親投稿
FLOORと%は同じという事ですか??
1そうだね
プレイ済み
返信[9]
親投稿
だにえる haru2016nen
四捨五入じゃなくて 小数部切り捨てなんじゃないか って事
3そうだね
プレイ済み
返信[10]
親投稿
そゆことか! ん、そしたら、すれ違いってことかな。
0そうだね
プレイ済み
返信[11]
親投稿
だにえる haru2016nen
正確には プラスの数ならFLOORの処理になるけど、 マイナスの数ならCEILの処理になる。
3そうだね
プレイ済み
返信[12]
親投稿
絶対値が小さくなる方向に丸める、これを「ORタイプ」の小数切捨てと呼んでいる。 RND()など整数を要する場合、内部で「ORタイプ」の小数切捨てを行っている。
0そうだね
プレイ済み
返信[13]
親投稿
で、整数型の話なんですけど、ただ整数化してるわけではなく意味があるんですね。 整数型…32bitの符号付き整数 実数型…64bitの浮動小数点数 一応別者なんですね。自動変換する機能がついてるんですけど。 実用的な話をしますと「bit」に注目してくださいね。 これは「メモリ」の消費量にもなります。 整数型だと半分で済むんです。 つまり整数型にすると「より多くの変数を使えるよう」になります。
0そうだね
プレイ済み
返信[14]
親投稿
SilverBlue Corei72630QM
GBOX GFILL GPSET GTRI等の命令は実数型でも整数型になるそうです。
2そうだね
プレイ済み
返信[15]
親投稿
なんとなく分かったような分かんないような・・・? とりあえずアリガトです。
1そうだね
プレイ済み
返信[16]
親投稿
小数や21億越える用事が無いならとりあえず整数型にするといいゾ ちなみにOPTION DEFINTで印を省いた時の型が整数型になる
1そうだね
プレイ済み
返信[17]
親投稿
SilverBlue Corei72630QM
V#→実数型 V%→整数型 V$→文字列型 V(+ # % $)[n]→配列型
2そうだね
プレイ済み
返信[18]
親投稿
123456.7890123 という値は %をつけないと小数点以下の数値も覚えるので 123456.7890123 %をつけると小数点以下の数値は覚えないので 123456 実は値を覚える変数は、覚えられる桁数が決まっていて、たとえば「変数は数字が10桁しか覚えられない世界」だとすると  %をつけない 123456.789  %をつけると 123456 でも 123456789.12345 という値なら  %をつけないと覚えようとしても10桁を越えるので覚えられない  %をつけると 123456789 と覚える さっきのたとえの「変数は数字が10桁しか覚えられない世界」が プチコンでは「変数は2進数で32桁しか覚えられない世界」なのです。
1そうだね
プレイ済み
返信[19]
親投稿
使い分けとしては 大きい値を使うなら% 小数点を使うなら%つけない あたりかな。 大きい数も小数点も使わないなら%もつけなくても大丈夫だし、 あんまり%のありなしで意識することも少なかったりします。
1そうだね
プレイ済み
返信[20]
親投稿
おちゃめ ochame_nako
あまさとしおんさんが書かれているようにプログラムの先頭にOPTION DEFINTを付けて数値変数のデフォルト(標準設定)を整数型にして小数計算が必要な変数のみA#のように「#」を付けるというのは昔からよく使われている高速化の常套手段ですね。 OPTION DEFINTを使用時はA%のように「%」を付けなくても整数型として認識されます。(もちろん、A%と記述しても問題はない) プチコン3号ではデフォルトで小数が扱える実数型となっており、「A#」のように「#」を付けなくても小数が扱えるようになっています。 その反面で(メモリ消費が抑えられて少し速度が上がる)整数型の変数を使用するためには実数型と区別するために「%」を付ける必要があるというだけです。 ちなみに整数型で扱える数はマイナス21億3748万3648からプラス21億3748万3647の間の整数です。
1そうだね
プレイ済み
返信[21]
親投稿
おちゃめ ochame_nako
なお、小数値を整数型変数に代入すると強制的に整数化されますが、それは単純に小数部分を無視するだけなので難しく考える必要は全くありません。 A%=1.4 → .4を無視して1が代入される A%=-2.7 →.7を無視して-2が代入される これは、あまさとしおんさんが言っている「絶対値が小さくなるように丸める」(数直線で考えると0に近い方の整数を選択する)というのと同じです。 実数型と整数型は処理によって使い分けても良いのですが、慣れないうちは(%を付けない)実数型を使って必要に感じたら(%を付ける)整数型を使うというのが分かりやすくて良いかと思います。
1そうだね
プレイ済み
返信[22]
親投稿
なんかすっごいコメント来てビックリなんだしぃ!?Σ( ° Д° )!?
1そうだね
プレイ済み
返信[23]
親投稿
でもイロイロコメント アリガトです!
1そうだね
プレイ済み