Помощь - Поиск - Пользователи - Календарь
Полная версия: Опять рекурсия и нет
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
arhimag
Задачка : задача о выводе подстановок, тольок с помошью рекурсии
и задача о выводе последовательностей
111
112
121
122
211
212
221
222(пример для Н=3 и М=3)
arhimag
я знаю что это не хорошо, но воспользовалась что он юзал мой комп для входа сюда и сохранил пароль(свой посеяла) К И С К А
volvo
arhimag, он(а) же К И С К А
Ты для себя реши, что тебе надо: то, что приведено в предыдущем посте - НЕ перествновка. Перестановка для 3-х элементов выглядит так:
Цитата(Console)
321
231
213
312
132
123
А у тебя - что-то "с повторениями". Скорее всего - "сочетания с повторениями"...
arhimag
нуда!!! только мне нужны сочетания с повторениями и подстаноски в рекурсии, сочетания с повторениями -еще без!!
volvo
Ну, например, вот так рекурсивно генерируются сочетания:
const
n = 3;
m = 2;

procedure s_pov(s: string);
var i: integer;
begin
if length(s) = n then writeln(s)
else
for i := 1 to m do
s_pov(s+chr(ord('0') + i));
end;

begin
s_pov('');
end.
K Y S K A
Ну а мне без рекурсии то надо, и извините, ответа не видела 10.gif 10.gif dance.gif
Ой извините не правильно условие дала, мне через пробел то цифры надо!!! Сама вспомнила только сейчас!! Еще раз извинимте за создание второгоо топика!
volvo
А вот это, извините, твоя проблема... Значит так надо.

P.S. Ты по-русски читать умеешь? Что написано в задании?
Цитата
Задачка : задача о выводе подстановок, тольок с помошью рекурсии и задача о выводе последовательностей

Вопросы? mad.gif
K Y S K A
Извините...
Но не нимательно прочила свое условие из задачника unsure.gif unsure.gif
А как только сейчас прочитала что в топике написала и вот поняла ошибку... Получается если б я за эти пол месяца её и решила бы, то реша бы не правильно blush.gif blush.gif blush.gif !help.gif !help.gif ypriamii.gif ypriamii.gif ypriamii.gif ypriamii.gif ypriamii.gif
Помогите, не хочется зачет провалить!!!
K Y S K A
cray.gif cray.gif cray.gif bomb.gif жАЛЬ А Я НАДЕЯЛАСЬ, ЧТО ВЫ МНЕ ПОМОЖИТЕ!!
volvo
Может, ты все-таки дашь НОРМАЛЬНОЕ и правильное условие? А то я уже не знаю, что именно тебе нужно... unsure.gif
K Y S K A
Вводятся числа 1<=n,k<=200000, такие что k^n<=100000 Напечатайте все последоватлености N чисел диапазона 1..k ( каждый элемент последовательности через пробел) в лексикографическом порядке. с рекурсией.
Ну вот где-то все..... 10.gif 10.gif 10.gif
Извините, что приходиться просить так быстро сделать, просто сделала все задачи к сегодняшнему дню, а эти две не рпинялись cray.gif
volvo
Цитата
Напечатайте все последовательности N чисел диапазона 1..k (каждый элемент последовательности через пробел) в лексикографическом порядке. с рекурсией

Вот оно:
const
n = 3;
k = 2;

procedure s_pov(s: string);
var i: integer;
begin
if length(s) = n then begin
for i := 1 to length(s) do
write(s[i] + ' ');
writeln;
end
else
for i := k downto 1 do
s_pov(s+chr(ord('0') + i));
end;

begin
s_pov('');
end.


А насчет второго - извини, понятия "подстановка" в комбинаторике не существует... Приведи пример того, чего ты хочешь...
K Y S K A
Все решилаsmile.gif

М
А помоему Volvo решил unsure.gif
klem4

K Y S K A
Ура ... У меня принялась эта задача, вот только перестановки не принялись sad.gif

Клема, о чем это ты??? blink.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.