parser

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

 

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

Так держать в плане продвижения вперед... Вопросы/рекомендации...

Misha v.3 05.02.2003 21:59 / 05.02.2003 22:11

1. зачем на каждый чих/пук создавать класс? в этом случае фактически происходит оперирование двумя переменными, которые можно запросто передавать параметрами единственному _методу_. Классы стоит изобретать тогда, когда есть набор разнородных данных, и нужны механизмы, которые делают с ними что-то. и таких наборов данных/методов нужно несколько.

2. посмотри на этот код (писал бегло, мог ошибиться), мне кажется что так попроще будет:
@revolver[][added;rand_code;count]
$result[^source_table.select(0)]

# хеш, куда пишем то, что уже добавили в результат.
# нужно, чтобы не было дублирования
$added[^hash::create[]]

# $count засовываю в переменную, чтобы не доставать 
# в процессе выполнения $rand_code каждый раз ее из $source_table
$count(^source_table.count[])

# код, который вычисляет нам в цикле случайную строку
$rand_code{^eval(^math:random($count)+1)}
^while($quant > ^result.count[]){
	$rand($rand_code)
	^while($added.[$rand]){$rand($rand_code)}
	^result.join[^source_table.select(^source_table.line[] == $rand))]
	^added.add[$.$rand(1)]
}
#end @revolver[]
если нужны комментарии - обращайся, но по моему тут все просто :)