muestra([]):-!. muestra([H|T]):- write(H), muestra(T). suma(_,[]):-!. suma(X,[H|T]):- Y is X + H, sformat(Salida, '~w + ~w = ~w',[X, H, Y]), writeln(Salida), suma(X, T). lee(X):- read(X). inicia:- lee(Y), suma(Y, [8, 7, 3, 1]). run:- muestra([8, 7, 3, 1]). producto(_, 11):-!. producto(X,Y):- Z is X * Y, sformat(Salida, '~w * ~w = ~w',[X, Y, Z]), writeln(Salida), Y1 is Y + 1, producto(X, Y1). tablas(11):-!. tablas(N):- producto(N,1), N1 is N + 1, tablas(N1).