Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
g26
0 / 0 / 0
Регистрация: 10.02.2016
Сообщений: 12
1

Перемешивание элементов массива случайным образом

22.02.2016, 20:07. Просмотров 1002. Ответов 3
Метки нет (Все метки)

Здравствуйте! Помогите пожалуйста. Нужно перемешать елементы массива случайным образом. Масив вводится вручную, а после нужно перемешать его и вывести, естественно. Никак не могу додуматься как это сделать. Спасибо большое, кто поможет!

C++ (Qt)
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
#include <iostream>
#include <ctime>
using namespace std;
template <typename T> T In(T M[], int size, T input)
{
 
    for (int i = 0; i < size; i++)
    {
        cout << "\nElement " << i + 1 << " = ";
        cin >> input;
        M[i] = input;
 
    }
    return M[0];
}
template <typename T> void PrintArray(T M[], int size)
{
    cout << "{ ";
    for (int i = 0; i < size; i++)
    {
        cout << M[i] << " ";
    }
 
    cout << " }" << endl;
}
int main()
{
    const int size = 10;
    int M[size], count = 0, input = 0;
    cout << "Enter elements to array:\n";
    In(M, size, input);
    PrintArray(M, size);
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2016, 20:07
Ответы с готовыми решениями:

Перемешивание элементов массива случайным образом
Здравствуйте. Помогите написать функцию, которая рандомно перемешивает...

заполнение массива случайным образом
Помогите на языке Си заполнить массив символов случайным образом символами с...

Сформировать случайным образом масив из 20 элементов
Помогите написать прогу на С++ &quot;Сформувати випадковим чином масив із 20...

Заполнение массива случайным образом и другие операции
Нужно объявить массив целых чисел и заполнить его случайными значениями с...

Одномерные массивы.Сформировать случайным образом два массива d(10) и a(10)
Сформировать случайным образом два массива d(10) и a(10). Сложить их. В новом...

3
Kerry_Jr
Эксперт PHP
2210 / 2006 / 940
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
22.02.2016, 20:24 2
Лучший ответ Сообщение было отмечено g26 как решение

Решение

g26,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
template <typename T>
void shuffle(T *array, size_t size)
{
    T temp;
    for (size_t i = 0; i < size; ++i)
    {
        size_t j = rand() % size;
        if (i != j)
        {
            temp = array[i];
            array[i] = array[j];
            array[j] = temp;
        }
    }
}
не забудьте в mainsrand вызвать
1
Croessmah
++Ͻ
14610 / 8364 / 1576
Регистрация: 27.09.2012
Сообщений: 20,558
Записей в блоге: 2
Завершенные тесты: 1
22.02.2016, 20:35 3
Цитата Сообщение от g26 Посмотреть сообщение
Нужно перемешать елементы массива случайным образом.
std:shuffle в помощь
2
g26
0 / 0 / 0
Регистрация: 10.02.2016
Сообщений: 12
22.02.2016, 20:37  [ТС] 4
Спасибо большое!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2016, 20:37

Задать случайным образом одномерный массив размерности N из целочисленных элементов
Задать случайным образом одномерный массив размерности N из целочисленных...

В одномерном массиве, состоящем из n вводимых случайным образом целых элементов
В одномерном массиве, состоящем из n вводимых случайным образом целых...

Нужно сгенерировать элементы массива случайным образом с помощью функции rand
Нужно сгенерировать элементы случайным образом с помощью функции rand....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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