wechsel( N10, N20, N50) :-
c1( N10),
c2( N20),
c5( N50),
100 is N10 * 10 + N20 * 20 + N50 * 50.
c5( 0).
c5( 1).
c5( 2).
c2( N) :- c5( N).
c2( 3).
c2( 4).
c2( 5).
c1( N) :- c2( N).
c1( 6).
c1( 7).
c1( 8).
c1( 9).
c1( 10).
Back to example 2.1
karte( A, B, C, D, E) :-
nachbar( A, B),
nachbar( A, D),
nachbar( A, E),
nachbar( B, C),
nachbar( B, D),
nachbar( B, E),
nachbar( C, D),
nachbar( C, E),
nachbar( D, E).
farbe( rot).
farbe( blau).
farbe( gelb).
farbe( gruen).
nachbar( X, Y) :-
farbe( X),
farbe (Y),
X \= Y.
Back to example 2.2
dichte( S, D) :-
einwohner( S, E),
flaeche( S, F),
D is E/F.
nachbarn( S1, S2) :-
nachbar( S1, S2).
nachbarn( S1, S2) :-
nachbar( S2, S1).
nachbar_ch( S) :-
nachbarn( ch, S).
nachbar_f( S) :-
nachbarn( f, S).
nachbar_d( S) :-
nachbarn( d, S),
einwohner( d, ED),
einwohner( S, ES),
flaeche( d, FD),
flaeche( S, FS),
ES > ED,
FS > FD.
nachbar_ch1( S) :-
nachbarn( ch, S),
dichte( ch, DCH),
dichte( S, DS),
DS > DCH.
Back to example 2.3