Informatică, întrebare adresată de arcq123, 9 ani în urmă

se considera doi vectori de lungime nrespectiv m ce contine elemente naturale ordonate crescător. se cere interclasarea valorilor pare din cei doi vectori. în urma interclasarii elementele vor fi plasate într-un nou vector. n=8 m=5 A=13 26 44 54 112 115 311 600 B= 3 28 48 55 56 se va afisa 26 28 44 48 54 56 112 600


sirDumitru: Ar fi bine de specificat și limbajul în care dorești problema dată.
arcq123: c++

Răspunsuri la întrebare

Răspuns de boiustef
1

#include <iostream>

using namespace std;

int A[51], B[51], C[101];

int main()

{

   int n, m, i, j, k;

   cout << "n="; cin >>n;

   cout << "Dati elementele vectorului A:" << "\n";

   for (i=1; i<=n; ++i)

       cin >> A[i];

   cout << "m="; cin >> m;

   cout << "Dati elementele vectorului B:" << "\n";

   for (i=1; i<=m; ++i)

       cin >> B[i];

  i=1, j=1,k=0;

 while ((i<=n)&&(j<=m))

   {

       while (A[i]%2)  ++i;

       if (i<=n)

       {

           while (B[j]%2)  ++j;

           if (j<=m)

           {

                if (A[i]<B[j]) {  ++k; C[k]=A[i]; ++i;}

                else { ++k; C[k]=B[j]; ++j;}

           }

       }

   }

   if (i<=n)

       {

         for (int p=i;p<=n;++p)

           {

               if (A[p]%2==0)

                  {++k; C[k]=A[p];}

           }

       }

   if (j<=m)

       {

           for (int p=j;p<=m;++p)

           {

               if (B[p]%2==0)

                  {++k; C[k]=B[p];}

           }

       }

   cout << " vectorul parelor:" << "\n";

   for (i=1; i<=k; ++i)

           cout << C[i] << " ";

   return 0;

}


Alte întrebări interesante