Masz lekki "bałagan" w kodzie . Czy nie oto chodziło:
#include <iostream>
#include <string>
using namespace std;
string oduz(string s) {
string t = "";
char zn;
for (int i = 0; i < s.size(); i++) {
if (s[i] == 'A')
zn = 'T';
else if (s[i] == 'T')
zn = 'A';
else if (s[i] == 'C')
zn = 'G';
else if (s[i] == 'G')
zn = 'C';
t+=zn;
}
return t;
}
int main() {
cout << oduz("TGACCCA") << endl;
cout << oduz("TGATATTCGATGTGAAAA");
return 0;
}
a może tak? Będzie trochę "bardziej czytelne"
#include <iostream>
#include <string>
using namespace std;
string oduz(string s) {
string t="";
char zn;
for (int i=0; i<s.size(); ++i) {
switch (s[i]) {
case 'A': zn='T'; break;
case 'T': zn='A'; break;
case 'C': zn='G'; break;
case 'G': zn='C'; break;
}
t+=zn;
}
return t;
}
int main() {
cout << oduz("TGACCCA") << endl
<< oduz("TGATATTCGATGTGAAAA");
return 0;
}