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

Вывод нескольких рандомных чисел из массива - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
06.04.2011, 20:10     Вывод нескольких рандомных чисел из массива #1
Народ, есть такой вопрос. У меня есть массив с 15 разными числами. Как сделать так, чтобы на экран выводилось 5 рандомных чисел чисел из этого массива. И необходимо, чтобы при следующем запуске эта комбинация уже отличалась от предыдущей.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
06.04.2011, 20:13     Вывод нескольких рандомных чисел из массива #2
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <ctime>
 
int main (void)
{
    srand (time (NULL));
    //
    //
    for (size_t i = 0; i < 5; i++)
        std::cout << MAS[rand () % 15] << std::endl;
}
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
06.04.2011, 20:54  [ТС]     Вывод нескольких рандомных чисел из массива #3
А можно так сделать, чтобы числа не повторялись?
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
06.04.2011, 20:57     Вывод нескольких рандомных чисел из массива #4
На вскидку и простым способом - помоему нет.
Overmind024
99 / 99 / 6
Регистрация: 10.09.2010
Сообщений: 267
06.04.2011, 21:12     Вывод нескольких рандомных чисел из массива #5
По моему достаточно просто))
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
#include <iostream>
#include <ctime>
#include <conio.h>
#include <algorithm>
 
using namespace std;
 
int main ()
{
    srand (time (NULL));
    int n,m;
    cout << "n = ";cin>>n;
    int* ar = new int[n];
    cout << "Enter array:" << endl;
    for(int i=0;i<n;i++)
        cin >> ar[i];
 
    cout << "m = "; cin >> m;
    for (int i = 0; i < m; i++)
    {
        int c = rand () % (n-i);
        cout << ar[c] << ' ';
        swap(ar[c],ar[n-i-1]);
    }
    cout << endl;
 
    _getch();
    return 0;
}
Yandex
Объявления
06.04.2011, 21:12     Вывод нескольких рандомных чисел из массива
Ответ Создать тему
Опции темы

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