esercizi di coniugazione verbi latini con turbo pascal 1.1 su mac
program latino; { desinenze come array di stringhe variabili }
const tempo1='presente indicativo del verbo:'; tempo2='imperfetto indicativo del verbo:';
var rad1:string[12]; infinito:string[15]; a,b:integer; des1:array[1..12] of string[10];
procedure desinenze; begin des1[1]:='o';des1[2]:='as';des1[3]:='at'; des1[4]:='amus';des1[5]:='atis';des1[6]:='ant'; des1[7]:='abam';des1[8]:='abas';des1[9]:='abat'; des1[10]:='abamus';des1[11]:='abatis';des1[12]:='abant'; end;
procedure pausa; begin writeln('premi return'); readln; clearscreen; end;
begin writeln('scrivi infinito verbo latino:'); readln(infinito); a:=length(infinito); rad1:=copy(infinito,1,a-3); pausa; desinenze; writeln(tempo1,infinito); for b:=1 to 6 do begin writeln(rad1,des1[b]); writeln; end; writeln('-------------------------'); pausa; writeln(tempo2,infinito); for b:=7 to 12 do begin writeln(rad1,des1[b]); writeln; end; writeln('-----------------'); pausa; end.
program latino1; { desinenze come array di stringhe variabili } { procedura desinenze registrata come programma e richiamata con $I } { coniugazione sequenziale indicativo prima coniugazione } { per altre coniugazioni o tempi cfr.esempi in TURBO5 o TURBO3...}
var rad1,rad2:string[12]; infinito,perfetto:string[15]; a,b:integer; des1:array[1..36] of string[10];
{$I desinenze1}
procedure pausa; begin writeln('premi return'); readln; clearscreen; end;
procedure coniuga(rad:string;x,y:integer;tempo:string); begin writeln(tempo,infinito); for b:=x to y do begin writeln(rad,des1[b]); writeln; end; writeln('-------------------------'); pausa; end;
begin writeln('scrivi infinito verbo latino prima coniugazione:'); readln(infinito); a:=length(infinito); rad1:=copy(infinito,1,a-3); writeln('scrivi perfetto indicativo stesso verbo latino:'); readln(perfetto); a:=length(perfetto); rad2:=copy(perfetto,1,a-1);
pausa; desinenze1; coniuga(rad1,1,6,'presente indicativo del verbo:'); coniuga(rad1,7,12,'imperfetto indicativo del verbo:'); coniuga(rad1,13,18,'futuro indicativo del verbo:'); coniuga(rad2,19,24,'perfetto indicativo del verbo :'); coniuga(rad2,25,30,'piuccheperfetto indicativo del verbo:'); coniuga(rad2,31,36,'futuro anteriore del verbo:'); writeln('-----------------'); pausa; end.
program latino2; { desinenze come array di stringhe variabili } { procedura desinenze registrata come programma e richiamata con $I } { coniugazione sequenziale indicativo quattro coniugazione } { per altre coniugazioni o tempi cfr.esempi in TURBO5 o TURBO3...}
var rad1,rad2:string[12]; infinito,perfetto:string[15]; a,b,coniug:integer; des1:array[1..36] of string[10]; des2:array[1..36] of string[10]; des3:array[1..36] of string[10]; des4:array[1..36] of string[10];
{$I desinenze1} {$I desinenze2} {$I desinenze3} {$I desinenze4}
procedure pausa; begin writeln('premi return'); readln; clearscreen; end;
procedure coniuga(rad:string;x,y:integer;tempo:string;coniug:integer); begin writeln(tempo,infinito); for b:=x to y do begin case coniug of 1:writeln(rad,des1[b]); 2:writeln(rad,des2[b]); 3:writeln(rad,des3[b]); 4:writeln(rad,des4[b]); end; end; pausa; end;
begin writeln('scrivi infinito verbo latino 1-2-3-4 coniugazione:'); readln(infinito); a:=length(infinito); rad1:=copy(infinito,1,a-3); writeln('scrivi perfetto indicativo stesso verbo latino:'); readln(perfetto); a:=length(perfetto); rad2:=copy(perfetto,1,a-1); writeln('indica coniugazione:1,2,3,4 ? '); readln(coniug); clearscreen; case coniug of 1:desinenze1; 2:desinenze2; 3:desinenze3; 4:desinenze4; end;
coniuga(rad1,1,6,'presente indicativo del verbo:',coniug); coniuga(rad1,7,12,'imperfetto indicativo del verbo:',coniug); coniuga(rad1,13,18,'futuro indicativo del verbo:',coniug); coniuga(rad2,19,24,'perfetto indicativo del verbo :',coniug); coniuga(rad2,25,30,'piuccheperfetto indicativo del verbo:',coniug); coniuga(rad2,31,36,'futuro anteriore del verbo:',coniug); writeln('-----------------'); pausa; end.
program latino2c; { desinenze come array di stringhe variabili } { procedura desinenze registrata come programma e richiamata con $I } { coniugazione sequenziale indicativo seconda coniugazione } { per altre coniugazioni o tempi cfr.esempi in TURBO5 o TURBO3...}
var rad1,rad2:string[12]; infinito,perfetto:string[15]; a,b:integer; des2:array[1..36] of string[10];
{$I desinenze2}
procedure pausa; begin writeln('premi return'); readln; clearscreen; end;
procedure coniuga(rad:string;x,y:integer;tempo:string); begin writeln(tempo,infinito); for b:=x to y do begin writeln(rad,des2[b]); writeln; end; writeln('-------------------------'); pausa; end;
begin writeln('scrivi infinito verbo latino seconda coniugazione:'); readln(infinito); a:=length(infinito); rad1:=copy(infinito,1,a-3); writeln('scrivi perfetto indicativo stesso verbo latino:'); readln(perfetto); a:=length(perfetto); rad2:=copy(perfetto,1,a-1);
pausa; desinenze2; coniuga(rad1,1,6,'presente indicativo del verbo:'); coniuga(rad1,7,12,'imperfetto indicativo del verbo:'); coniuga(rad1,13,18,'futuro indicativo del verbo:'); coniuga(rad2,19,24,'perfetto indicativo del verbo :'); coniuga(rad2,25,30,'piuccheperfetto indicativo del verbo:'); coniuga(rad2,31,36,'futuro anteriore del verbo:'); writeln('-----------------'); pausa; end.
program latino3c; { desinenze come array di stringhe variabili } { procedura desinenze registrata come programma e richiamata con $I } { coniugazione sequenziale indicativo terza coniugazione } { per altre coniugazioni o tempi cfr.esempi in TURBO5 o TURBO3...}
var rad1,rad2:string[12]; infinito,perfetto:string[15]; a,b:integer; des3:array[1..36] of string[10];
{$I desinenze3}
procedure pausa; begin writeln('premi return'); readln; clearscreen; end;
procedure coniuga(rad:string;x,y:integer;tempo:string); begin writeln(tempo,infinito); for b:=x to y do begin writeln(rad,des3[b]); writeln; end; writeln('-------------------------'); pausa; end;
begin writeln('scrivi infinito verbo latino terza coniugazione:'); readln(infinito); a:=length(infinito); rad1:=copy(infinito,1,a-3); writeln('scrivi perfetto indicativo stesso verbo latino:'); readln(perfetto); a:=length(perfetto); rad2:=copy(perfetto,1,a-1);
pausa; desinenze3; coniuga(rad1,1,6,'presente indicativo del verbo:'); coniuga(rad1,7,12,'imperfetto indicativo del verbo:'); coniuga(rad1,13,18,'futuro indicativo del verbo:'); coniuga(rad2,19,24,'perfetto indicativo del verbo :'); coniuga(rad2,25,30,'piuccheperfetto indicativo del verbo:'); coniuga(rad2,31,36,'futuro anteriore del verbo:'); writeln('-----------------'); pausa; end.
program latino4c; { desinenze come array di stringhe variabili } { procedura desinenze registrata come programma e richiamata con $I } { coniugazione sequenziale indicativo quarta coniugazione } { per altre coniugazioni o tempi cfr.esempi in TURBO5 o TURBO3...}
var rad1,rad2:string[12]; infinito,perfetto:string[15]; a,b:integer; des4:array[1..36] of string[10];
{$I desinenze4}
procedure pausa; begin writeln('premi return'); readln; clearscreen; end;
procedure coniuga(rad:string;x,y:integer;tempo:string); begin writeln(tempo,infinito); for b:=x to y do begin writeln(rad,des4[b]); writeln; end; writeln('-------------------------'); pausa; end;
begin writeln('scrivi infinito verbo latino quarta coniugazione:'); readln(infinito); a:=length(infinito); rad1:=copy(infinito,1,a-3); writeln('scrivi perfetto indicativo stesso verbo latino:'); readln(perfetto); a:=length(perfetto); rad2:=copy(perfetto,1,a-1);
pausa; desinenze4; coniuga(rad1,1,6,'presente indicativo del verbo:'); coniuga(rad1,7,12,'imperfetto indicativo del verbo:'); coniuga(rad1,13,18,'futuro indicativo del verbo:'); coniuga(rad2,19,24,'perfetto indicativo del verbo :'); coniuga(rad2,25,30,'piuccheperfetto indicativo del verbo:'); coniuga(rad2,31,36,'futuro anteriore del verbo:'); writeln('-----------------'); pausa; end.
procedure desinenze1; begin des1[1]:='o';des1[2]:='as';des1[3]:='at'; des1[4]:='amus';des1[5]:='atis';des1[6]:='ant'; des1[7]:='abam';des1[8]:='abas';des1[9]:='abat'; des1[10]:='abamus';des1[11]:='abatis';des1[12]:='abant'; des1[13]:='abo';des1[14]:='abis';des1[15]:='abit'; des1[16]:='abimus';des1[17]:='abitis';des1[18]:='abunt'; des1[19]:='i';des1[20]:='isti';des1[21]:='it'; des1[22]:='imus';des1[23]:='istis';des1[24]:='erunt'; des1[25]:='eram';des1[26]:='eras';des1[27]:='erat'; des1[28]:='eramus';des1[29]:='eratis';des1[30]:='erant'; des1[31]:='ero';des1[32]:='eris';des1[33]:='erit'; des1[34]:='erimus';des1[35]:='eritis';des1[36]:='erint'; end;
procedure desinenze2; begin des2[1]:='eo';des2[2]:='es';des2[3]:='et'; des2[4]:='emus';des2[5]:='etis';des2[6]:='ent'; des2[7]:='ebam';des2[8]:='ebas';des2[9]:='ebat'; des2[10]:='ebamus';des2[11]:='ebatis';des2[12]:='ebant'; des2[13]:='ebo';des2[14]:='ebis';des2[15]:='ebit'; des2[16]:='ebimus';des2[17]:='ebitis';des2[18]:='ebunt'; des2[19]:='i';des2[20]:='isti';des2[21]:='it'; des2[22]:='imus';des2[23]:='istis';des2[24]:='erunt'; des2[25]:='eram';des2[26]:='eras';des2[27]:='erat'; des2[28]:='eramus';des2[29]:='eratis';des2[30]:='erant'; des2[31]:='ero';des2[32]:='eris';des2[33]:='erit'; des2[34]:='erimus';des2[35]:='eritis';des2[36]:='erint'; end;
procedure desinenze3; begin des3[1]:='o';des3[2]:='is';des3[3]:='it'; des3[4]:='imus';des3[5]:='itis';des3[6]:='unt'; des3[7]:='ebam';des3[8]:='ebas';des3[9]:='ebat'; des3[10]:='ebamus';des3[11]:='ebatis';des3[12]:='ebant'; des3[13]:='am';des3[14]:='es';des3[15]:='et'; des3[16]:='emus';des3[17]:='etis';des3[18]:='ent'; des3[19]:='i';des3[20]:='isti';des3[21]:='it'; des3[22]:='imus';des3[23]:='istis';des3[24]:='erunt'; des3[25]:='eram';des3[26]:='eras';des3[27]:='erat'; des3[28]:='eramus';des3[29]:='eratis';des3[30]:='erant'; des3[31]:='ero';des3[32]:='eris';des3[33]:='erit'; des3[34]:='erimus';des3[35]:='eritis';des3[36]:='erint'; end;
procedure desinenze4; begin des4[1]:='io';des4[2]:='is';des4[3]:='it'; des4[4]:='imus';des4[5]:='itis';des4[6]:='iunt'; des4[7]:='iebam';des4[8]:='iebas';des4[9]:='iebat'; des4[10]:='iebamus';des4[11]:='iebatis';des4[12]:='iebant'; des4[13]:='iam';des4[14]:='ies';des4[15]:='iet'; des4[16]:='iemus';des4[17]:='ietis';des4[18]:='ient'; des4[19]:='i';des4[20]:='isti';des4[21]:='it'; des4[22]:='imus';des4[23]:='istis';des4[24]:='erunt'; des4[25]:='eram';des4[26]:='eras';des4[27]:='erat'; des4[28]:='eramus';des4[29]:='eratis';des4[30]:='erant'; des4[31]:='ero';des4[32]:='eris';des4[33]:='erit'; des4[34]:='erimus';des4[35]:='eritis';des4[36]:='erint'; end;