Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Djhoodo
0 / 0 / 0
Регистрация: 24.10.2013
Сообщений: 4
#1

Не знаю как отсортировать - C++

24.10.2013, 17:20. Просмотров 205. Ответов 1
Метки нет (Все метки)

Есть матрица 22х22, нужно заполнить его случайными числами от-22 до 22 и отсортировать четные столбцы в обратном порядке, а нечетные в прямом.
Масив я создал, помогите пожалуйста его отсортировать.
Заранее спасибо.

#include "stdafx.h"
#include <iostream>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{const int n=22;
int a[n][n];
int m;
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{a[i][j]=rand()%(n+1);
if(rand()%2==0)
{a[i][j]=a[i][j]*(-1);}}}
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cout<<a[i][j]<<'\t';}
cout<<endl;}
system("pause");
return 0;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.10.2013, 17:20     Не знаю как отсортировать
Посмотрите здесь:

Не знаю как написать - C++
Помогите пожалуйста ! Задание : Дан символьный файл. Получить копию этого файла. совсем не пойму что делать... Есть ли какие либо...

Я не знаю как доработать - C++
Написал код, но очень криво и нифига ничего не работает. Наш препод ничерта не объясняет =( Учу С всего 2 месяца Итак задание:...

Не знаю как реализовать - C++
Итак, пользователь может ввести, а может и ничего не вводить, но програма выводит число через каждые sleep(500) как реализировать...

Не знаю как выполнить - C++
Помогите пожалуйста с этой задачей: Напишите функцию void compare (char str1, char str2), сравнивающую 2 символьных массива. Функция main...

Не знаю как назвать - C++
Подскажите пожалуйста, где здесь ошибка? Пытался скомпилировать в Microsoft Visual C++ (2010) Нажал на кнопку Run, а там ошибка, ну...

Не знаю как исправить ошибку - C++
при выводе всего списка не выдает верную информацию. Не могу понять что не так, помогите. Заранее спасибо. #include &lt;stdio.h&gt; ...

Не знаю как написать прогу! - C++
Привет! Решил научиться программированию, и в данный момент мне очень нужна прога которая копирует данные из файла .ini в другой файл .ini ...

Сортировка(я не знаю как сделать) - C++
Имеется одномерный массив длинной N=40. Отсортировать по уменьшению методом бинарного сортирования те элементы массива, которые являются...

Не знаю как обратиться к переменной - C++
есть такой код class a{ public int q; }; class b{ public a r; }; int main(){ b test;

2 программы, не знаю как написать( - C++
1) Вычислить Z=(S1+S2)/2 , где S1-сумма положительных элементов массива X, а S2- сумма отрицательных элементов массива A. Суммы вычислять в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
jurok_85
238 / 221 / 76
Регистрация: 21.02.2013
Сообщений: 515
Завершенные тесты: 1
25.10.2013, 14:05     Не знаю как отсортировать #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <iomanip>
using namespace std;
void fill_arr(int arr[][5],  const size_t c, const size_t r)
{
    for(size_t i = 0; i != c; i++)
    {
        for(size_t j = 0; j != r; j++)
        arr[i][j] = -22 + rand()% 45;
    }
}
void print_arr(int arr[][5],  const size_t c, const size_t r)
{
 
    for(size_t i = 0; i != c; i++)
    {
        for(size_t j = 0; j != r; j++)
        cout << setw(4) <<arr[i][j];
        cout << endl;
    }
 
}
void sort_arr(int arr[][5],  const size_t col, const size_t row)
{   int min, max;
    size_t index;
     for(size_t i = 0; i != row; i++)
     {
         int temp;
         if(i% 2  != 0)
         {
             for(size_t N = 0; N != col -1; N++)
             {
                 min = arr[N][i];
                 index = N;
                 for(size_t j = N; j != col; j++)
                 {
                     if(min > arr[j][i])
                     {
                         min = arr[j][i];
                         index = j;
                     }
                 }
                 temp = arr[N][i];
                 arr[N][i]= arr[index][i];
                 arr[index][i] = temp;
 
             }
         }
         else
         {
               for(size_t N = 0; N != col -1; N++)
             {
                 max = arr[N][i];
                 index = N;
                 for(size_t j = N; j != col; j++)
                 {
                     if(max < arr[j][i])
                     {
                         max = arr[j][i];
                         index = j;
                     }
                 }
                 temp = arr[N][i];
                 arr[N][i]= arr[index][i];
                 arr[index][i] = temp;
 
             }
         }
     }
}
 
int main()
{
    const size_t col = 10, row = 5;
    int arr[col][row];
    fill_arr(arr, col, row);
    print_arr(arr, col, row);
    sort_arr(arr, col, row);
    cout << endl << endl;
    print_arr(arr, col, row);
}
Yandex
Объявления
25.10.2013, 14:05     Не знаю как отсортировать
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru