「ObjectiveCでのプログラミング」(Kochan)から:
プログラム5.8は、ユーザーに数字の入力を求め、次にその数字の右端から左端までの数字の表示に進みます。
// Program to reverse the digits of a number
#import <Foundation/Foundation.h>
int main (int argc, char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int number, right_digit;
NSLog (@"Enter your number.");
scanf ("%i", &number);
while ( number != 0 ) {
right_digit = number % 10;
NSLog (@"%i", right_digit);
number /= 10;
}
[pool drain];
return 0;
}
私の質問は、ユーザーが1桁の数字-1から9を入力するとどうなるかということです。そのような事件についての資料は見つかりませんでした。コンパイル後、プログラムはその1桁を返すだけです。何故ですか?私はこのタスクのコードを考え出し、文字通り2時間かけて、この「数字が1桁の場合」の問題に対するループと意思決定を取り入れようとしていました。そして、解決策はとても無知でした!