동등한 버튼을 누르는 대신 입력하는 동안 답변을 출력하는 계산기 앱을 사용 중입니다. 지금까지 계산 된 숫자에 (또는 -, /, *)를 추가하지 않으면 모든 것이 올바르게 작동합니다. 예를 들어, 10 + 15 + 9를하면 정답 대신 (34) 169가됩니다. 나는 왜 이런 일이 일어나는 지 알 것 같지만, 어떻게 고칠 지 잘 모르겠습니다. 난 당신이 그냥 saved2
의 말에 9를 추가하는 두 번째 시간 더하기를 쳤을 때 문제가 생각대답이 동적으로 응답하는 계산기의 문제
if (answer == NO) {
saved1 = saved1 * 10 + digit;
if ([self.screen.text isEqual: @"0"] || operationClear == YES) {
self.screen.text = number;
operationClear = NO;
}else{
self.screen.text = [NSString stringWithFormat:@"%@%@", self.screen.text, number];
}
}else{
saved2 = saved2 * 10 + digit;
if (plus == YES) {
answerr = saved1 + saved2;
//saved1 = answerr;
// saved2 = 0;
NSNumberFormatter *formatter = [[NSNumberFormatter alloc]init];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
self.screen.text = [formatter stringFromNumber:[NSNumber numberWithDouble:answerr]];
}
}
}
:
여기 내 코드입니다. 이 문제를 해결하기 위해 saved1
과 같은 대답을 시도하고 saved2
을 0으로 만들었습니다. 아이디어가 있으십니까? 내가이 일을 몹시 잘못하는 경우, iOS 개발을 처음 접했고 가능한 가장 효율적인 방법을 원합니다. 감사합니다. .
나는 원래 그것을 실제로 좋아하지 만, 나는 내가 지금하고있는 방식대로해야한다는 수많은 사람들이 있다고 들었다. 나는 무엇을 끝내려고하는지 확신하지 못한다. 감사. – user3186310
흠, 어떤 이유? 십진법은 어떻게 처리합니까? – Logan
나는 실제로 그것에 아직 가지 않았다, 나는 아마 당신의 길로 갈 것이라고 생각한다, 그것은 물건을 훨씬 더 단순하게 만들 것 같다. 어떻게하면 실제 수학을 이렇게 할 수 있을까요? – user3186310