Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 25.04.2012
Сообщений: 15
1

Перемешать масив так, чтобы числа в нём не повторялись

15.05.2012, 21:15. Показов 1411. Ответов 3
Метки нет (Все метки)

помогите перемешать масив так чтобы числа в нём не повторялись.Массив состоит из 28 елементов
которые начинаются от 1 до 28.
C++
1
2
3
4
5
6
void domino::sklad(void)
{for (i=0;i<28;i++)
{b[i]=i+1;
  Form1->Memo1->Lines->Add("  b["+IntToStr(i+1)+"]= "+IntToStr(b[i]));
   }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.05.2012, 21:15
Ответы с готовыми решениями:

Перемешать массив так, чтобы числа в нём не повторялись
как сделать чтоб при выводе числа не повторялись ? #include &quot;stdafx.h&quot; #include &lt;iostream&gt;...

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

Рандомное заполнение массива так, чтобы числа в нем не повторялись
ребята помогите , как сделать рандомное заполнение массива так чтобы числа в нем не повторялись ...

Объединить два массива так, чтобы числа в новом массиве не повторялись
я даже их объединить не могу, они разной размерности и не выходит=( вот что я писала #include...

3
return (true);
1973 / 1108 / 219
Регистрация: 19.04.2011
Сообщений: 2,345
16.05.2012, 11:48 2
C++
1
2
3
4
5
6
7
8
9
10
short r1, r2, temp;
randomize();
for (short i=0; i<100; i++)
{
        r1=rand()%28;
        r2=rand()%28;
        temp=b[r1];
        b[r1]=b[r2];
        b[r2]=temp;
}
0
Практикантроп
4679 / 2599 / 496
Регистрация: 23.09.2011
Сообщений: 5,579
17.05.2012, 18:07 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TForm1::Button1Click(TObject *Sender)
{
     int p,ra[30];
     for (int i=0;i<28;i++) ra[i]=0;
     randomize;
     for (int i=0;i<28;i++)  {
       p = rand() % 28;
       while (ra[p]!=0) p = rand() % 28;
       ra[p]=i+1;
     }
     for (int i=0;i<28;i++) Memo1->Lines->Add(IntToStr(ra[i]));
}
0
Эксперт С++
8359 / 6097 / 610
Регистрация: 10.12.2010
Сообщений: 28,423
Записей в блоге: 30
17.05.2012, 20:37 4
Лучший ответ Сообщение было отмечено как решение

Решение

C++
1
2
3
4
#include <algorithm>
int A[28];
for(int i=0;i<28;i++) A[i]=i+1; // заполнение
std::random_shuffle(&A[0],&A[28]);// перемешивание
3
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.05.2012, 20:37

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Как сделать так чтобы вопросы не повторялись?
Есть массив из 5-ти вопросов. Выбираются случайно 3. Как сделать так чтобы вопросы не повторялись?...

Судоку: Сделать так, чтобы цифры не повторялись
Пишу игру судоку. Не могу сделать так, чтобы цифры не повторялись. Вот код заполнения поля: ...

Как сделать так, чтобы элементы в запросе не повторялись?
void Main() { var length = 3; var values = Enumerable.Range('a', 26).Select(c =&gt;...

Как сделать так чтобы символы в паролях не повторялись
import random import string def generate_password(m): x = random.randint(1, m - 2) ...

Сформировать строку с брендами, но так чтобы они не повторялись
Добрый день, столкнулся с такой проблемой, необходимо сформировать строку с брендами, но так чтобы...

Преобразовать массив так, чтобы сначала в нем располагались простые числа, потом остальные
Привет, очень нужна помощь в решении двух задач по паскалю. 1) преобразовать массив так, чтобы...


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

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

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