Hallo,
könnt ihr mir helfen, was ich an meinem Code ändern soll?
Ich möchte, dass die Buchstaben ausgetauscht werden z.B. A sollte mit T ausgetauscht werden, T durch A, G durch C und C durch G. Aber bei der Ausgabe erhalte ich noch die Buchstaben, die ich eingegeben habe.
Ich denke, dass Problem liegt an den typen char und string oder?
Vielen Dank.
könnt ihr mir helfen, was ich an meinem Code ändern soll?
Ich möchte, dass die Buchstaben ausgetauscht werden z.B. A sollte mit T ausgetauscht werden, T durch A, G durch C und C durch G. Aber bei der Ausgabe erhalte ich noch die Buchstaben, die ich eingegeben habe.
Ich denke, dass Problem liegt an den typen char und string oder?
Vielen Dank.
Java:
public class ComplementaryDNA {
/*DnaStrand.makeComplement("ATTGC") // return "TAACG"
*DnaStrand.makeComplement("GTAT") // return "CATA"
*In DNA strings, symbols "A" and "T" are complements of each other,
* as "C" and "G". You have function with one side of the DNA
* (string, except for Haskell); you need to get the
* other complementary side. DNA strand is never empty or
* there is no DNA at all (again, except for Haskell).
/**
*
*/
public static String makeComplement(String dna) {
for (int i = 0; i< dna.length(); i++){
if(dna.indexOf(0) == 'A') {
dna.replace((char) i, 'T');
}
else if (dna.charAt(i) == 'T'){
dna.replace((char) i, 'A');
}
else if (dna.charAt(i) == 'C'){
dna.replace((char) i, 'G');
}
else { if (dna.charAt(i) == 'G') {
dna.replace((char) i, 'C');
}
else {
return dna;
}
}
}
return dna;
}
public static void main(String[] args) {
String test = "ATGGC";
String result = makeComplement(test);
System.out.println(result);
}
}