prolo9

ÏGESTIONE FUNZIONI STRINGA
frontchar(Stringa1,Carattere,Stringa2)
frontchar(String,Char,String)
frontchar(asia,C,S)
assegna stringa originaria,variabile char,stringa restante dopo
aver tolto carattere iniziale.
fronttoken(Stringa1,Token,Stringa2)
fronttoken(string,string,string)
frontstr(lunga,stringa originaria,stringa tolta,stringa residua)
frontstr(integer,string,string,string)
frontstr(3,americano,ST,SR)
assegnare lunghezza stringa da ricavare(integer)
assegnare stringa da elaborare
assegnare variabile per stringa tolta
assegnare variabile per stringa residua
concat(Stringa1,Stringa2,Stringa3) 
concat(string,string,string)
concat(maria,rosa,Stringafinale)
assegna stringa1 da concatenare con stringa2 e assegna a stringa3
str_len(Stringa,Lunghezza)
str_len(String,Integer)
str_len(cielosereno,L)
assegna stringa e fornisce sua lunghezza in variabile integer L
isname(parametro stringa)
isname(string)

 

/* stringa1.pro */
/* funzioni tipo stringa */
/* frontchar...rende prino carattere stringa */
domains
 Carattere1,Carattere2,C,C1 = char
 Stringa1,Stringa2,S,S1,S2   = string
predicates 
clauses
 goal
 makewindow(1,7,2,"finestra 1",1,1,20,70),
 frontchar(americano,Carattere1,Stringa1),
 write(Stringa1),
 sound(100,400),
 frontchar("cielo sereno",Carattere2,Stringa2),
 cursor(3,2),write(Stringa2),sound(100,500),
 frontchar(sole,C,S),
 cursor(4,2),write(S),sound(100,500),
 S1=europa,
 frontchar(S1,C1,S2),
 cursor(6,2),write(S2),sound(100,500).
 
 
 

 

/* stringa2.pro */
/* funzioni tipo stringa */
/* frontstr.rende stringa ridotta  */
domains
 Stringa1,Stringa2,S,S1,S2   = string
predicates 
clauses
 goal
 makewindow(1,7,2,"finestra 1",1,1,20,30),
 /* lunghezza stringa da togliere da inizio
 stringa da elaborare,substringa tolta,
 stringa restante */
 Stringa2=americano,
 write(Stringa2),
 frontstr(3,Stringa2,S,Stringa1),
 cursor(3,2),
 write(Stringa1),cursor(5,2),
 write(S),
 sound(100,400).
 

/* stringa3.pro */
/* funzioni tipo stringa */
/* CONCAT.rende stringa unione di stringhe  */
domains
 Stringa1,Stringa2,Stringa3,S   = string
predicates 
clauses
 goal
 makewindow(1,7,2,"finestra 1",1,1,20,30),
 Stringa1=maria,
 Stringa2=rosa,
 write(Stringa1),cursor(3,2),
 write(Stringa2),cursor(4,2),
 concat(Stringa1,Stringa2,Stringa3),
 cursor(5,2),
 write(Stringa3),cursor(5,2),
 sound(100,400),
 concat(cielo,sereno,S),cursor(6,2),
 write(S).
 
 

/* stringa4.pro */
/* funzioni tipo stringa */
/* STR_LEN.rende lunghezza di stringa  */
domains
 Stringa1,S   = string
 Lunghezza,L  = integer
predicates 
clauses
 goal
 makewindow(1,7,2,"finestra 1",1,1,20,30),
 Stringa1=maria,
 write(Stringa1),cursor(3,2),
 str_len(Stringa1,Lunghezza),
 cursor(5,2),
 write(Lunghezza),cursor(5,2),
 sound(100,400),
 str_len(cielosereno,L),cursor(6,2),
 write(L
 ).
 
 

/* testo3.pro */
/* funzioni STRINGA */
/* GOAL : prova */
predicates
 prova
clauses 
 prova:-beep,clearwindow,
 str_len("asia",H),
 write(H),cursor(3,2),
 concat("maria","rosa",R),
 write(R),cursor(4,2),
 "asia" = "asia",cursor(6,2),
 "asia" > "aria",cursor(7,2).



 
/* reg8.pro */
/* attivazione funzioni stringa */
domains
 C = char
 D = char
 S = string
 
predicates
 clauses
 goal
 clearwindow,
 makewindow(1,7,4,"",1,1,20,60),
 attribute(4),
 cursor(5,2),
 write(" stop e comparsa frase PREMI SPACE "),
 sound(100,500),
 frontchar(asia,C,S), /* stampa sia */
 cursor(7,2),write(S),
 sound(100,500),
 clearwindow(),
 sound(100,500),
 cursor(3,5),
 write("cancellata finestra con clearwindow"),
 sound(100,600),
 window_attr(2),
 window_str("stringa e cancella finestra"),
 sound(200,700),
 window_attr(5),
 cursor(5,5),
 write("attibuto finestra"),
 sound(100,500),
 window_str("altra stringa finestra e cancella"),
 sound(100,500),
 removewindow(),
 sound(100,500).