Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- using namespace std;
- void unesi(int *A, int n) {
- for (int i = 0; i < n; i++) {
- cout << "Unesite " << i + 1 << ". clan niza: "; cin >> A[i];
- }
- }
- void ispisi(int *A, int n) {
- cout << "---------------------------------------\n";
- cout << "Clanovi niza su: ";
- for (int i = 0; i < n; i++) {
- cout << A[i] << " ";
- }
- cout << endl;
- cout << "---------------------------------------\n";
- cout << endl;
- }
- void swap(int &A, int &B) {
- int temp;
- temp = A;
- A = B;
- B = temp;
- }
- void sortiraj(int *A, int n) {
- for (int i = 0; i < n - 1; i++) {
- for (int j = 0; j < n - 1; j++) {
- if (A[j] > A[j + 1]) {
- swap(A[j], A[j + 1]);
- }
- }
- }
- }
- void array_union(int *A, int a, int *B, int b, int *C,int c) {
- int i = 0;
- int j = 0;
- int k = 0;
- while (i < a&&j < b) {
- if (A[i] < B[j]) {
- C[k] = A[i];
- i++; k++;
- }
- else if (A[i] > B[j]) {
- C[k] = B[j];
- k++; j++;
- }
- else {
- C[k] = A[i];
- k++; i++; j++;
- c--;
- }
- }
- for (; i < a; i++) {
- C[k] = A[i];
- k++;
- }
- for (; j < b; j++) {
- C[k] = B[j];
- k++;
- }
- ispisi(C, c);
- }
- int main() {
- int x;
- cout << "Unesite koliko zelite unijeti clanova niza: "; cin >> x;
- int *A = new int[x];
- unesi(A, x);
- sortiraj(A, x);
- ispisi(A, x);
- int y;
- cout << "Unesite koliko zelite unijeti clanova drugog niza: "; cin >> y;
- int *B = new int[y];
- unesi(B, y);
- sortiraj(B, y);
- ispisi(B, y);
- int z = x + y;
- int *C = new int[z];
- cout << "Unija clanova prvog i drugog niza\n";
- array_union(A, x, B, y, C,z);
- delete[] A;
- A = nullptr;
- delete[] B;
- B = nullptr;
- delete[]C;
- C = nullptr;
- system("pause");
- return 0;
- }
Add Comment
Please, Sign In to add comment