Algorythmes 1-9 chiffres combinaisons possibl

Fermé
archers Messages postés 9 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 28 juillet 2009 - 18 janv. 2009 à 14:08
 toenian - 2 mai 2017 à 22:41
Bonjour, je cherche un algorythme permettant de me donner toutes les combinaisons possibles de 1-9 je vous remercie à bientot.
A voir également:

6 réponses

voici un programme pascal qui affiche toutes les combinaisons possibles des caractères numériques (chiffres) ou alphabétiques dans une chaîne ch, sachant que le nombre de combinaisons est égale au factoriel du nombre total des chiffres , exemple pour ch = 123 il existe 3! combinaisons = 6 combinaison= 6 permutations: pour le nombre 123
le programme affiche 213-231-132-312-321-123

Program combinaison;
Uses WinCrt;

Var ch:string;

Procedure Remplir (Var ch:string);
begin
writeln('donner le nombre');
Readln(ch);
End;

procedure permut(var x,y:char);
var aux:char;
begin
aux:=x;
x:=y;
y:=aux
end;

function fact(x:integer):integer;
var f,i:integer;

begin
f:=1;
for i:= 1 to x do
begin
f:=f*i ;
end;
fact:=f;
end;

procedure affichecomb(ch:string);
var i,n,np:integer;
begin
n:=length(ch);
np:=0;
repeat

for i:= 1 to n-1 do
begin
permut(ch[i],ch[i+1]);
np:=np+1;
write(ch,'-');
end;
permut(ch[1],ch[n]);
write(ch,'-');
np:=np+1;

until np =fact(length(ch));
end;

begin
remplir(ch);
writeln;
affichecomb(ch);
end.
13