/* latino2.pro */ /* analisi verbo latino e ricava radice */ nowarnings domains Lunga = integer Radix,Des,Verbo =string predicates finestra azione goal finestra,azione. clauses finestra:-makewindow(1,7,1,"",0,0,25,80). azione:- attribute(5), write("scrivi infinito verbo latino"),nl, write("da coniugare:es.laudare "),nl, readln(Verbo), write("----------------------------"),nl, attribute(6), str_len(Verbo,Lunga), Radice=Lunga-3, frontstr(Radice,Verbo,Radix,Des), write("infinito..",Verbo),nl, write(Lunga),nl, write("radice....",Radix),nl, write("desinenza.",Des),nl, sound(100,600), /* desinenze indicativo */ D1="o",D2="as",D3="at", D4="amus",D5="atis",D6="ant", E1="abam",E2="abas",E3="abat", E4="abamus",E5="abatis",E6="abant", /* forme verbali presente indicativo*/ concat(Radix,D1,R1),concat(Radix,E1,Q1), concat(Radix,D2,R2),concat(Radix,E2,Q2), concat(Radix,D3,R3),concat(Radix,E3,Q3), concat(Radix,D4,R4),concat(Radix,E4,Q4), concat(Radix,D5,R5),concat(Radix,E5,Q5), concat(Radix,D6,R6),concat(Radix,E6,Q6), write("=============================="),nl, attribute(2), write("stampa indicativo presente"),nl, attribute(3), write(R1),nl, write(R2),nl, write(R3),nl, write(R4),nl, write(R5),nl, write(R6),nl, attribute(4), write("----imperfetto -------"),nl, write(Q1),nl,write(Q2),nl,write(Q3),nl, write(Q4),nl,write(Q5),nl,write(Q6),nl, readchar(_).
+------------------------------------------ ¦da coniugare:es.laudare ¦laudare ¦---------------------------- ¦infinito..laudare ¦7 ¦radice....laud ¦desinenza.are ¦============================== ¦stampa indicativo presente ¦laudo ¦laudas ¦laudat ¦laudamus ¦laudatis ¦laudant ¦----imperfetto ------- ¦laudabam ¦laudabas ¦laudabat ¦laudabamus ¦laudabatis ¦laudabant ¦ +------------------------------------------
ritorna