ホームページ  >  記事  >  バックエンド開発  >  配列で表される数値に 1 を加算します (再帰的方法)

配列で表される数値に 1 を加算します (再帰的方法)

王林
王林転載
2023-08-28 17:17:061710ブラウズ

配列で表される数値に 1 を加算します (再帰的方法)

負ではない数値で表される数値のコレクションである配列が与えられた場合、その数値に 1 を加えます (数値で表される数値をインクリメントします)。数値は、最上位の桁が配列の最初の要素になるように格納されます。

数値で表される数値に 1 を加算するには

  • 配列の末尾から開始して、加算とは最後の数値を 4 から 5 に四捨五入することを意味します。

  • 最後の要素が 9 の場合、それを 0 に変更し、キャリー = 1 とします。

  • 次の繰り返しでは、キャリーを確認し、加算して 10 になった場合は、ステップ 2 と同じことを行います。

  • キャリーを追加した後、次の反復のためにキャリーを 0 に設定します。

  • ベクトルを追加してベクトルサイズが大きくなる場合は、先頭に 1 を付けてください。

配列に要素 [7, 6, 3, 4] が含まれているとします。配列は 10 進数 1234 を表すため、この数値に 1 を加算すると 7635 になります。したがって、新しい配列は [7, 6, 3, 5] になります。

Input: [7, 6, 9, 9]
Output: [7, 7, 0, 0]
Input: [4, 1, 7, 8, 9]
Output: [4, 1, 7, 9, 0]

説明 配列の最後の要素が 9 未満の場合は、それに 1 を加えます。要素が 9 の場合は、それを 0 に変更し、配列の残りの要素について再帰的に実行します。 ######例###

説明

配列の最後の要素が 9 未満の場合は、それに 1 を加えます。要素が 9 の場合は、それを 0 に変更し、配列の残りの要素に対して再帰操作を実行します。

#include <iostream>
using namespace std;
void sum(int arr[], int n) {
   int i = n;
   if(arr[i] < 9) {
      arr[i] = arr[i] + 1;
      return;
   }
   arr[i] = 0;
   i--;
   sum(arr, i);
   if(arr[0] > 0) {
      cout << arr[0] << ", ";
   }
   for(int i = 1; i <= n; i++) {
      cout << arr[i];
      if(i < n) {
         cout << ", ";
      }
   }
}
int main() {
   int n = 4;
   int arr[] = {4, 1, 7, 8, 9};
   sum(arr, n);
   return 0;
}

以上が配列で表される数値に 1 を加算します (再帰的方法)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。