#include <iostream>
using namespace std;
///Se dau două şiruri a şi b, cu n, respectiv m elemente, numere naturale, ordonate
crescător respectiv
///descrescător. Să se construiască un al treilea şir, c, care să conţină, în
ordine crescătoare, elementele
///din şirurile a şi b.
int main()
{
int a[100],b[100],n,m,i,j,k,c[200];
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
cout<<"m=";
cin>>m;
for(j=1;j<=m;j++)
{
cout<<"b["<<j<<"]=";
cin>>b[j];
}
i=1;
j=m;
while(i<=n && j>=1)
{
if(a[i]<b[j])
c[++k]=a[i++];
else
c[++k]=b[j--];
}
while(i<=n)
c[++k]=a[i++];
while(j>=1)
c[++k]=b[j--];
for(i=1;i<=k;i++)
cout<<c[i]<<" ";
return 0;
}
#include <iostream>
using namespace std;
///Se dau două şiruri p şi q, cu n, respectiv m elemente, numere naturale, ordonate
descrescător. Să se
///construiască un al treilea şir, c, care să conţină, în ordine crescătoare,
elementele din şirurile p şi q.
int main()
{
int p[100],n,m,q[100],k,c[200],i,j;
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"p["<<i<<"]=";
cin>>p[i];
}
cout<<"m=";
cin>>m;
for(j=1;j<=m;j++)
{
cout<<"q["<<j<<"]=";
cin>>q[j];
}
i=n;
j=m;
while(i>=1 && j>=1)
{
if(p[i]<q[j])
c[++k]=p[i--];
else
c[++k]=q[j--];
}
while(i>=1)
c[++k]=p[i--];
while(j>=1)
c[++k]=q[j--];
for(i=1;i<=k;i++)
cout<<c[i]<<" ";
return 0;
}
#include <iostream>
using namespace std;
///Se dă un șir format din n numere naturale. Determinați numărul de perechi de
elemente consecutive
///din șir care au suma un număr prim.
int main()
{
int v[100],n,i,nr=0,s,ok,j;
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
for(i=1;i<=n;i++)
{
s=v[i]+v[i+1];
ok=1;
if(s<=1)
ok=0;
for(j=2;j<=s/2;j++)
if(s%j==0)
ok=0;
if(ok==1)
nr++;
}
cout<<nr<<endl;
return 0;
}
#include <iostream>
using namespace std;
///Să se insereze într-un șir de cel mult 100 numere naturale, după fiecare element
par cel mai mic
///număr din șir.
int main()
{
int v[100],n,i,min=1000000,j,x;
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
for(i=1;i<=n;i++)
{
if(v[i]<min)
min=v[i];
}
for(i=1;i<=n;i++)
if(v[i]%2==0)
{
n++;
for(j=n;j>=i+1;j--)
v[j]=v[j-1];
v[i+1]=min;
i++;
}
for(i=1;i<=n;i++)
cout<<v[i]<<" ";
return 0;
}
#include <iostream>
using namespace std;
///Se citește un șir de n numere naturale. Să se elimine toate perechile de numere
egale aflate pe poziții
///consecutive în șir și să se afișeze șirul obținut după eliminare precum și
numărul perechilor
///eliminate.
int main()
{
int n,i,v[100],c,x,j,nr=0;
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
for(i=1;i<=n;i++)
{
if(v[i]==v[i+1] && v[i+1]!=v[i+2])
{
for(j=i;j<=n-1;j++)
v[j]=v[j+1];
n--;
i--;
for(j=i+1;j<=n-1;j++)
v[j]=v[j+1];
n--;
i--;
nr++;
}
}
for(i=1;i<=n;i++)
cout<<v[i]<<" ";
cout<<nr<<endl;
return 0;
}
#include <iostream>
using namespace std;
///Se dau două şiruri, cu n, respectiv m, elemente, numere naturale. Primul şir
este ordonat crescător, iar
///al doilea element este ordonat descrescător. Să se afişeze, în ordine
crescătoare, valorile pare din cele
///două şiruri.
int main()
{
int v[100],w[100],n,m,i,j,k=0,k1=0,c[200],a[100],b[100],k2=0;
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
cout<<"m=";
cin>>m;
for(j=1;j<=m;j++)
{
cout<<"w["<<j<<"]=";
cin>>w[j];
}
for(i=1;i<=n;i++)
{
if(v[i]%2==0)
{
k++;
a[k]=v[i];
}
}
for(i=1;i<=k;i++)
cout<<a[i]<<" ";
cout<<endl;
for(j=1;j<=m;j++)
{
if(w[j]%2==0)
{
k1++;
b[k1]=w[j];
}
}
for(j=1;j<=k1;j++)
cout<<b[j]<<" ";
cout<<endl;
i=1;
j=m;
while(i<=n && j>=1)
{
if(a[i]<b[j])
c[++k2]=a[i++];
else
c[++k2]=b[j--];
}
while(i<=n)
c[++k2]=a[i++];
while(j>=1)
c[++k2]=b[j--];
for(i=1;i<=k2;i++)
cout<<c[i]<<" ";
return 0;
}
#include <iostream>
using namespace std;
///Se dă un şir format din n elemente, numere naturale. Calculaţi suma elementelor
din secvenţa
///determinată de primul şi ultimul element prim.
int main()
{
int v[100],n,i,x,ok,j;
cout<<"n=";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
}
for(i=1;i<=n;i++)
{
x=v[i];
ok=0;
if(x<=1)
ok=1;
for(j=2;i<=x/2;j++)
if(x%j==0)
ok=0;
}
if(ok==1)
cout<<x<<" ";
for(i=1;i<=n;i++)
{
ok1=0;
if(y<=1)
ok1=1;
for(j=2;j<=y/2;j++)
if(y%j==0)
ok1=0;
if(ok1==1)
{
y=i;
ok=1;
}
}
s=x+y;
cout<<s<<endl;
return 0;
}