22億以上の変数を表示する方法 ホーム › フォーラム › CF2.5使用法全般 › 22億以上の変数を表示する方法 このトピックには4件の返信、4人の参加者があり、最後にyyyyにより5年、 3ヶ月前に更新されました。 5件の投稿を表示中 - 1 - 5件目 (全5件中) 投稿者 投稿 2019-01-18 3:13 pm #16045 yyyy参加者 資金という変数が、クリックする度に1億ずつ増えるようにした場合。 21億までは問題なく増加していくのですが、22億に達するとなぜかマイナスになってしまいます。 文字列では「-2100000000」カウンターでは「-999999999」になってしまいます。 これはそれ以上の値に対応していないということなのでしょうか? わかる方がいましたら教えていただきたいです。 それと対策などがありましたら、そちらも教えていただきたいです。 2019-01-18 8:30 pm #16048 ラクレス参加者 変数が扱える整数の上下限:-2147483648 から 2147483647 となっています 桁を分けて管理するなどで対策出来るのではないかと思います リンク先はwikiよりMMF2(だいたいCF2.5も同じ?)の制限に関する情報です https://wikiwiki.jp/mmf2/%E3%83%86%E3%82%AF%E3%83%8B%E3%83%83%E3%82%AF%E9%9B%86/MMF2%E3%81%AE%E6%A7%98%E3%80%85%E3%81%AA%E4%B8%8A%E9%99%90 2019-01-18 10:19 pm #16049 MYTH参加者 >>yyyyさん カウンターではプロパティで決定した範囲内の表示しかできず、プロパティで指定できるのはラクレスさんの仰られているように、約21億~-21億と決まっています。 しかし数字を文字列として処理すれば、桁数はおそらく理論上文字列の上限まで扱うことができます。 今回は1億までと10億から10京までの9桁ずつに分割し、それらを文字列に変換して繋げています。 しかしただ繋げるだけでは桁数が一致しなくなるので、計算中に1億までの桁数が9桁でなくなった場合は高速ループで0を補完・削減して調整しています。 この方法では加算・減算など単純な計算は可能ですが、その他複雑な計算には対応できないことをご了承ください。 (工夫次第ではできるかもしれませんが、私にはこれが限界です笑) 是非サンプルをご確認ください。 この返信は5年、 3ヶ月前にMYTHが編集しました。 Attachments:You must be logged in to view attached files. 2019-01-19 12:47 am #16052 ASDキーマスター エクステンションの『Int64 object』や『Int16384』で22億以上の値の計算が可能です。 標準機能で実現する場合は、前のお二方の通り、カウンタもしくは変数を2つ用意して結合させる方法になるかと思います。 2019-01-19 10:51 pm #16061 yyyy参加者 みなさんご回答ありがとうございます。 そうだったのかと納得できました。 それからMYTHさん、サンプルをありがとうございます。 とても参考になります。 ASDさんの仰っているエクステンションもいじってみようと思います。 みなさんありがとうございました。 投稿者 投稿 5件の投稿を表示中 - 1 - 5件目 (全5件中) このトピックに返信するにはログインが必要です。 ログイン ユーザー名: パスワード: ログイン状態を保持 Time limit is exhausted. Please reload CAPTCHA. + 七 = 十四 ログイン