계산기 아이폰 앱을 만들려고 노력 중이며 선생님이 NSDecimalNumber를 사용해야한다고 말씀하셨습니다. 나는 그것으로 많은 문제를 겪고있다. 나는 그 부분의 추가 부분을 얻으려고 노력하고 있지만 33과 같이 1.24와 같은 숫자를 추가 할 때 문제가 있습니다. 결과가 34.24가되기를 원하면 34가됩니다. 아무도 그것을 이렇게 만드는 방법을 알고 있는가? 여기에 코드의 관련 부분이NSDecimalNumber 추가 소수점 이하 자릿수
-(void)outputNumber: (NSDecimalNumber*) number
{
//used to format number of decimal places
NSNumberFormatter* formatter = [[[NSNumberFormatter alloc] init] autorelease];
[formatter setMaximumFractionDigits:self.afterDecimal];
//output the number to calculator
NSString* formatNumber = [formatter stringFromNumber:[NSNumber numberWithDouble:[number doubleValue]]];
self.inputLabel.text = [NSString stringWithFormat: @"%@", formatNumber];
if (self.isWaiting == TRUE) {
self.numberB = number;
//change button title default color
[self.myButton setTitleColor:[UIColor colorWithRed:.196 green: .3098 blue: .52 alpha: 1] forState: 0];
}
else {
self.numberA = number;
}
}
if (self.binaryTag == 6) {
self.numberC = [self.numberB decimalNumberByAdding: self.numberA];
}
당신은 정말로 self.numberC가 NSDecimal입니까? –
그것은 NSDecimalNumber입니다 ... 문제가 실제로 지금 보입니다 ... setMaximumFractionDigits입니다. 더 좋은 방법은 십진수 뒤에 모든 숫자를 가져 오는 것입니까? – user2264210