私はそれに多くのことをしましたが、解決策を見つけることができません。タイトルでさえ明確に説明できません。
重量、数量、合計の 3 つの値があります
私は次のことをしました
float wq = [[weightarray objectAtIndex:selectedint]floatValue];
float q = [quantity floatValue];
float total = wq * q;
たとえば、もし
[weightarray objectAtIndex:selectedint] = @"3.14";
quantity = 4;
結果は
wq = 3.140000 q= 4.000000 total = 12.560000
しかし、私は必要です
wq = 3.14 total = 12.56
何をすべきか?私はたくさん検索しましたが、誰かが NSDecimal を使用することを提案しています。
NSDecimalNumberHandler *roundingBehavior = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundPlain scale:2 raiseOnExactness:FALSE raiseOnOverflow:TRUE raiseOnUnderflow:TRUE raiseOnDivideByZero:TRUE];
ただし、スケールはここでは 2 ではありません。wq 値には、ポイントの後に 3 つまたは 4 つの数値が含まれる場合があります。
合計 = 2.30000100 が合計 = 2.300001 が必要であることを意味する場合、これを解決するにはどうすればよいですか?