include #include #include

advertisement
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define PROTEINSAYISI 5
#define AMINOASAYISI 10
void DNAParcasiAl(char*);
void proteinAra(char *, char *[], char*[]);
void proteinleriAl(char *[],char *[]);
void nukleotideCevir(char *[], char * [], char * [],char * [] );
void main()
{
int evetHayir;
char *DNAParcasi;
char *proteinIcerik[PROTEINSAYISI];
char *proteinIsmi[PROTEINSAYISI];
char *aminoAcitler[AMINOASAYISI]={"aag","tta", "gct"};
char *aminoAsitIsmi[AMINOASAYISI]={"A01", "A02", "A03"};
while (1)
{
DNAParcasiAl(DNAParcasi);
while(1)
{
proteinleriAl(proteinIcerik, proteinIsmi);
proteinAra(DNAParcasi, proteinIcerik,
proteinIsmi);//****
printf("\n ayni DNA parcasinda baska protein aramak
istermisiniz(1/0)");
scanf("%d",&evetHayir);
if(!evetHayir)
break;
}
printf("\n
yeni bir DNA parcasi girmek ister misiniz?(1/0)
");
scanf("%d", evetHayir);
if(!evetHayir)
break;
}
}
void DNAParcasiAl(char * DNAParcasiD)
{
int uzunluk;
printf("\n DNA Parcasi kac nukleotid icermekte : ");
scanf("%d", &uzunluk);
DNAParcasiD=(char *)malloc(uzunluk * sizeof(char));
scanf("%s", DNAParcasiD);
}
void proteinleriAl(char* proteinlerIcerikD[], char * proteinIsmiD[])
{
int aminoAsitSayisi;
// proteinler alinir.
for(int i=0; i<PROTEINSAYISI; i++)
{
printf("\n protein kac amino Asit icerecek ");
scanf("%d", &aminoAsitSayisi);
proteinlerIcerikD[i]=(char *)malloc(aminoAsitSayisi *3*
sizeof(char));
printf("\n proteinin icerigini girin :");
scanf("%s", proteinlerIcerikD[i]);
proteinIsmiD[i]=(char *)malloc(15*sizeof(char));
printf("proteinleri ismini girin: ");
scanf("%s", proteinIsmiD[i]);
}
}
void proteinAra(char * DNAParcasiD, char * proteinIcerikD[], char *
proteinIsmiD[],char * aminoAsitlerD[], char * aminoAsitIsmiD[])
{
char *proteinNukleotidli[PROTEINSAYISI];
int konum;
nukleotideCevir(proteinIcerikD, aminoAsitlerD, aminoAsitIsmiD,
proteinNukleotidli);
for(int i=0; i<PROTEINSAYISI; i++)
{
konum=proteinBul(proteinNukleotidli[i], DNAParcasiD);
if(konum==-1)
printf("%s, DNA parcasinda bulunmadi", proteinIsmiD[i]);
else
goster(DNAParcasiD, konum,
strlen(proteinNukleotidli[i]));
}
}
void nukleotideCevir(char *proteinIcerikDD[], char * aminoAsitlerDD[],
char * aminoAsitIsmiDD[],char * proteinNukleitidliDD[] )
{
char aminoAsit[3];
for(int i=0; i<PROTEINSAYISI; i++)
{
for(int j=0; j<strlen(proteinIcerikDD[i]); j+=3)
{
//proteinleri olusan her bir amono asit ismi arastirmak
// aminoAsit[] dizisine atanir.
for(int k=0, m=0; k<j+3; k++, m++)
aminoAsit[m]=*(proteinIcerikDD[i]+k);
for(int l=0;l<AMINOASAYISI;l++)
if(strcmpi(aminoAsit,aminoAsitIsmiDD[l])==0)
break;
for(int b=j,a=0;b<j+3;b++,a++)
*(proteinNukleitidliDD[i]+b) =
*(aminoAsitlerDD[l]+a);
}
}
}
Download