Este codigo realiza un programa de un menu de un restauran con tres entradas, mesajes de salida
pausa :- nl,write('Pulsa <Enter> para continuar '),
skip(10).
pausa1 :- nl,write('Pulsa <Enter> para confirmar el pedido '),
skip(10).
/* borraPantalla <- borra la pantalla */
borraPantalla :- borraLinea(25).
borraLinea(1) :- !,nl.
borraLinea(N) :- nl,N1 is N-1,borraLinea(N1).
/*Escribe caracteres*/
escribe([]).
escribe([X|Y]):-
put(X),
escribe(Y).
% Instrucciones del mensaje de error
error:-
borraPantalla,
escribe("La opción no existe"), nl,
escribe("O el número escrito esta equivocado"),
pausa.
% Instrucciones Del Mensaje de Salida
salida:-
borraPantalla,
escribe("|------¡Que tengan buen provecho gracias por venir------|"),nl,
escribe("|----------Universidad Autónoma De Guerrero---------|"),nl,
escribe("|---------------Facultad de Matemáticas-------------|"),nl,
pausa,
halt.
% Instrucciones Del Manejo de opciones Del Menu Principal
opciones(X):-
( (X = 1) ->
escribe("Pechuga rellena de Pollo"),nl,
escribe("Arroz"),nl,
escribe("frijoles"),nl,
escribe("Refresco de 600 ml"),nl,
pausa1;
(X = 2) ->
escribe("caldo rojo y verde"),nl,
escribe("Arroz"),nl,
escribe("Sopa Fria"),nl,
escribe("Refresco de 600 ml"),nl,
pausa1;
(X = 3) ->
escribe("Carne de res en salsa verde"),nl,
escribe("Arroz"),nl,
escribe("Frijoles"),nl,
escribe("Refresco de 600ml"),nl,
pausa1;
(X = 4) -> salida;
error).
% Instrucciones Menú Principal
menu:-
borraPantalla,
escribe("-------Restaurant Doña chonita---------"),nl,
escribe("-----------Menu principal--------------"),nl,
escribe("Seleccione Su Menu:"),nl,
tab(10),escribe("1) Comida 1"),nl,
tab(10),escribe("2) comida 2"),nl,
tab(10),escribe("3) comida 3"),nl,
tab(10),escribe("4) terminar la orden"),nl,
escribe("Digite el numero de la comida deseada: "), read(X),
opciones(X),
menu.
% Instrucciones Para Carga el Menú Principal
?-menu.