| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Классы |
| Автор: aleksandrfnsv1 27.4.2008, 08:37 |
| У меня есть класс Trup = class private kol:integer; size:integer; prioritet:integer; public constructor Create (kol:integer; size:integer; prioritet:integer); почему делфа ругается и как сделать правильно |
| Автор: volvo877 27.4.2008, 08:41 | ||
Потому что у тебя уже есть поля класса с именами kol, size и prioritet, а ты определяешь еще и параметры конструктора с теми же именами... Ну, например, вот так:
|
| Автор: aleksandrfnsv1 27.4.2008, 11:47 | ||
Спасибо это сработало, а как сделать сортировку массива по свойству класса приоритет
|
| Автор: THandle 27.4.2008, 12:07 | ||||||||
Ох... Кто ж учит то код так оформлять?
А на кой конструктору параметры коль они не используется? Может быть так?
Как мне кажется так правильно, так как дальше идет такой вызов:
Вот тебе пузырьковая сортировка:
В аттаче проект. |
| Автор: aleksandrfnsv1 27.4.2008, 14:09 |
| но она не сортирует почему то так как надо |
| Автор: THandle 27.4.2008, 14:11 |
| aleksandrfnsv1, как понять не сортирует как надо? Сортирует по возрастанию приоритеты. А как надо? Зачем копия? http://forum.vingrad.ru/topic-208540/view-getnewpost.html |
| Автор: aleksandrfnsv1 27.4.2008, 19:53 |
| Да неправильно понял, все нормально там. а не знаетли кто как сделать, так чтобы массив заполнялся допустим не весь а число элементов в него добавлялось по random |
| Автор: Beltar 28.4.2008, 11:24 | ||||
| 2 aleksandrfnsv1 Есть соглашение о наименовании полей и методов.
Имя любого поля начинается с F, методы для записи\взятия значения с Set\Get. Тогда и проблем с именами не будет.
Так задай границы цикла случайными в чем проблема-то?? |
| Автор: aleksandrfnsv1 28.4.2008, 16:11 |
| Так задай границы цикла случайными в чем проблема-то?? А как не пойму можно пример |
| Автор: THandle 28.4.2008, 18:12 | ||
Как то так? |
| Автор: aleksandrfnsv1 28.4.2008, 19:42 |
| нет я хочу чтобы каждый промежуток времени масиив заполнялся каким то числом элементов, которые поступают не по равномерному закону распределения ( random) , а по нормальному закону распределения |
| Автор: Beltar 29.4.2008, 07:39 | ||
Если хочешь нормальный закон распределения попробуй сымитировать плотность, например, генерь Random(101) если попало в 30-70 делай 3 числа из диапазона максимальной плотности, если 10-29 и 71-90 делай 2 отклонения, если совсем крайние значения, то делай одно крайнее. Ну и хоть 10 диапазонов задай. Практически ты же, наверное, прикидываешь вероятности попадания в диапазон.
Ну заведи переменную FillCount например и сделай ей FillCount:=Randon(High(Massive)+1); и for i:=0 to FillCount do begin end; В чем проблема-то? |
| Автор: aleksandrfnsv1 29.4.2008, 20:15 |
| я вообще в вероятностях не понимаю |