How to convert an array of digits to an integer add 1 and convert it back to an array of digits in C#

1 Answer

0 votes
using System;

public class Program
{
    public static int ConvertArrayOfDigitsToIntNumber(int[] arr) {
        int n = 0;

        foreach (int digit in arr) {
            n = n * 10 + digit;
        }

        return n;
    }

    public static void ConvertIntNumberToArrayOfDigits(int[] digits, int n) {
        int i = digits.Length - 1;

        while (n > 0) {
            digits[i] = n % 10;
            n /= 10;
            i--;
        }
    }

    public static void Main(string[] args)
    {
        int[] arr = { 9, 4, 6, 9 };

        int n = ConvertArrayOfDigitsToIntNumber(arr);

        n++;

        ConvertIntNumberToArrayOfDigits(arr, n);

        Console.WriteLine("n = " + n);
        Console.WriteLine(string.Join(", ", arr));
    }
}



/*
run:

n = 9470
9, 4, 7, 0

*/

 



answered May 6, 2024 by avibootz
...