parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Дополнение

G_Z 24.05.2004 23:46 / 25.05.2004 04:36

Переделал под хэш.
@random_digits[table_limit;random_limit][table_limit;random_limit]

^if(!def $table_limit){$table_limit(1)}
^if(!def $random_limit){$random_limit(1)}

$random_digits_hash[^hash::create[]]

$result[

	$random_digits[^table::create{number}]

	^while($random_digits_hash < $table_limit){
		$random_digit(^math:random($random_limit))
		^if(!def $random_digits_hash.[$random_digit]){
			$hash_add[$.$random_digit[]]
			^random_digits_hash.add[$hash_add]
		}
	}

	^random_digits_hash.foreach[key;value]{
		^random_digits.append{$key}
	}
]
Larrikin

Дык, а я что делаю?..


Соврал я безбожно никаких не 40-50 итераций.
Данный вариант даёт максимум 14 итераций на 10 значений (из увиденного).
Так что всё очень даже неплохо.

+ в первом варианте я забыл добавить лимит ещё один.
Их два:
один - на общее количество чисел.
второй - на количество перемешиваемых.

Т.к. если в таблице допустим 30 значений, а необходимо вывести 10 такой вариант необходим.