Se consideră tabloul unidimensional A [1..n] cu elemente numere întregi. Să se compună un program care va transcrie la începutul tabloului B [1..n] în ordine crescătoare elementele lui nenegative, apoi, în continuare, pe cele negative in ordine descrescătoare. De exemplu, avînd A =(4;-8;7;-6;0;-7;5), se va obtine B=(0;4;5;7;-6;-7;-8).
Răspunsuri la întrebare
Răspuns de
2
#include <iostream>
using namespace std;
int main()
{
int n,i,j,schimbat,k=0;
cout<<"Cate elemente?"<<endl;
cin>>n;
int A[n],B[n];
cout<<"Introduceti "<<n<<" elemente: "<<endl;
for(i=0;i<n;i++)
cin>>A[i];
i=0;
do{
schimbat=0;
for(i=0;i<n-1;i++)
if(A[i]>A[i+1])
{
swap(A[i],A[i+1]);
schimbat=1;
}
}while (schimbat);
for(i=0;i<n;i++)
if(A[i]>=0)
{
B[k]=A[i];
k++;
}
for(i=n-1;i>=0;i--)
if(A[i]<0)
{
B[k]=A[i];
k++;
}
for(i=0;i<n;i++)
cout<<B[i]<<" ";
}
using namespace std;
int main()
{
int n,i,j,schimbat,k=0;
cout<<"Cate elemente?"<<endl;
cin>>n;
int A[n],B[n];
cout<<"Introduceti "<<n<<" elemente: "<<endl;
for(i=0;i<n;i++)
cin>>A[i];
i=0;
do{
schimbat=0;
for(i=0;i<n-1;i++)
if(A[i]>A[i+1])
{
swap(A[i],A[i+1]);
schimbat=1;
}
}while (schimbat);
for(i=0;i<n;i++)
if(A[i]>=0)
{
B[k]=A[i];
k++;
}
for(i=n-1;i>=0;i--)
if(A[i]<0)
{
B[k]=A[i];
k++;
}
for(i=0;i<n;i++)
cout<<B[i]<<" ";
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
9 ani în urmă
Engleza,
9 ani în urmă
Limba română,
9 ani în urmă