Я только начинаю учить себя Objective C и дурачусь с простым консольным калькулятором.Для начала я спрашиваю пользователя, какую операцию он хотел бы выполнить, с какими двумя числами выполнить эту операцию, а затем я печатаю ответ после его вычисления.
Эта часть, кажется, работает нормально -Следующая часть, которую я пытаюсь реализовать, - позволить пользователям продолжать делать вычисления, пока они не решат, что они больше не хотят.Я хотел подойти к этому, чтобы в конце проверки запустить калькулятор в цикле do / while, чтобы проверить, хочет ли пользователь продолжить через 'y' или 'no' через scanf (); и затем проверитьПосмотрите, какой пользователь решил ответить.С чем я сталкиваюсь, так это в конце первого прохода, запрос на ввод через scanf ();просто игнорируется и программа завершается.
Я надеялся на некоторую помощь :) Я приложил все усилия, чтобы изо всех сил, используя поиск и устранение неисправностей, онлайн-исследования (нашел что-то из-за проблем с пробелом с помощью scanf (); однако это не помогло)помощь), и некоторые догадки, однако на сегодняшний день я потерпел неудачу.Ниже основной раздел моего кода:
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
float answer;
char op,repeat;
NSLog(@"Welcome to my sexy calculater, (_(_)!!"); //don't mind me being weird
Calculater *deskCalc;
deskCalc=[[Calculater alloc] init];
do
{
[deskCalc clear];//clear calc
op =[deskCalc getOperator]; //get +,-,*,or/
[deskCalc getNumbers]; //get two numbers
[deskCalc calculate: op];
answer=[deskCalc accumulater];
NSLog(@"Your answer is %f!", answer);
NSLog(@"Would you like to calculate something again(y/n)?");
scanf("%c",&repeat);
//NSLog(@"You typed: %c", repeat);
} while (repeat=='y');
[deskCalc release];
[pool drain];
return 0;
}
Заранее спасибо за любую помощь.Если я не предоставил достаточно информации, я прошу прощения!Пожалуйста, дайте мне знать, и я буду более чем готов предоставить больше.Еще раз спасибо всем!