22 апреля 2016 г.

Дан массив из 20 чисел. Отсортировать первую и третью пятерку чисел по возрастанию, а вторую и четвертую цепочку чисел по убыванию.

srand(time(0));
const int size = 50;
int A[size];

for (int i = 0; i < size; i++){
A[i] = rand() % 61 - 30;
cout << A[i] << "\t";
if ((i + 1) % 5 == 0)
cout << endl;
}
cout << "============================================" << endl;
int tmp = 0;
bool rele = false;//переключалка
int i_temp = 0;//нижняя граница
int size_temp=5;//верхняя граница
for (;size_temp<=size; i_temp += 5, size_temp += 5){
if (rele==false){
for (int i = i_temp; i < size_temp; i++){
for (int j = i_temp+1; j < size_temp; j++){
if (A[j - 1] > A[j]){
tmp = A[j];
A[j] = A[j - 1];
A[j - 1] = tmp;
}
}
}
rele = true;
}
else{
for (int i = i_temp; i < size_temp; i++){
for (int j = i_temp + 1; j < size_temp; j++){
if (A[j - 1] < A[j]){
tmp = A[j];
A[j] = A[j - 1];
A[j - 1] = tmp;
}
}
}
rele = false;
}
}
for (int i = 0; i < size; i++){
cout << A[i] << "\t";
if ((i+1)%5==0)
cout << endl;
}
system("pause");

Комментариев нет:

Отправить комментарий