Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
Delphi 7 Enterprise
|
Re: Haus vom Nikolaus algo
11. Jan 2006, 23:03
So, habe mich nochmal damit beschäftigt.
Hier mal das übersetzte C-Programm von der oben erwähnten Seite...
Delphi-Quellcode:
program Nikolaus;
{$APPTYPE CONSOLE}
uses
SysUtils;
type
TZeichen = 0..1;
TArray = array[0..4, 0..4] of TZeichen;
const
mtrx:TArray = (
(0, 1, 1, 1, 0),
(1, 0, 1, 1, 0),
(1, 1, 0, 1, 1),
(1, 1, 1, 0, 1),
(0, 0, 1, 1, 0)
);
var
zaehl:array[0..9] of integer;
procedure haus_rek(mtrx:TArray;
const start:integer;
const kn:integer;
const count:integer;
weg:string);
var i:integer;
weg_neu:string;
begin
for i:=0 to 4 do begin
if mtrx[kn][i] = 1 then begin
weg_neu:=weg + '->' + inttostr(i);
if count = 7 then begin
inc(zaehl[start]);
if start = 0 then
writeln(zaehl[start]:2,': ', weg_neu);
exit;
end;
mtrx[kn][i]:=0;
mtrx[i][kn]:=0;
haus_rek(mtrx, start,i, count+1, weg_neu);
mtrx[kn][i]:=1;
mtrx[i][kn]:=1;
end;
end;
inc(zaehl[start+5]);
end;
var
i:integer;
weg:string;
begin
weg:='';
for i:=0 to 9 do
zaehl[i]:=0;
writeln('Konstruktionsmoeglichkeiten vom Knoten 0 aus:');
for i:=0 to 4 do begin
weg:=inttostr(i);
haus_rek(mtrx, i, i, 0, weg);
end;
for i:=0 to 4 do
writeln('-> Von Knoten ', i,
' aus gibt es ', zaehl[i],
' Moeglichkeiten, ', zaehl[i+5],
' Sackgassen.');
end.
Das Ganze ist eine Konsolenanwendung.
MfG
Thorsten
|