Computer >> Máy Tính >  >> Lập trình >> C ++

Các chữ số của tổng hợp phần tử của hai mảng thành một mảng mới trong Chương trình C ++

Trong hướng dẫn này, chúng ta sẽ viết một chương trình tìm mặt trời của hai phần tử mảng và lưu trữ chúng vào một mảng riêng biệt.

Chúng ta đã đưa ra hai mảng và chúng ta cần thêm các phần tử chỉ số tương ứng từ hai mảng. Nếu tổng không phải là các chữ số đơn lẻ, thì trích xuất các chữ số từ số đó và lưu trữ chúng trong mảng mới.

Hãy xem một ví dụ.

Đầu vào

arr_one = {1, 2, 32, 4, 5}
arr_two = {1, 52, 3}

Đầu ra

2 5 4 3 5 4 5

Hãy xem các bước để giải quyết vấn đề.

  • Khởi tạo hai mảng với dữ liệu giả.

  • Chúng tôi đang sử dụng vectơ để lưu trữ kết quả vì chúng tôi không biết về kích thước của mảng mới.

  • Lặp lại qua hai mảng cho đến khi chỉ mục nhỏ hơn độ dài mảng thứ nhất và thứ hai.

  • Thêm các phần tử chỉ mục tương ứng từ mảng và lưu trữ chúng trong một mảng mới.

  • Sau khi hoàn thành các bước lặp trên. Lặp lại hai mảng riêng biệt cho các phần tử còn lại.

  • In các phần tử từ vectơ.

Ví dụ

Hãy xem mã.

#include <bits/stdc++.h>
using namespace std;
void pushDigits(int num, vector<int> &result) {
   if (num > 0) {
      pushDigits(num / 10, result);
      result.push_back(num % 10);
   }
}
void printVector(vector<int> &result) {
   for (int i : result) {
      cout << i << " ";
   }
   cout << endl;
}
void addTwoArrayElements(vector<int> arr_one, vector<int> arr_two) {
   vector<int> result;
   int arr_one_length = arr_one.size(), arr_two_length = arr_two.size();
   int i = 0;
   while (i < arr_one_length && i < arr_two_length) {
      pushDigits(arr_one[i] + arr_two[i], result);
      i++;
   }
   while (i < arr_one_length) {
      pushDigits(arr_one[i++], result);
   }
   while (i < arr_two_length) {
      pushDigits(arr_two[i++], result);
   }
   printVector(result);
}
int main() {
   vector<int> arr_one = {1, 2, 32, 4, 5};
   vector<int> arr_two = {1, 52, 3};
   addTwoArrayElements(arr_one, arr_two);
   return 0;
}

Đầu ra

Nếu bạn thực hiện chương trình trên, bạn sẽ nhận được kết quả sau.

2 5 4 3 5 4 5

Kết luận

Nếu bạn có bất kỳ câu hỏi nào trong hướng dẫn, hãy đề cập đến chúng trong phần bình luận.