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

Сортировка одномерного массива - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.64
BloodWolf
0 / 0 / 0
Регистрация: 08.06.2010
Сообщений: 9
08.06.2010, 23:53     Сортировка одномерного массива #1
Здраствуйте, нужна помощь,а то в голову нечего не лезит...
Есть одномерный массив из чисел ["1","2","3","4","5"]. Мне необходимо сортировать их рандомно, что бы получилось (к примеру)["3","5","1","4","2"], надо сортировать так, что бы числа не повторялись.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2010, 23:53     Сортировка одномерного массива
Посмотрите здесь:

C++ Сортировка одномерного массива
сортировка одномерного массива C++
Сортировка одномерного массива C++
C++ Сортировка одномерного массива С++
Сортировка одномерного массива C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_Eldar_
 Аватар для _Eldar_
44 / 29 / 3
Регистрация: 31.10.2009
Сообщений: 200
09.06.2010, 01:01     Сортировка одномерного массива #2
BloodWolf,

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
#include <iostream>
#include<conio.h>
#include <time.h>
 
 using namespace std;
 
 int main(){
    
    const int size = 5;
 
    int arr[size];
 
    srand(unsigned(time(NULL)));
 
    for(int i = 0; i < size; ++i){
        arr[i] = rand()%10;
    }
    cout << "Old array: " << endl;
 
    for(int i = 0; i < size; ++i){
        cout << arr[i] << " ";
    }
    cout << endl;
 
    int temp, m, n;
 
    for(int i = 0; i < size; ++i){
        n = rand()%size;
        m = rand()%size;
        if(n != m){
            temp = arr[n];
            arr[n] = arr[m];
            arr[m] = temp;
        }
    }
 
    cout << "New array: " << endl;
 
    for(int i = 0; i < size; ++i){
        cout << arr[i] << " ";
    }
    cout << endl;
 
    system("pause");
    return 0;
 }
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,689
09.06.2010, 10:29     Сортировка одномерного массива #3
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <algorithm>
 
int main ()
{
    int MAS[]={1,2,3,4,5};
    std::random_shuffle (MAS, MAS+sizeof (MAS) / sizeof (MAS[0]));
 
    system ("pause");
    return 0;
}
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
09.06.2010, 11:16     Сортировка одномерного массива #4
вариант на С
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
    
int cmp_func(const void * a, const void *b){
    return rand() % 201 - 100;
}
    
int main(void){
    int arr[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }, i;
    
    srand(time(NULL));
    
    printf("Before: ");
    for ( i = 0; i < sizeof(arr) / sizeof(*arr); ++i )
        printf("%d ", arr[i]);
    
    qsort(arr, sizeof(arr) / sizeof(*arr), sizeof(*arr), cmp_func);
    
    printf("\nAfter:  ");
    for ( i = 0; i < sizeof(arr) / sizeof(*arr); ++i )
        printf("%d ", arr[i]);
    printf("\n");
    
    exit(0);
}
FireNovel
09.06.2010, 12:29
  #5

Не по теме:

easybudda, Вопрос, а зачем main() заканчивать exit'ом, а не просто return'ом.

easybudda
09.06.2010, 12:55
  #6

Не по теме:

FireNovel, привычка
На самом деле есть разница между выходом с помощью exit() и return, но не в этой программе...

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2010, 17:37     Сортировка одномерного массива
Еще ссылки по теме:

C++ Сортировка одномерного массива
C++ Сортировка одномерного массива
C++ Сортировка одномерного массива

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

Или воспользуйтесь поиском по форуму:
BloodWolf
0 / 0 / 0
Регистрация: 08.06.2010
Сообщений: 9
09.06.2010, 17:37  [ТС]     Сортировка одномерного массива #7
спс большое всем !)
Yandex
Объявления
09.06.2010, 17:37     Сортировка одномерного массива
Ответ Создать тему
Опции темы

Текущее время: 21:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru