ちょっと、私は何かのためのテストプログラムを持っています。フォーマットを小数点以下2桁まで追加する
どうしますか? - それは基本的に支払う総額から毎月のローン支払いを差し引いて、それを配列に挿入しますが、それは小数点以下2桁までフォーマットする必要があります。
[NSString stringWithFormat: @"%.2lf", tempPaymentHolder]
である。しかし、動作するようには思えない私が見つけた方法は、ここにコードがあります。
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
@autoreleasepool {
//array that would hold the payments
NSMutableArray * arrayWithPayments = [[NSMutableArray alloc]init];
//total amount to be paid
NSMutableString * totalPaymentString = [[NSMutableString alloc]initWithString:@"151.92"];
//monthly payment
NSMutableString * monthlyPaymentsString = [[NSMutableString alloc]initWithString:@"12.66"];
//temp storage for passing values into array
NSMutableString * tempPaymentStringHolder = [[NSMutableString alloc]init];
tempPaymentStringHolder = [NSString stringWithFormat:@"%@",totalPaymentString];
//doubles so I can calculate
int numberOfMonths = 12;
double monthlyPayments = [monthlyPaymentsString doubleValue];
double totalPayment = [totalPaymentString doubleValue];
double tempPaymentHolder = totalPayment;
for (int i = 0; i <= numberOfMonths; i++)
{
[arrayWithPayments addObject:tempPaymentStringHolder];
tempPaymentHolder = totalPayment - monthlyPayments;
totalPayment = tempPaymentHolder;
tempPaymentStringHolder = [NSString stringWithFormat: @"%.2lf", tempPaymentHolder];
}
for (id obj in arrayWithPayments)
{
NSLog(@"%@",obj);
}
}
return 0;
}
助けていただければ幸いです。
ありがとうございます。
"%4.2f"を試しましたか? –
正確には機能しないのは何ですか?私はあなたのコードを実行し、あなたの仕様に合うように見える2桁の小数点以下をフォーマットした文字列を出力します。 – FluffulousChimp
ああ、ありがとう!それは私が間違ったコンソール出力を見ているだけで働いていた。ご迷惑をおかけいたします。 – user1214037