Если вы разработчик программного обеспечения или программист, вы знаете, что во всех больших проектах, личных проектах, проблемах с кодом или даже небольших программах, которые вы создаете в первый месяц своего пути к кодированию, для решения проблем, которые у вас есть разбить проблему на более простые задачи. в этой статье я собираюсь показать вам несколько приемов, которые весьма полезны и практичны при решении проблем с кодированием, чтобы вы могли перестать искать переполнение стека:0. Я буду писать приложения (то, что я сделал, когда использовал их), код на моем любимом языке программирования: C++, я стараюсь сделать свой код независимым от языка.

1-массив в целое число и целое число в массив:

начнем с первого, массива в Int. он может понадобиться вам при работе с массивами, как и мне. это очень просто, нам нужна степенная функция и обратная версия целого числа, мы сохраняем элементы в виде цифр.

#include <iostream>
#include <cmath>
using namespace std;
int main (){
    int arr[4] = {1,2,4,5} , num = 0, n = 4 , i ;
    for (i=0;i<n;i++){
        num += arr[i]*pow(10,i);
    }
    int lastdigit, reversed=0; 
    while(num>0){
        lastdigit = num % 10 ; 
        reversed = (reversed*10) + lastdigit;
        num/=10 ;
    }
    cout << reversed;
    return 0 ; 
}

это решение чрезвычайно эффективно, позвольте мне объяснить первый цикл for, в котором мы сохраняем элементы в виде цифр в переменной «num». он хранит каждый элемент в позиции I и, учитывая позицию, делает 10 в степени I . например, для первой позиции 10 в степени 0 равно 1, поэтому он сохраняет элемент в первом десятичном разряде. позвольте мне объяснить обратную часть, сначала взгляните на это:

13244 % 10 = 4 ( last digit )
13244 / 10 = 1324 ( removes last digit )

вы должны понимать это для программы Integer to array of digits. В части с обратной переменной он также имеет стратегию степенной десятичной дроби.

Int в массив:

#include <iostream>
using namespace std;
int main (){
    int i,n = 1323;
    string l = to_string(n);
    int len = l.length();
    int arr[len];
    for (i=0;i<len;i++){
        arr[i] = n % 10 ; 
        n/= 10;
    }
    return 0 ; 
}

этот не нуждается в объяснении, со строкой мы получаем длину, затем делаем n по модулю 10, затем n делим 10.

2 символа в массив

#include <iostream>
using namespace std;
int main (){
     char arr[3] = {'1','2','3'};
     int arrInt[3],x;
     for (x=0;x<3;x++){
         arrInt[x] = arr[x] - '0';
     }
    return 0 ; 
}