-2

私はあらゆる挑戦をしています。私は頭がおかしいコードを書かなければなりません。

与えられた数 n について、その最後の桁を指定します。

入口

入力は、整数 n ( 1 < = n < = 2,000,000,000 ) が 1 つしかない 1 行だけで構成され、その後に改行 ' \ n' (ASCII 10) が続きます。

出口

出力では、 n の最後の桁を示す整数を正確に 1 つ見つける必要があります。

例Ⅰ 入口:32 出口:2

例 II: 入口: 231231132 出口: 2

これは私が試したものですが、うまくいきませんでした:

+[>,]<.>++++++++++.
4

4 に答える 4

2

最後の入力は改行です。したがって、数字の最後の桁を取得するには、メモリ位置を 2 つさかのぼる必要があります。改行文字を返す必要はないので、コードは次のとおりです。

,[>,]<<.
于 2015-07-07T11:43:19.637 に答える
2

いいえ、申し訳ありませんが、本当の答えは

,[>,]<.

あなたの答えが行き過ぎていたからです;)

于 2016-01-28T19:53:24.510 に答える
1

あなたの問題は、ループの終わりにポインターが現在オンになっているセルが0になるまで、ループが永遠に続くことです。コードはループ内で印刷されたり、減算されたりしないため、ループは決して終了しませんあなたのコードは、ASCII文字を入力として取り、1つ前に移動し、ASCII文字を入力として取ります。ループが終了しないため、ループの終了後のすべてのコードは役に立ちません。

于 2020-11-05T19:40:22.290 に答える