• Предмет: Информатика
  • Автор: антохаvhh
  • Вопрос задан 6 лет назад

задан массив. состоящий из целых положительных и отрицательных чисел. разбить его на два массива . в одном из которых только положительные . в другом - отрицательные . отсортировать их по убыванию. с++ Помогите пожалуйста C++

Ответы

Ответ дал: Timurka0102
0

Ответ:

Объяснение:

#include<stdio.h>

#include<locale.h>

main()

{

setlocale(LC_ALL,"RUS");

int x[30],i,j,n,plg[30],otr[30],tr,tr1;

printf("Введите количество чисел");

scanf("%d",&n);

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

{

 do

 {

 printf("Введите %d число",i+1);

 scanf(" %d",&x[i]);

 }

 while(x[i]==0);

 if(x[i]>0) plg[i]=x[i];else plg[i]=0;

 if(x[i]<0) otr[i]=x[i];else otr[i]=0;

}

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

for(j=0;j<n-i-1;j++)

{

 if(plg[j]<plg[j+1])

 {

  tr=plg[j];

  plg[j]=plg[j+1];

  plg[j+1]=tr;

 }

 if(otr[j]<otr[j+1])

 {

  tr1=otr[j];

  otr[j]=otr[j+1];

  otr[j+1]=tr1;

 }

}

printf("Положительные =");

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

{

 if(plg[i]!=0) printf("%d ",plg[i]);

}

printf("nОтрицательные =");

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

{

 if(otr[i]!=0) printf("%d ",otr[i]);

}

}

Программа написана на обычном СИ. Ноль вводить нельзя.

Вас заинтересует