listato pascal

esci genetica.htm

program evoge1; (* ipotesi sulla genetica *)
(* con opzione per scelta *)
uses crt,graph;
var c2,c3,c4,c5,c6,c7,c15:integer;

procedure grafica;
var t,s:integer;
stringa:string;
begin
t:=0;
s:=0;
stringa:=('c:\scheda\');
initgraph(s,t,stringa);
end;

procedure attende;
begin
delay(2000);
end;

procedure pausa1;
begin
setcolor(c4);
outtextxy(430,10,'premi INVIO');readln;
setcolor(0);
outtextxy(430,10,'premi INVIO');
setcolor(c15);
end;

procedure pausa;
begin
readln;cleardevice;
end;

procedure testo(x,y:integer;st:string);
begin
outtextxy(x,y,st);
end;

procedure testo1(x,y:integer;sx:string);
begin
setcolor(c15);
outtextxy(x,y,sx);
end;

procedure ma(x1,y1,x2,y2:integer);
begin
setfillstyle(1,c4);
bar(x1,y1,x2,y2);
end;

procedure fe(x1,y1,x2,y2:integer);
begin
setfillstyle(2,c3);
bar(x1,y1,x2,y2);
end;

procedure at;
begin
delay(1000);
end;

procedure at1;
begin
delay(2000);
end;

procedure testox(x,y,co:integer;text:string);
begin
setcolor(co);
outtextxy(x,y,text);
setcolor(c15);
end;

procedure c1p(x,y,st:integer;co:word);
begin
setfillstyle(st,co);
bar(x,y,x+45,y+50);
end;

procedure c2p(x,y,st:integer;co:word);
begin
setfillstyle(st,co);
bar(x,y,x+45,y+20);
end;

procedure c1m(x,y,st:integer;co:word);
begin
setfillstyle(st,co);
bar(x,y,x+45,y+50);
end;

procedure cp(x,y,st:integer;co:word);
begin
setfillstyle(st,co);
bar(x,y,x+20,y+50);
end;


procedure cm(x,y,st:integer;co:word);
begin
setfillstyle(st,co);
bar(x,y,x+20,y+50);
end;

procedure pro2;
begin
testo(100,40,'due coppie di cromosomi omologhi');
testo(100,50,'ogni coppia comprende cromosoma paterno e materno');
testo(100,20,'PROFASE 1');at1;
cp(100,100,2,c4);cm(180,100,2,c2);
cp(300,100,3,c4);cm(380,100,3,c2);at1;
rectangle(90,90,450,160);
testo(100,60,'prima coppia');at1;
testo(300,60,'seconda coppia');at1;
testo(200,80,'cromosomi omologhi');at1;
cp(125,100,2,c4);cm(205,100,2,c2);
cp(325,100,3,c4);cm(405,100,3,c2);
testo(100,160,'sdoppiamento cromosomi in cromatidi');attende;
setcolor(c4);
testo(100,170,'METAFASE 1,ANAFASE 1,TELOFASE 1');
testo(100,180,'cromosomi omologhi migrano a poli opposti');at1;
cp(100,200,2,c4);cp(125,200,2,c4);
cp(300,200,2,c2);cp(325,200,2,c2);at1;
cp(180,200,3,c4);cp(205,200,3,c4);
cp(380,200,3,c2);cp(405,200,3,c2);at1;
rectangle(90,190,250,260);at1;
rectangle(290,190,450,260);ATTENDE;
cp(100,270,2,c4);cp(125,270,2,c4);
cp(300,270,2,c2);cp(325,270,2,c2);at1;
cp(180,270,3,c2);cp(205,270,3,c2);
cp(380,270,3,c4);cp(405,270,3,c4);at1;
rectangle(90,270,250,350);at1;
rectangle(290,270,450,350);ATTENDE;
testo(100,360,'quattro cellule aploidi diverse');
setcolor(c2);
testo(100,370,'METAFASE 2,ANAFASE 2,TELOFASE 2');attende;
testo(100,380,'formazione di gameti:4 combinazioni diverse');
cp(20,200,2,c4);cp(50,200,3,c4);at1;
cp(20,270,2,c4);cp(50,270,3,c2);at1;
cp(460,200,2,c2);cp(485,200,3,c2);at1;
cp(460,270,2,c2);cp(485,270,3,c4);at1;
pausa1;
(* assegnazione alleli *)
testo(100,440,'assegnazione alleli a cromosomi');
testo(100,100,'A');testo(180,100,'a');
testo(300,100,'B');testo(380,100,'b');at1;
testo(125,100,'A');testo(205,100,'a');
testo(325,100,'B');testo(405,100,'b');at1;
testo(100,200,'A');testo(125,200,'A');
testo(300,200,'a');testo(325,200,'a');at1;
testo(180,200,'B');testo(205,200,'B');
testo(380,200,'b');testo(405,200,'b');at1;
testo(100,270,'A');testo(125,270,'A');
testo(300,270,'a');testo(325,270,'a');at1;
testo(180,270,'b');testo(205,270,'b');
testo(380,270,'B');testo(405,270,'B');at1;
testo(20,200,'A');testo(50,200,'B');at1;
testo(20,270,'A');testo(50,270,'b');at1;
testo(460,200,'a');testo(485,200,'b');at1;
testo(460,270,'a');testo(485,270,'B');at1;
pausa1;

end;


procedure pro4;
begin
testo(10,40,'una coppia di cromosomi omologhi');
testo(10,50,'ogni coppia comprende cromosoma paterno e materno');
testo(10,60,'due fattori associati a cromosomi omologhi');
setcolor(c2);testo(10,70,'senza SCAMBIO tra cromatidi');
c1p(50,100,2,c3);c1m(200,100,3,c3);
testo(100,20,'PROFASE 1');at1;
testo(100,80,'cromosomi omologhi');at1;
c1p(100,100,2,c3);c1m(150,100,3,c3);
testo(10,160,'sdoppiamento cromosomi in cromatidi');attende;
setcolor(c4);
testo(10,170,'METAFASE 1,ANAFASE 1,TELOFASE 1');
testo(10,180,'omologhi migrano a poli opposti');at1;
c1p(20,200,2,c3);c1p(70,200,2,c3);rectangle(10,195,140,260);at1;
c1m(180,200,3,c3);c1m(230,200,3,c3);rectangle(170,195,290,260);at1;
testo(10,360,'due cellule aploidi diverse');
setcolor(c2);
testo(10,370,'METAFASE 2,ANAFASE 2,TELOFASE 2');attende;
c1p(20,280,2,c3);c1p(100,280,2,c3);at1;
c1m(180,280,3,c3);c1m(240,280,3,c3);at1;
testo(10,380,'formazione di gameti:2 tipi');
pausa1;
(* assegnazione alleli *)
testo(10,440,'assegnazione alleli a cromosomi');
testo(50,100,'A');testo(100,100,'A');
testo(50,130,'B');testo(100,130,'B');
testo(20,200,'A');testo(70,200,'A');
testo(20,230,'B');testo(70,230,'B');
pausa1;
testo(150,100,'a');testo(200,100,'a');
testo(150,130,'b');testo(200,130,'b');
testo(180,200,'a');testo(240,200,'a');
testo(180,230,'b');testo(240,230,'b');
pausa1;
testo(20,280,'A');testo(100,280,'A');at1;
testo(180,280,'a');testo(240,280,'a');at1;

testo(20,310,'B');testo(100,310,'B');at1;
testo(180,310,'b');testo(240,310,'b');at1;
pausa1;
end;

procedure pro5;
begin
setcolor(c4);testo(300,70,'con SCAMBIO tra cromatidi');
c1p(350,100,2,c3);c1m(500,100,3,c3);
setcolor(c15);
testo(350,100,'A');testo(500,100,'a');
testo(350,130,'B');testo(500,130,'b');
testo(300,20,'PROFASE 1');readln;
testo(300,80,'cromosomi omologhi');at1;
c1p(400,100,2,c3);c1m(450,100,3,c3);
setcolor(c15);
testo(400,100,'a');testo(450,100,'a');
testo(400,130,'B');testo(450,130,'b');
testo(300,160,'sdoppiamento cromosomi in cromatidi');attende;
setcolor(c4);
testo(300,450,'SCAMBIO tra cromatidi nella tetrade');
c2p(400,100,3,c3);
c2p(450,100,2,c3);
setcolor(c15);
testo(450,100,'A');
testo(400,100,'a');testo(500,100,'a');
testo(450,130,'b');testo(500,130,'b');
testo(300,170,'METAFASE 1,ANAFASE 1,TELOFASE 1');
testo(300,180,'omologhi migrano a poli opposti');at1;
c1p(300,200,2,c3);c1p(350,200,2,c3);rectangle(295,195,400,260);
c1m(480,200,3,c3);c1m(530,200,3,c3);rectangle(470,195,590,260);
c2p(350,200,3,c3);
c2p(480,200,2,c3);
setcolor(c15);
testo(300,200,'A');testo(350,200,'a');
testo(300,230,'B');testo(350,230,'B');
testo(480,200,'A');testo(530,200,'a');
testo(480,230,'b');testo(530,230,'b');
testo(300,360,'due cellule aploidi diverse');
setcolor(c2);
testo(300,370,'METAFASE 2,ANAFASE 2,TELOFASE 2');attende;
c1p(300,280,2,c3);c1p(360,280,2,c3);
c1m(480,280,3,c3);c1m(540,280,3,c3);
c2p(360,280,3,c3);
c2p(480,280,2,c3);
setcolor(c15);
testo(300,280,'A');testo(360,280,'a');
testo(480,280,'A');testo(540,280,'a');
testo(360,310,'B');testo(480,310,'b');
testo(300,310,'B');testo(540,310,'b');
testo(300,380,'formazione di gameti:4 tipi');
testo(300,440,'assegnazione alleli a cromosomi');
pausa1;
end;



procedure pro3;
begin
testo(50,50,'gametogenesi con 3 coppie cromosomi omologhi');
setcolor(c4);testo(50,60,'padre');
setcolor(c4);testo(100,60,'AA aa BB bb CC cc');
setcolor(c4);testo(50,80,'A B C A B c A b C A b c ');
setcolor(c4);testo(300,80,'a B C a B c a b C a b c ');
setcolor(c3);testo(50,100,'madre');testo(100,100,'AA aa BB bb CC cc');
testo(300,120,'a B C a B c a b C a b c ');
testo(50,120,'A B C A B c A b C A b c ');
pausa1;
setcolor(c4);testo(80,150,'A B C A B c A b C A b c ');
setcolor(c4);testo(330,150,'a B C a B c a b C a b c ');
pausa1;
rectangle(10,140,590,360);
setcolor(c3);testo(20,170,'A B C');
setcolor(c3);testo(20,190,'A B c');
setcolor(c3);testo(20,210,'A b C');
setcolor(c3);testo(20,230,'A b c');
setcolor(c3);testo(20,250,'a B C');
setcolor(c3);testo(20,270,'a B c');
setcolor(c3);testo(20,290,'a b C');
setcolor(c3);testo(20,310,'a b c');
pausa1;
testo(80,170,'AABBCC ');testo(80,190,'AABBCc ');
testo(80,210,'AABbCC ');testo(80,230,'AABbCc ');
testo(80,250,'AaBBCC ');testo(80,270,'AaBBCc ');
testo(80,290,'AaBbCC ');testo(80,310,'AaBbCc ');at1;

testo(140,170,'AABBCc ');testo(140,190,'AABBcc ');
testo(140,210,'AABbCc ');testo(140,230,'AABbcc ');
testo(140,250,'AaBBCc ');testo(140,270,'AaBBCc ');
testo(140,290,'AaBBCc ');testo(140,310,'AaBbcc ');at1;

testo(200,170,'AABbCC ');testo(200,190,'AABbCc ');
testo(200,210,'AAbbCC ');testo(200,230,'AAbbCc ');
testo(200,250,'AaBbCC ');testo(200,270,'AaBbCc ');
testo(200,290,'AabbCc ');testo(200,310,'AabbCc ');at1;

testo(260,170,'AABbCc ');testo(260,190,'AABbcc ');
testo(260,210,'AAbbCc ');testo(260,230,'AAbbcc ');
testo(260,250,'AaBbCc ');testo(260,270,'AaBbcc ');
testo(260,290,'AabbCc ');testo(260,310,'Aabbcc ');at1;

testo(320,170,'AaBBCC ');testo(320,190,'AaBBCc ');
testo(320,210,'AaBbCC ');testo(320,230,'AaBbCc ');
testo(320,250,'aaBBCC ');testo(320,270,'aaBBCc ');
testo(320,290,'aaBbCC ');testo(320,310,'aaBbCc ');at1;

testo(380,170,'AaBBCc ');testo(380,190,'AaBBcc ');
testo(380,210,'AaBbCc ');testo(380,230,'AaBbcc ');
testo(380,250,'aaBBCc ');testo(380,270,'aaBBcc ');
testo(380,290,'aaBbCc ');testo(380,310,'aaBbcc ');at1;

testo(440,170,'AaBbCc ');testo(440,190,'AaBbcc ');
testo(440,210,'AabbCc ');testo(440,230,'Aabbcc ');
testo(440,250,'aaBbCc ');testo(440,270,'aaBbcc ');
testo(440,290,'aabbCc ');testo(440,310,'aabbcc ');at1;

testo(500,170,'AaBbCc ');testo(500,190,'AaBbcc ');
testo(500,210,'AabbCc ');testo(500,230,'Aabbcc ');
testo(500,250,'aaBbCc ');testo(500,270,'aaBbcc ');
testo(500,290,'aabbCc ');testo(500,310,'aabbcc ');

setcolor(c3);testo(20,400,'genotipi possibili: 64 ');
setcolor(c2);testo(20,420,'notare indipendenza dei vari alleli..');
pausa1;
end;

procedure pro1;
(* genitori *)
begin
testo(10,10,'meiosi e segregazione dei cromosomi omologhi');
TESTO(10,20,'con una coppia di cromosomi omologhi ');
setcolor(c4);testo(50,50,'rosso ');rectangle(100,50,200,150);
ma(120,70,140,120);ma(160,70,180,120);
at;setcolor(c3);testo(570,50,'azzurro');circle(500,100,50);
fe(470,70,490,120);fe(510,70,530,120);
attende;
testo(280,160,'gametogenesi');
at;ma(220,100,240,150);ma(260,100,280,150);
at;fe(380,100,400,150);fe(420,100,440,150);
attende;testo(280,180,'fecondazione');
at;ma(120,220,140,280);fe(160,220,180,280);
at;ma(470,220,490,280);fe(510,220,530,280);
attende;
setcolor(c4);testo(10,200,'100% rosso');
rectangle(100,200,200,300);
setcolor(c4);circle(500,250,50);
attende;
testo(280,310,'gametogenesi');
at;ma(220,250,240,300);fe(260,250,280,300);
at;ma(380,250,400,300);fe(420,250,440,300);
attende;
at;testo(280,330,'fecondazione');
at;ma(120,370,140,430);ma(160,370,180,430);
at;ma(250,370,270,430);fe(290,370,310,430);
at;ma(370,370,390,430);fe(410,370,430,430);
at;fe(480,370,500,430);fe(520,370,540,430);
setcolor(c4);testo(10,350,'75% rosso');
setcolor(c4);rectangle(100,350,200,450);
setcolor(c4);rectangle(230,350,330,450);
setcolor(c4);rectangle(350,350,450,450);
setcolor(c3);rectangle(470,350,570,450);
testo(10,360,'25% azzurro');
pausa1;
setcolor(0);
TESTO(10,20,'con una coppia di cromosomi omologhi ');
setcolor(c2);
testo(10,20,'associazione dei fattori mendeliani ai cromosomi omologhi');
setcolor(c4);testo(100,30,'omozigote dominante AA');
at;testo1(120,70,'A');testo1(160,70,'A');
at;setcolor(c3);testo(450,30,'omozigote recessivo aa');
at;testo1(470,70,'a');testo1(510,70,'a');
at;testo1(220,100,'A');testo1(260,100,'A');
at;testo1(380,100,'a');testo1(420,100,'a');
(* f1 *)
at;testo1(120,220,'A');testo1(160,220,'a');
at;testo1(470,220,'A');testo1(510,220,'a');
at;testo1(220,250,'A');testo1(260,250,'a');
at;testo1(380,250,'A');testo1(420,250,'a');
(* gameti f1 *)
at;testo1(120,220,'A');testo1(160,220,'a');
at;testo1(470,220,'A');testo1(510,220,'a');
at;testo(10,180,'100% eterozigoti Aa');
(* F2 *)
at;testo1(120,370,'A');testo1(160,370,'A');
at;testo1(250,370,'A');testo1(290,370,'a');
at;testo1(370,370,'A');testo1(420,370,'a');
at;testo1(490,370,'a');testo1(530,370,'a');
at;testo(10,400,'25 AA');testo(10,410,'50% Aa');testo(10,420,'25% aa');
pausa1;
end;

procedure pro6;
begin
testo(20,340,'confronto di genotipi e fenotipi possibili');
testo(20,350,'con una coppia di cromosomi omologhi');
testo(20,360,'che portano due diversi caratteri associati');
testo(20,370,'dominante A-B alto-blu....recessivo a-b basso-rosso');
testo(20,380,'senza scambio tra cromosomi durante la chiasmotipia');
testo(20,390,'con scambio tra cromosomi durante la chiasmotipia');
attende;
testo(20,100,'senza scambio');
testo(90,150,'AB ab ');
testo(50,170,'AB');
testo(50,190,'ab');
testo(90,170,'AABB AaBb');
testo(90,190,'AaBb aabb');
rectangle(85,160,200,200);
pausa1;
testo(50,210,'due fenotipi AB ab');
testo(50,230,'25% recessivo ab');
testo(50,250,'75% dominante AB');
testo(50,270,'tre genotipi');
testo(50,290,'25% AABB omozigote');
testo(50,300,'25% aabb omozigote');
testo(50,310,'50% AaBb eterozigote');
pausa1;
setcolor(c4);testo(300,100,'con scambio');
setcolor(c2);testo(300,150,'AB aB Ab ab ');
setcolor(c3);testo(250,170,'AB');setcolor(c3);testo(250,190,'aB');
setcolor(c3);testo(250,210,'Ab');setcolor(c3);testo(250,230,'ab');
testo(300,170,'AABB AaBB AABb AaBb ');
testo(300,190,'AaBB aaBB AaBb aaBb ');
testo(300,210,'AABb AaBb AAbb Aabb ');
testo(300,230,'AaBb aaBb Aabb aabb ');
rectangle(290,160,600,240);
pausa1;
testo(300,240,'quattro fenotipi');
testo(300,250,'1/16 recessivo ab basso,rosso');
testo(300,260,'9/16 dominante AB alto,blu ');
testo(300,270,'3/16 alto,rosso Ab ');
testo(300,280,'3/16 basso,blu aB');
testo(300,290,'nove genotipi AABB AaBB AABb AaBb aaBB aaBb AAbb Aabb aabb');
testo(300,300,'1/9 AABB omozigote');
testo(300,310,'1/9 aabb omozigote');
testo(300,320,'7/9 eterozigote');
pausa1;
end;


procedure scelta;
var sce,ris:integer;
begin
cleardevice;
setcolor(c3);
testo(50,50,'selezionare tra opzioni offerte ');
testo(50,70,'1...meiosi con una coppia di cromosomi');
testo(50,80,'2...meiosi con due coppie cromosomi omologhi');
testo(50,90,'3...meiosi e scambio tra cromosomi su coppia omologhi');
testo(50,100,'4...meiosi con tre coppie di alleli');
testo(50,110,'5...confronto effetto scambio su fenotipi e genotipi ');
testo(50,130,'scelta='); gotoxy(10,10);readln(ris);
cleardevice;
case ris of
1:begin pro1;cleardevice;end;
2:begin pro2;cleardevice;end;
3:begin pro4;pro5;cleardevice;end;
4:begin pro3;cleardevice;end;
5:begin pro6;cleardevice;end;
end;

setcolor(c15);
testo(20,30,'per continuare premi 1..per finire 2 :scelta=');readln(sce);
cleardevice;
if sce=1 then scelta;
end;

begin
clrscr;
c2:=2;c3:=3;c4:=4;c5:=5;c6:=6;c7:=7;c15:=15;
writeln('Evoluzione delle ipotesi sulla trasmissione ereditaria');
writeln('------------------------------------------------');
writeln('i genitori trasmettono i caratteri ereditari ai figli');
writeln('con una distribuzione messa in evidenza dalle leggi di MENDEL');
writeln('IPOTESI:ogni allele di un carattere viene associato a un fattore ');
writeln('che puo essere dominante,recessivo,codominante');
textcolor(c2);
writeln('1-ogni cellula diploide dei genitori possiede una doppia copia');
writeln('di fattori per lo stesso carattere');
writeln('2-i genitori trasmettono i fattori mediante i gameti ');
writeln('3-i gameti posseggono un solo fattore per ogni copia');
writeln('4-con la fecondazione lo zigote torna in possesso di due fattori');
writeln('---------------------------------------------------------------');
readln;clrscr;
textcolor(c3);
writeln('ammettendo tali ipotesi si spiegano i fenotipi osservati nella');
writeln('prima e seconda generazione filiale:');
writeln('LEGGE della DOMINANZA ;LEGGE della SEGREGAZIONE');
textcolor(c4);
writeln('PROBLEMA:quale puo essere il meccanismo che presiede ad una');
writeln('distribuzione cosi caratteristica dei fattori mendeliani? ');
textcolor(c2);
writeln('IPOTESI:i fattori sono trasmessi con i gameti:');
writeln('essendo diversa la massa di citoplasma nei due gameti');
writeln('mentre sembrano avere la stessa importanza ai fini della');
writeln('trasmissione dei caratteri,si ammette che i fattori debbano');
writeln('essere contenuti nei nuclei dei gameti');
writeln('probabilmente nei cromosomi che sono identici come forma e numero');
writeln(' nel gamete maschile e femminile');
readln;clrscr;
textcolor(c15);
writeln('se si accetta tale ipotesi e si associano i fattori mendeliani');
writeln('a coppie di cromosomi omologhi,si trova che la distribuzione');
writeln('dei cromosomi omologhi durante la meiosi risulta in ottimo');
writeln('accordo con la distribuzione dei fattori mendeliani');
textcolor(c4);
writeln('notare le eccezioni che possono essere attribuite');
writeln('a scambio di materiale genetico tra cromosomi omologhi');
readln;
textcolor(c3);
writeln('si giunge a dimostrare la validita di tale ipotesi');
writeln('ad esempio osservando la distribuzione del carattere sessuale');
writeln('associandolo ai cromosomi XX ,XY ');
readln;clrscr;
writeln('PROBLEMA:come sono rappresentati i fattori mendeliani associati');
writeln('ai cromosomi omologhi? ');
writeln('esperimenti condotti con batteri e topi dimostrano che i fattori');
writeln('mendeliani devono essere costituenti del DNA cromosomico');
readln;textcolor(c2);
writeln('PROBLEMA:come sono codificati i caratteri nel DNA ? ');
writeln('se ogni carattere si manifesta per intervento di una proteina');
writeln('codificata nel DNA secondo un codice che fa corrispondere');
writeln('ad ogni trippletta di NUCLEOTIDI uno specifico AMMINOACIDO');
textcolor(c3);
writeln('occorre che una copia della informazione codificante per una');
writeln('determinata proteina venga TRASCRITTA e trasferita nei ');
writeln('RIBOSOMI citoplasmatici,ove con intervento di un sistema');
writeln('di t-RNA,AMINO-ACIL-SINTETASI,ATP,AMMINOACIDI,si presiede');
writeln('alla decodificazione della informazione portata dal m-RNA');
writeln('con la TRADUZIONE in PROTEINA o ENZIMA,dal quale dipende');
writeln('la manifestazione del carattere codificato');
textcolor(c4);readln;;
writeln('-----------------------------------------------------');
textcolor(c15);
writeln('durante la esecuzione,premere INVIO quando richiesto');
writeln('oppure attendere prosecuzione automatica');
writeln('premi INVIO per proseguire');readln;clrscr;
grafica;scelta;closegraph;
end.