The Jackal Skrevet 2. desember 2002 Del Skrevet 2. desember 2002 Noen som har greie på programmeringspråket prolog her? Hvis det er, så er problemstillingen følgende: programmet skal ta i mot 4 edges, som f.eks [(a,B),(b,c),(c,d),(d,e)]. programmet igjen skal finne ut om dette er et spanning tree. Har foreløpig klart å generere alle mulige trær, men klarer ikke finne ut om alle nodene er connected, slik at det faktisk er et spanning tree. Noen som har en fin algoritme for å finne ut om nodene er connected,eventuelt noen linker for å finne ut av det? Her er det foreløpige programmet: node(a). node(B). node©. node(d). node(e). edge_no(4). length([],0). length([H|T],N):- length(T,M), N is M+1. member(H,[H|T]). member(H1, [H2|T]):- member(H1,T). isedge((X,Y)):-node(X),node(Y), + (X=Y). edges([H]):- isedge(H). edges([(X,Y)|T]):-edges(T),edges([(X,Y)]), + (member((X,Y),T)). connected([(X,Y)|T]):-node(Z),node(X),node(Y),isedge((X,Y)),isedge((Y,W)),isedge((W,Z)). spanningtree(X):-edge_no(N),length(X,N),edges(X). Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå