задача. Вывести перестановки слов в предложении. Не выводить одинаковые перестановки
например: Если дано предложение из одинаковых слов уу уу уу уу
перестановки будут такие:
уу уу уу уу
уу уу уу уу
уу уу уу уу
уу уу уу уу
а надо вывести только уу уу уу уу
заранее БОЛЬШОЕ СПАСИБО!!!
Добавлено 1 неделю назад
вот сама задача ее надо доделать правильно
program per;
{$APPTYPE CONSOLE}
uses
SysUtils;
type Combination=array [1..100] of integer;
var N: byte;S:string;p:integer;
j,i:integer;
x: combination;
var a:array[0..100] of string;
// Перевод из строки
procedure Print;
begin
for i:=1 to n do
write(' ',a[x]);
writeln;
end;
procedure swap(var d,j:integer);
var x:integer;
begin
x:=d;
d:=j;
j:=x;
end;
procedure generate(k:byte);
var j:integer;
begin
if k=N then
else
for j:=k+1 to n do begin
swap (x[k+1],x[j]);
generate(k+1);
swap (x[k+1],x[j]);
end;
end;
begin
write('vvedite predlogenie: ');readln(s);
s:=s+' '; j:=0;
while copy (s,1,1)=' ' do delete(s,1,1);
while s<>'' do begin
j:=j+1;
while copy (s,1,1)<>' ' do begin
a[j]:=a[j]+copy (s,1,1);
delete (s,1,1);
end;
while copy (s,1,1)=' ' do delete(s,1,1);
end;
N:=j;
for i:=1 to N do x:=i;
generate(0);
readln;
end.
Ну, а что вам конкретно мешает доделать ее правильно?
я не знаю как доделать =(