【字符串】DNA反向互补链

描述

DNA,即脱氧核糖核酸,是核苷酸的一种,根据其中碱基类型的不同,一个DNA序列可以由腺嘌呤脱氧核糖核苷酸、鸟嘌呤脱氧核糖核苷酸、胞嘧啶脱氧核糖核苷酸和胸腺嘧啶脱氧核糖核苷酸组成,分别由字母A、G、C和T表示。DNA一般呈现双链结构,是由两条单链盘绕形成的,两条单链具有互补特性,即每两个碱基之间组成碱基对,这种配对具有特异性,即A只能与T形成配对,C只能与G形成配对,称为碱基的互补配对。通过碱基互补配对,两条互相平行的DNA单链盘绕就形成了双链,其中两条互补的单链在方向上是相反的,每条单链称为另一条单链的反向互补链。

现在已知DNA中的一条单链,请计算出其反向互补链。

输入

输入数据有多组,每组占一行,每行是一串DNA单链序列,长度不超过100个字符。

输入以EOF结束。

输出

每组占一行,每行输出一串相应的反向互补链。

样例输入

ACGCTGC

样例输出

GCAGCGT

收获:
反转字符串方法——reverse(s.begin(),s.end())
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s;
while(cin>>s)
{
reverse(s.begin(),s.end());
//cout<<s<<endl;
int l=s.length();
for (int i=0;i<l;i++)
{
if (s[i]‘A’)
cout<<‘T’;
else
if (s[i]
‘G’)
cout<<‘C’;
else
if (s[i]‘C’)
cout<<‘G’;
else
if (s[i]
‘G’) cout<<‘C’;
else
if (s[i]==‘T’) cout<<‘A’;
}
cout<<endl;
}
return 0;
}

发布了65 篇原创文章 · 获赞 0 · 访问量 1318

猜你喜欢

转载自blog.csdn.net/Skynamer/article/details/104055499
今日推荐