|
|
|
ява, массивы и чайник
|
|||
|---|---|---|---|
|
#18+
Задача такая - есть один массив, с женскими именами, второй с мужскими, и третий масив с фамилиями. Нужно случайно выбрать 10 мужских имен и 10 фамилий к ним, 10 женских имен и 10 фамилий к ним. Из этих 10 имен с фамилиями 20% должно быть "двройных фамилий", типа Иванов-Петров. Как это можно сделать??? КАк использовать функции random randomize в массивах? спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2007, 02:21:29 |
|
||
|
ява, массивы и чайник
|
|||
|---|---|---|---|
|
#18+
Что касается, того как использовать рандом, то смотри класс java.util.Random. Создаешь объект, указываешь границы рандома, выбираешь 10 чисел и по этим индексам выбираешь данные из массивов... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2007, 09:48:42 |
|
||
|
ява, массивы и чайник
|
|||
|---|---|---|---|
|
#18+
Вот такую рандомизацию я использовал для игры пятнашки, функция initArray заполняет массив 4х4 числами от 0 до 15 без повторения. Комментировать лень, сорри :) Смысл такой - есть массив Код: plaintext 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. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2007, 19:46:47 |
|
||
|
ява, массивы и чайник
|
|||
|---|---|---|---|
|
#18+
В голову приходит тупое влобное решение - разбить фамилии на два массива - одинарные и двойные, в цикле подбора считаем выбираемые фамилии, если это очердная пятая фамилия(20% процентов - это пятая часть), то выбираем рандомом из массива с двойными, в противном случае - рандомом из массива с одинарными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2007, 20:14:15 |
|
||
|
ява, массивы и чайник
|
|||
|---|---|---|---|
|
#18+
Можно пойти с другого конца. Тут есть тонкость, не оговоренная в задании. "Иванов-Петров" и "Петров-Иванов" одна фамилия? Если нет, то можно так. Взять массив с фамилиями, решить что первые 20% фамилий образуют парные (т.е. первые 2). Их перемешиваем, сопоставляем им, соотвественно, первые два мужских и женских имени. Далее просто - берем следующую фамилию и сопоставляем ей мужское/женское имя. Для того, чтобы сделать случайную расстановку, можно изменить начальный индекс для каждого из массива (т.е. всего три вызова функции Random, для первой поизиции индекса). Тут я бы сделал класс такого массива, и обращался к фамилиям/именам через итератор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.06.2007, 00:24:05 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34593110&tid=2145427]: |
0ms |
get settings: |
13ms |
get forum list: |
26ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
48ms |
get topic data: |
19ms |
get forum data: |
5ms |
get page messages: |
96ms |
get tp. blocked users: |
3ms |
| others: | 295ms |
| total: | 517ms |

| 0 / 0 |
