Главная » 2015 » Май » 11 » Массив из 12 ячеек, заполнить рендомно числами от -30 до 30
10:58
Массив из 12 ячеек, заполнить рендомно числами от -30 до 30

/*

Массив из 12 ячеек, заполнить рендомно числами от -30 до 30

  • Заменить нули в ячейках с четным индексом на 1, в ячейках с нечетным на -1
  • Из исходного массива получить новый, приняв в качестве первых его элементов все положительные элементы исходного массива с сохранением порядка их следования, а в качестве остальных элементов все отрицательные элементы также с сохранением порядка их следования.

*/

#include <iostream>
#include <windows.h>
#include  <ctime>
using namespace std;

void main()
{
    setlocale(LC_ALL,"rus");
    srand(time(0));
    int mss1[12]={0};
    cout<<"Вот случайно заполненый массив\n\n"<<endl;
    for(int i=0; i<12; i++)            //заполняем массив рэндомно
    {
        mss1[i]=rand()%30;
    }

    
    for(int i=0; i<12; i++)            //выводим на экран
    {
        cout<<mss1[i];
        cout<<".";
    }
    cout<<"\n\nВсе ячейки с 0-м заменены на -1 и 1.\nДля продолжения нажмите ENTER"<<endl;
    cin.get();
    system("cls");
    cout<<endl;
    for(int j=0; j<12; j++)
    {
        if(mss1[j]==0)    //если в этой ячейке массива ноль
        {
            if(j%2==0)                    //и эта ячейка чётная
            {
            mss1[j]=1;        //забрасываю туда 1
            }
            else                    //и эта ячейка нечётная
            {
            mss1[j]=-1;                    //забрасываю туда -1
            }
        }
    }
    
    cout<<endl;
    for(int j=0; j<12; j++)
    {
        cout<<mss1[j];
        cout<<".";
    }
    cout<<endl;


    for(int i=0; i<12; i++)                //тут и произходит сиё чудо комбинаторики
    {
        for(int j=i+1; j<12; j++)
        {
        if(mss1[i]<0)
        {
            int per=mss1[i];
            mss1[i]=mss1[j];
            mss1[j]=per;
        
        }
        }
    }

    cout<<endl;
    cout<<"Отсортировал и получил  "<<endl;

        for(int r=0; r<12; r++)
    {
        cout<<mss1[r];
        cout<<".";
        }
    system ("pause");
}

Категория: Язык С/С++ | Просмотров: 314 | Добавил: PtpJam | Теги: поменять отрецательные и положитель, С/С++, Массивы, заполнить рандомно, замена нулей на, заполнить рендомно | Рейтинг: 0.0/0
Всего комментариев: 0
avatar