xmedia4

iterazione e calcoli media

/* media4.pro */
/* richiesta dati interi */
/* calcola media aritmetica */
/* formattazione stampa dati con WRITEF */
nowarnings
domains
predicates
finestra(integer)
fine
azione(integer,integer,integer)
goal finestra(X),azione(X,0,X),fine.
clauses
 finestra(X):-
 makewindow(1,7,1,"",1,1,20,70),
 write("indica numeri da inserire  "),
 readint(X),clearwindow.
 
 azione(C,Somma,X):-
  C>0,!,
  write("scrivi numero intero="),readint(Intero),
  Somma1=Somma+Intero,
  writef("% somma parziale=",Somma1),nl,
  write("  somma parziale=",Somma1),nl,
  C1=C-1,
  azione(C1,Somma1,X).
  azione(0,Somma1,X):-
  Media=Somma1/X,nl,
  write("media aritmetica=",Media),nl,
  writef("% media =",Media),nl,
  writef("\n% media =",Media),nl,
  writef("la media % risultante ",Media),nl.
    
  fine:-
  write("fine prova:premi Enter "),nl,
  readchar(_),
  clearwindow.