mutazioni nel
codice genetico , tripplette, e conseguenza nella modifica
degli amminoacidi della proteina
varianti con richiesta di interazione
program mutare8; (* codice genetico:tripplette e amminoacidi codificati *) (* traduzione di serie nucleotidi in serie amminoacidi *) (* dimostra effetto variabile delle MUTAZIONI interattivo *) USES CRT; const n=64;k=100; var a,d,h,y,q:integer; s,sx:string; b:array[1..n] of string[3]; c:array[1..n] of string[3]; r:array[1..n] of string[3]; s1,s2,bn,bs1,bs2:string; procedure cancella; begin clRSCR; end; procedure dati; begin b[1]:='UUU ';b[2]:='UUC ';b[3]:='UUA ';b[4]:='UUG '; b[5]:='UCU ';b[6]:='UCC ';b[7]:='UCA ';b[8]:='UCG '; b[9]:='UAU ';b[10]:='UAC ';b[11]:='UAA ';b[12]:='UAG '; b[13]:='UGU ';b[14]:='UGC ';b[15]:='UGA ';b[16]:='UGG '; b[17]:='CUU ';b[18]:='CUC ';b[19]:='CUA ';b[20]:='CUG '; b[21]:='CCU ';b[22]:='CCC ';b[23]:='CCA ';b[24]:='CCG '; b[25]:='CAU ';b[26]:='CAC ';b[27]:='CAA ';b[28]:='CAG '; b[29]:='CGU ';b[30]:='CGC ';b[31]:='CGA ';b[32]:='CGG '; b[33]:='AUU ';b[34]:='AUC ';b[35]:='AUA ';b[36]:='AUG '; b[37]:='ACU ';b[38]:='ACC ';b[39]:='ACA ';b[40]:='ACG '; b[41]:='AAU ';b[42]:='AAC ';b[43]:='AAA ';b[44]:='AAG '; b[45]:='AGU ';b[46]:='AGC ';b[47]:='AGA ';b[48]:='AGG '; b[49]:='GUU ';b[50]:='GUC ';b[51]:='GUA ';b[52]:='GUG '; b[53]:='GCU ';b[54]:='GCC ';b[55]:='GCA ';b[56]:='GCG '; b[57]:='GAU ';b[58]:='GAC ';b[59]:='GAA ';b[60]:='GAG '; b[61]:='GGU ';b[62]:='GGC ';b[63]:='GGA ';b[64]:='GGG '; c[1]:='PHE';c[2]:='PHE';c[3]:='LEU';c[4]:='LEU'; c[5]:='SER';c[6]:='SER';c[7]:='SER';c[8]:='SER'; c[9]:='TYR';c[10]:='TYR';c[11]:='***';c[12]:='***'; c[13]:='CYS';c[14]:='CYS';c[15]:='***';c[16]:='TRY'; c[17]:='LEU';c[18]:='LEU';c[19]:='LEU';c[20]:='LEU'; c[21]:='PRO';c[22]:='PRO';c[23]:='PRO';c[24]:='PRO'; c[25]:='HIS';c[26]:='HIS';c[27]:='GLN';c[28]:='GLN'; c[29]:='ARG';c[30]:='ARG';c[31]:='ARG';c[32]:='ARG'; c[33]:='ILE';c[34]:='ILE';c[35]:='ILE';c[36]:='MET'; c[37]:='THR';c[38]:='THR';c[39]:='THR';c[40]:='THR'; c[41]:='ASN';c[42]:='ASN';c[43]:='LYS';c[44]:='LYS'; c[45]:='SER';c[46]:='SER';c[47]:='ARG';c[48]:='ARG'; c[49]:='VAL';c[50]:='VAL';c[51]:='VAL';c[52]:='VAL'; c[53]:='ALA';c[54]:='ALA';c[55]:='ALA';c[56]:='ALA'; c[57]:='ASP';c[58]:='ASP';c[59]:='GLU';c[60]:='GLU'; c[61]:='GLY';c[62]:='GLY';c[63]:='GLY';c[64]:='GLY'; end; PROCEDURE TRI(s:string); begin h:=1; for a:=1 to y do begin r[a]:=copy(s,h,3); h:=h+3; end; textcolor(15); end; PROCEDURE stampa(col:integer); begin WRITELN; textcolor(col); for a:=1 to y do begin for d:=1 to k do if r[a]=b[d] then write(r[a],'-'); end; writeln; for a:=1 to y do begin for d:=1 to k do if r[a]=b[d] then write(c[d],'-'); end; TEXTCOLOR(15); writeln('......premi INVIO '); readln; end; begin cancella; dati; h:=1;y:=10; textcolor(15); WRITELN('scopo del programma:mostra effetti di MUTAZIONI'); writeln('DELEZIONE,ADDIZIONE,SOSTITUZIONE,INVERSIONE di una BASE'); writeln('DELEZIONE o ADDIZIONE di una TRIPPLETTA '); writeln; writeln('-----------------------------------------------------'); WRITELN('viene sempre presentata la serie di basi originale'); writeln('con la proteina codificata originale'); writeln('e la serie di basi modificata con proteina modificata'); WRITELN('confrontare proteina originale con proteina mutata'); writeln('------------------------------------------------------'); writeln;writeln('premi INVIO');readln;cancella; writeln('per facilitare la dimostrazione degli effetti delle mutazioni'); writeln('scrivere tripplette facilmente memorizzabili e distinguibili'); writeln('es.AAACCCAAAGGGUUUAAACCC...'); writeln('scrivi serie di 36 basi AAACCCGGUUU '); writeln('***---***---***---***---***---***---'); readln(s);sx:=s;WRITELN; textcolor(2);TRI(s); stampa(2);cancella;textcolor(2); writeln(sx,'...serie basi originale');writeln; TEXTCOLOR(15); WRITELN('DELEZIONE di una base in tripletta da 1 a 8'); write('indica posizione base da eliminare 3..4..5..6..7..8..');readln(q); s1:=copy(sx,1,q-1); s2:=copy(sx,q+1,36-q); s:=s1+s2; textcolor(2); tri(sx);stampa(2);textcolor(4);tri(s);stampa(5); cancella; TEXTCOLoR(2);writeln(sx,'...serie basi originale');writeln; textcolor(15);writeln('ADDIZIONE di una base in trippletta da 1 a 8'); write('indica posizione base da aggiungere 3..4..5..6..7..8..');readln(q); s1:=copy(sx,1,q); s2:=copy(sx,q,36-q); s:=s1+s2;WRITELN; textcolor(2);tri(sx);stampa(2);textcolor(4);tri(s);stampa(5); cancella; textcolor(2);writeln(sx,'...serie basi originale');writeln; textcolor(15);writeln('SOSTITUZIONE di una base in trippletta da 1 a 8'); write('indica posizione base da sostituire 3..4..5..6..7..8..');readln(q); write('scrivi nuova base da inserire A,C,G,U ');readln(bn); s1:=copy(sx,1,q-1); s2:=copy(sx,q+1,36-q); s:=s1+bn+s2;writeln; textcolor(2);tri(sx);stampa(2);tri(s);stampa(5); cancella; textcolor(2);writeln(sx,'...serie basi originale'); textcolor(15);writeln('INVERSIONE due basi tra due tripplette 3,6,9,12,15:'); write('indica posizione basi da invertire di posto ');readln(q); bs1:=copy(sx,q,1); bs2:=copy(sx,q+1,1); s1:=copy(sx,1,q-1); s2:=copy(sx,q+2,36-q); s:=s1+bs2+bs1+s2;writeln; textcolor(2);tri(sx);stampa(2);tri(s);stampa(5); cancella; textcolor(2);writeln(sx,'...serie basi originale');writeln; textcolor(15);writeln('DELEZIONE trippletta tra 1 e 8 '); write('scrivi numero della trippletta da eliminare ');readln(q); s1:=copy(sx,1,3*q-3); s2:=copy(sx,3*q+1,36-q); s:=s1+s2; writeln; textcolor(2);tri(sx);stampa(2);tri(s);stampa(5); cancella; textcolor(15); writeln('evidentemente effetto massima variazione si verifica'); writeln('con la DELEZIONE,ADDIZIONE di una base:e tale effetto'); writeln('varia anche in funzione della posizione della base mutata'); writeln('la variazione della proteina avviene a destra della base mutata'); writeln('notare che anche se solo un amminoacido cambia nella proteina'); writeln('come nella SOSTITUZIONE o INVERSIONE '); writeln('lo effetto puo essere notevole se tale amminoacido si trova'); writeln('in un SITO ATTIVO di particolare significato funzionale'); writeln; writeln('talvolta certe mutazioni di basi non producono alcuna '); writeln('variazione nella proteina,a causa della RIDONDANZA del codice'); writeln('se la trippletta originale e quella mutata codificano lo stesso'); writeln('amminoacido o amminoacidi con proprieta simili '); writeln('premiINVIO');readln;cancella; end.