![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Sav93 |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
Задача: Есть N множеств, найти множество содержащей больше различных элементов, все возможные елементы множества заданы в массиве С.
Нужно цикл, который будет заполнять все множества и цикл которы будет проверять различные элементы, тоесть цикл в цикле как я понимаю. Но не знаю как их записать...не получается что-то... |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата найти множество содержащей больше различных элементов Больше, чем что? Вообще, задание непонятно. Множество в принципе не может содержать одинаковых элементов, то есть, они все будут различными. Итак, задача сводится к тому, чтобы найти множество, содержащее максимальное количество элементов? |
Sav93 |
![]()
Сообщение
#3
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
Да, Вы правы, нам преподаветель прочитал условие с 2 задач...
|
-TarasBer- |
![]()
Сообщение
#4
|
Гость ![]() |
> Да, Вы правы, нам преподаветель прочитал условие с 2 задач...
Не понял, он начал читать начало условия одной задачи, потом завтыкал, потом прочитал конец условия другой? Вас послушать, так одни маразматики в преподах. |
Sav93 |
![]()
Сообщение
#5
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
> Да, Вы правы, нам преподаветель прочитал условие с 2 задач... Не понял, он начал читать начало условия одной задачи, потом завтыкал, потом прочитал конец условия другой? Вас послушать, так одни маразматики в преподах. Все вы поняли правельно, ну ошибся преподаватель...он у нас старенький и материал не особо выложить умеет... ![]() |
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
В таком случае о чем тема? О возрасте преподавателя? Может, все-таки будет приведено правильно звучащее задание?
|
Sav93 |
![]()
Сообщение
#7
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
Дано N множеств, найти множество содержащее максимальное количество элементов, все возможные елементы множества заданы в массиве С.
Вот так она звучит. |
Lapp |
![]()
Сообщение
#8
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Дано N множеств, найти множество содержащее максимальное количество элементов, все возможные елементы множества заданы в массиве С. Вот так она звучит. Если она так звучит, то ты начал делать неправильно: у тебя массив C - это как раз массив множеств. Вот, как-то так, думаю, нужно.. Program LabRob2; -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Sav93 |
![]()
Сообщение
#9
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
Вроде все ясно, кроме 1-го... зачем нам d?
|
Lapp |
![]()
Сообщение
#10
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Вроде все ясно, кроме 1-го... зачем нам d? Переменная d не относится к решению, она относится только к первоначальному заданию условий, а именно - к заданию массива C. Сказано, что этот массив содержит все возможные элементы системы множеств. Но как он задается - не сказано. Вот я и задал его, как захотел - промежутком чисел, начинающимся с некоторого числа, которое я назвал d. Длина же этого промежутка равна длине массива C. Если хочешь, можешь задавать значения элементов C как-то иначе - вводом с клавы или случайно, или еще как-нить.. Пока я просматривал код, чтобы вспомнить, что такое d, я заметил, что генерация множеств s[i] у меня сделана не очень хорошо.. Ниже я даю вариант более эффективного заполнения множеств (к тому же, без использования дополнительного множества t). Program LabRob2; -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Sav93 |
![]()
Сообщение
#11
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
Ага...ясненько...2-й вариант для меня более понятный, спасибо.
|
Sav93 |
![]()
Сообщение
#12
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
Еще 1 вопрос...
Так можно задать? Program LabRob2; Не будет ли это ошибкой? |
Lapp |
![]()
Сообщение
#13
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Так можно задать? for j:=1 to l do Include(s[i],c[Random(l)]); Не будет ли это ошибкой? Конечно, будет. Random(l) принимает значения от 0 до l-1, а диапазон индекса массива c - от 1 до l. Думаешь, я прибавил 1 просто, чтоб размять пальцы? ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Sav93 |
![]()
Сообщение
#14
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
А если +1 оставить, рандомайз может там присутствовать с l = 255?
|
Lapp |
![]()
Сообщение
#15
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
А если +1 оставить, рандомайз может там присутствовать с l = 255? Что бы сие значило? при чем тут "рандомайз"?Ты имей в виду только, что l и d нужно выбирать так, чтоб сумма l+d не превышала 255. Добавлено через 4 мин. если ты хочешь, чтобы в массиве C были ВСЕ возможные числа типа byte (от 0 до 255, всего 256 штук), то положи l=256, а d=-1 -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Sav93 |
![]()
Сообщение
#16
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 24 Пол: Мужской Реальное имя: Василий Репутация: ![]() ![]() ![]() |
Цитата то положи l=256, а d=-1 Так не работает... ерор 76 выписывает...только если l= 255, все ок. |
volvo |
![]()
Сообщение
#17
|
Гость ![]() |
Тип переменных i и j поменяй с Byte на что-нибудь более ёмкое, на Word например. У тебя банальный выход за пределы значений, тип Byte может хранить 0 .. 255, а ты хочешь затолкать в него в цикле 256... Не получится.
|
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 17:26 |