Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];

Вниз

Сортировка массивов   Найти похожие ветки 

 
Soi   (2003-10-01 06:08) [0]

Помогите пожалуйста. Связался с delphi и столько сразу проблем, в ПЕРЛЕ такого я и не знал.
Проблема такая:

1) Как забить массив случайными числами (например в диапазоне 1..100), но так, чтобы эти числа не повторялись?

2) Или если можно, то существующий массив m:array[1..50] of integer отсортировать в произвольном порядке.

Заранее благодарен.


 
Soi   (2003-10-01 06:43) [1]

1


 
Думкин   (2003-10-01 06:51) [2]

У МВо есть программа, которая все делает с массивами и РНД.
Далее:
http://delphibase.endimus.com/?action=viewtopic&topic=mathsort


procedure TForm1.FormCreate(Sender: TObject);
begin
//Randomize выполняется один раз, например, при старте программы
//если этого не сделать, при каждом запуске программы последовательность
//чисел будет начинаться одинаково!
//Не следует вызывать Randomize в цикле:
// for ...
// Randomize;
// i:=Random(100);
// end;
//Поскольку Randomize инициализирует счетчик по времени,
//скорее всего значения i будут многократно повторяться

Randomize;
end;

.....
procedure TForm1.Button6Click(Sender: TObject);
var
A: array[1..N] of Integer;
i, j, temp: Integer;
begin
//получение массива случайных неповторяющихся чисел
//в диапазоне 1..N
//перемешиванием массива последовательных чисел

Memo1.Lines.Add("");
for i := 1 to N do
A[i] := i;
for i := 1 to N do begin
temp := A[i];
J := Random(N) + 1;
A[i] := A[j];
A[j] := temp;
end;
for i := 1 to N do
Memo1.Lines.Add(IntToStr(A[i]));
end;


Текст взят из программы любезно предоставленной МВо. ССылку не знаю.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
14-40667
alxx
2003-09-23 16:30
2003.10.13
Найти файлы по маске и в них заменить одну строку на другую


1-40383
lovres
2003-10-01 10:53
2003.10.13
Подскажите простой бесплатный компонент для экспорта в Excel .


3-40298
Дмитрий К.
2003-09-22 14:12
2003.10.13
Тип TimeStamp и TSystemTime


14-40649
VictorT
2003-09-25 14:15
2003.10.13
Интересует ваше мнение по поводу...


1-40380
Aquamarin
2003-10-01 12:36
2003.10.13
Освобождение памяти после отработки указателей





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский