| LEDNumbers.pl |
|---|
number(0,[[' _ '],['| | '],['|_| ']]).
number(1,[[' '],['| '],['| ']]).
number(2,[[' _ '],[' _| '],['|_ ']]).
number(3,[['_ '],['_| '],['_| ']]).
number(4,[[' '],['|_| '],[' | ']]).
number(5,[[' _ '],['|_ '],[' _| ']]).
number(6,[[' _ '],['|_ '],['|_| ']]).
number(7,[['_ '],[' | '],[' | ']]).
number(8,[[' _ '],['|_| '],['|_| ']]).
number(9,[[' _ '],['|_| '],[' _| ']]).
digits(0,[]).
digits(X,[H|T]) :- (X/10 > 0 -> H1 is floor(X/10), H is X mod 10, digits(H1,T)), !.
accRev([],A,A).
accRev([H|T],A,R) :- accRev(T,[H|A],R).
getDigits(L,R) :- digits(L,Y), accRev(Y, [], R).
show_records([]).
show_records([A|B]) :-
print_records(A), nl,
show_records(B).
print_records([]).
print_records([A|B]) :-
format('~w',A),
print_records(B).
merge([L], L).
merge([H1,H2|T], R) :- maplist(append, H1, H2, H),
merge([H|T], R), !.
listnum([],[]).
listnum([H1|T1],[R|Y]) :- number(H1,R), listnum(T1,Y).
led(X) :- getDigits(X,Y), listnum(Y,Z), merge(Z,R), show_records(R).
|
Wanna see it in action? Me too -;)
Back to learning -;)
Greetings,
Blag.
Development Culture.

No hay comentarios:
Publicar un comentario