Problema - Modello - Esecutore
Laboratorio/attività 1
PROGRAM verbi_3;
VAR tempo,verbo,radice,risposta:STRING;
PROCEDURE t_presente;
BEGIN
WRITE('scrivi un verbo della prima coniugazione ... ');
READLN(verbo);
radice := COPY(verbo,1,LENGTH(verbo)-3);
WRITELN('io ',radice,'o');
WRITELN('tu ',radice,'i');
WRITELN('egli ',radice,'a');
WRITELN('noi ',radice,'iamo');
WRITELN('voi ',radice,'ate');
WRITELN('essi ',radice,'ano')
END;
PROCEDURE t_imperfetto;
BEGIN
WRITE('scrivi un verbo della prima coniugazione ... ');
READLN(verbo);
radice := COPY(verbo,1,LENGTH(verbo)-3);
WRITELN('io ',radice,'avo');
WRITELN('tu ',radice,'avi');
WRITELN('egli ',radice,'ava');
WRITELN('noi ',radice,'avamo');
WRITELN('voi ',radice,'avate');
WRITELN('essi ',radice,'avano')
END;
PROCEDURE t_p_remoto;
BEGIN
WRITE('scrivi un verbo della prima coniugazione ... ');
READLN(verbo);
radice := COPY(verbo,1,LENGTH(verbo)-3);
WRITELN('io ',radice,'ai');
WRITELN('tu ',radice,'asti');
WRITELN('egli ',radice,'•');
WRITELN('noi ',radice,'ammo');
WRITELN('voi ',radice,'aste');
WRITELN('essi ',radice,'arono')
END;
PROCEDURE t_futuro;
BEGIN
WRITE('scrivi un verbo della prima coniugazione ... ');
READLN(verbo);
radice := COPY(verbo,1,LENGTH(verbo)-3);
WRITELN('io ',radice,'er•');
WRITELN('tu ',radice,'erai');
WRITELN('egli ',radice,'er…');
WRITELN('noi ',radice,'eremo');
WRITELN('voi ',radice,'erete');
WRITELN('essi ',radice,'eranno')
END;
BEGIN
REPEAT
WRITE('scrivi il tempo in cui il verbo deve essere coniugato ... ');
READLN(tempo);
IF tempo = 'presente'
THEN
t_presente
ELSE
IF tempo = 'imperfetto'
THEN
t_imperfetto
ELSE
IF tempo = 'futuro'
THEN
t_futuro
ELSE
t_p_remoto;
WRITE('Vuoi coniugare un altro verbo? ... ');
READLN(risposta)
UNTIL risposta = 'n'
END.