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").