prova9
/* prova14.pro */ /* attiva INCLUDE MENU.PRO */ /* attivazione menu e scelta opzioni */ /* con ritorno a menu chiamante */ /* con riduzione opzioni menu */
nowarnings include "menu.pro"
domains Enter = char
predicates finestra azione termine(integer) elabora(integer) scelta(integer) fine
goal finestra,azione. clauses
finestra:- makewindow(1,7,1,"",1,1,20,70).
azione:- write("\n"), write("premi enter\n"), readchar(Enter), clearwindow, write("scegli opzione con tasti frecce\n"), menu(3,20, [".1.scelta1...informa........", ".2.scelta2...somma..........", ".3.scelta3...sottrazione....", ".4.scelta9..fine............"], SCELTA), elabora(SCELTA), termine(SCELTA),!. elabora(0). elabora(1):-scelta(1). elabora(2):-scelta(2). elabora(3):-scelta(3). elabora(4):-scelta(4). termine(4). termine(0). scelta(1):-write("scelta1"),nl, write("seleziona opzioni da menu.."), write("per elaborazione aritmetica "),nl, write("su numeri interi da inserire\n"), Write("premere ENTER dopo ogni numero\n "), azione.
scelta(2):-write("scelta2..somma\n"), sound(100,600), write("scrivi due numeri interi "),nl, write("separati da ENTER \n"), readint(X),readint(Y),Somma=X+Y, write(Somma),azione.
scelta(3):-write("scelta 3..differenza\n"), sound(100,700), write("scrivi due numeri interi\n"), readint(A),readint(B), Differenza=A-B, write(Differenza),azione.
scelta(4):-write("fine chiamate"), sound(100,600),fine. fine:- write("......fine prova").