![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Tima |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Репутация: ![]() ![]() ![]() |
имеется n чисел, написать программу, так чтобы сумма выбранных чисел делилась на n.
например n=6, а выбирать нужно по 2 числа, так чтобы сумма этих двух была равна 6, выдать все возможные комбинации...помогите плз. |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата так чтобы сумма этих двух была равна 6 Ты уж реши для себя, равна или все-таки кратна... А то в первой части задания ты говоришь одно, а во второй - другое...Здесь: FAQ: Комбинаторика -> Сочетания есть программа генерации всех сочетаний (сделай из 6 по 2), и проверяй, соответствуют ли элементы массива с найденными индексами заданному условию... |
Tima |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Репутация: ![]() ![]() ![]() |
помогите сделать проверку на кратность сумму чисел на N...
for i:=0 to m do a[i]:=i; { формируется 1-е сочетание} repeat use; I:=m; while a[i]=n-m+i do dec(i); {поиск элемента для изменения} inc(a[i]); if ( a[i] div n = 0 ) then inc(sum); {я сделал такую проверку правильно ли? если нет то какую нужно?} for j:=i+1 to m do a[j]:=a[j-1]+1; {изменение правой части сочетания} then inc(sum);} until i=0; |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Надо проверять остаток от деления...
if ( a[i] MOD n = 0 ) then inc(sum); Причем ты это делаешь совершенно не там, где нужно... Я бы сделал это прямо в процедуре Use (перед выводом результатов): Var |
Tima |
![]()
Сообщение
#5
|
Группа: Пользователи Сообщений: 3 Пол: Мужской Репутация: ![]() ![]() ![]() |
спс..да что-то я с difom запарился точно думал про одно написал про другое, спс=))
|
![]() ![]() |
![]() |
Текстовая версия | 19.04.2025 21:32 |