Połączenie dwóch tablic w jedną

0

Mam napisać kod, który połączy ze sobą dwie tablice. Mam już tablice A i B, tablica C powinna mieć rozmiar 6, nie wiem jak się za to zabrać.

#include <iostream>
#include <cstdlib>
using namespace std;

int main()
{
  
    int A[3];
    int B[3];
    for(int i=0; i<3; i++){
        cin>>A[i];}
    for(int i=0; i<3; i++){
        cin>>B[i];
    }
    for(int i=0; i<3; i++){
        cout<<A[i]<<endl;
        }
    for(int i=0; i<3; i++){
        cout<<B[i]<<endl;
        }

    return 0;

}
0

Toporne, ale odpowiada opisowi:

#include <iostream>
 

int main() {
	int sz1 = 3, sz2 = 4;
	int A[sz1] = {1, 2 ,3};
	int B[sz2] = {4, 5 ,6, 7};
	int C[sz1 + sz2];
	for (int i = 0; i < sz1; i++)
		C[i] = A[i];
	for (int i = sz1; i < sz1 + sz2; i++)
		C[i] = B[i - sz1];
	for (int i = 0; i < sz1 + sz2;i++)
		std::cout << C[i] << " ";
	std::cout << "\n";
	return 0;
}

// --> 1 2 3 4 5 6 7

EDIT: Jako że powyższy kod działa tylko z gcc, wersja z dynamiczną alokacją:

	int sz1 = 3, sz2 = 4;
	int * A = new int[sz1];
	A[0] = 1; A[1] = 2; A[2]= 3;
	int * B = new int[sz2];
	B[0] = 4; B[1] = 5; B[2]= 6; B[3] = 7; 
	int * C = new int[sz1 + sz2];
	
	for (int i = 0; i < sz1; i++)
		C[i] = A[i];
	for (int i = sz1; i < sz1 + sz2; i++)
		C[i] = B[i - sz1];

1 użytkowników online, w tym zalogowanych: 0, gości: 1