ご質問の計算は、
1. A*Bを計算する
2. 1.の結果をCで割り、小数点以下を切り捨てる
3. 2.の結果にDを足す
という流れになっています。
しかし、1.の計算の結果はHSPの通常の数値(int型と言い、符号付32ビット地です)の扱える範囲
(-2,147,483,648 〜 2,147,483,647)を超えてしまっているために結果がおかしくなっています。
解決策としては、様々考えられますが、とりあえずは以下が簡単です。
方法:一旦、小数点付きの値(double型と言い、64ビットです)で計算する
A = 103570.00
B = 20736
C = 139565
D = 0
F = 0
F = int( A * B / C ) + D
mes F
※計算に使う数値の種類(型といいます)は、計算の中で次のように決まります。
1.文字があれば文字になる。
2.文字がなく、少数の値があれば少数となる
3.それもなければ整数値となる
※ここでは、割り算の結果(少数です)をint()関数によって整数に直しています。
元々の式と同様、小数点以下は切り捨てとなります。
また、大きな数を扱えるlongIntというモジュールもあります。(興味があれば検索してください)
お役に立てましたら幸いです。