解決すべき興味深い状況があります。それはクイズのようなものです:)
シンプルな電卓を再作成する必要があり、上/下の 2 つのボタンがあります。この 2 つのボタンの機能はシンプルで、現在の値を取得し、合計 1 または 1 を取得します。そのため、値を文字列に変換する小さな関数を作成し、34.1 の場合は新しい値 0.1 を作成します。加算または減算します。
- (float)findFloatValueToAdd:(NSString *)aString
{
NSMutableString *val = [NSMutableString stringWithCapacity:aString.length];
for (int i = 0; i < aString.length; i++)
[val appendFormat:@"0"];
if ([aString rangeOfString:@"."].location != NSNotFound)
[val replaceCharactersInRange:NSMakeRange([aString rangeOfString:@"."].location, 1)
withString:@"."];
[val replaceCharactersInRange:NSMakeRange(aString.length-1, 1)
withString:@"1"];
return [val floatValue];
}
主な問題は、23.1234212 のように小数が多い場合です。上に行かなければならない場合は、23.12342 に直接ジャンプし、同じように下に移動します。23.12342 から下がり続けると、23.12341 > 23.1234 になりますが、その後 23.1233>23.1232>23.1231 になります...
では、この問題を本当に解決するにはどうすればよいでしょうか。
みんなありがとう!