Vous êtes sur la page 1sur 2

create or replace function

checapronombre(pn varchar)
return int is
begin
--verificando que sea de la lista de pronombres
if lower(pn) in ('la','las','le','les','lo','los','nos','me','se','te') then
--cuando el pronombre sea correcto
return 1;
else
return 0;
end if;
end;
/
begin
dbms_output.put_line(checapronombre('la'));
end;
/
create or replace function
checaverbo(pn varchar) return
int is
begin
--checando que el verbo este en infinitivo
if substr(lower(pn),length(pn)-1,2) in ('ar','er','ir') then
--el verbo esta en infinitivo
return 1;
end if;
return 0;
end;
/
begin
dbms_output.put_line(checaverbo('amar'));
dbms_output.put_line(checaverbo('PARTIR'));
dbms_output.put_line(checaverbo('come'));
end;
/
---cuerpo que forma el pronombre enclitico
create or replace function
enclitico(pverbo varchar, ppronombre varchar)
return varchar is
begin
--checando que tenga las condiciones validas
if checaverbo(pverbo)=1 and
checapronombre(ppronombre)=1
then
return(pverbo||ppronombre);
else
return ' ';
end if;
end;
/
begin
dbms_output.put_line(enclitico('comer','las'));
dbms_output.put_line(enclitico('poner','te'));
dbms_output.put_line(enclitico('hacer','nos'));
dbms_output.put_line(enclitico('come','te'));

end;
/

Vous aimerez peut-être aussi