prova7
/* prova12.pro */ /* attiva INCLUDE MENU.PRO */ /* attivazione menu e scelta opzioni */
nowarnings include "menu.pro"
domains
predicates finestra azione termine(integer) elabora(integer) scelta(integer) fine
goal finestra,azione,fine. clauses
finestra:- makewindow(1,7,1,"",1,1,20,70).
azione:- menu(3,20, [".1.scelta1...informa........", ".2.scelta2...somma..........", ".3.scelta3...sottrazione....", ".4.scelta4...prodotto.......", ".5.scelta5...quoziente......", ".6.scelta6...divisione......", ".7.scelta7...resto..........", ".8.scelta8...radice.........", ".9.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). elabora(5):-scelta(5). elabora(6):-scelta(6). elabora(7):-scelta(7). elabora(8):-scelta(8). elabora(9):-scelta(9). termine(9). 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 ").
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).
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).
scelta(4):-write("scelta4..prodotto\n"), sound(50,660), Write("scrivi due numeri interi\n"), readint(C),readint(D), Prodotto=C*D, write(Prodotto).
scelta(5):-write("scelta5...quoziente\n"), sound(30,600), Write("scrivi due numeri interi\n"), readint(R),readint(T), Quoziente=R/T, write(Quoziente).
scelta(6):-write("scelta6..divisione\n"), sound(100,500), write("scrivi due numeri interi\n"), readint(E),readint(F), Divisione=E div F, write(Divisione).
scelta(7):-write("scelta7...resto "),nl, sound(20,600), write("scrivi due numeri interi\n"), readint(U),readint(V), Resto=U mod V, write(Resto).
scelta(8):-write("chiamata 8..radice \n"), sound(100,600), write("scrivi un numero intero\n"), readint(W), Radice=sqrt(W), write(Radice).
scelta(9):-write("fine chiamate"),sound(100,600). fine:- write("......fine prova").