-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcomplementary-dna.js
More file actions
30 lines (24 loc) · 933 Bytes
/
complementary-dna.js
File metadata and controls
30 lines (24 loc) · 933 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/*
Deoxyribonucleic acid (DNA) is a chemical found in the nucleus of cells and carries the "instructions" for the development and functioning of living organisms.
If you want to know more: http://en.wikipedia.org/wiki/DNA
In DNA strings, symbols "A" and "T" are complements of each other, as "C" and "G". Your function receives one side of the DNA (string, except for Haskell); you need to return the other complementary side. DNA strand is never empty or there is no DNA at all (again, except for Haskell).
More similar exercise are found here: http://rosalind.info/problems/list-view/ (source)
Example: (input --> output)
"ATTGC" --> "TAACG"
"GTAT" --> "CATA"
*/
function DNAStrand(dna){
let s = ''
for(let i = 0; i < dna.length; i++){
if (dna[i] === 'A'){
s += 'T'
} else if (dna[i] === 'T'){
s += 'A'
} else if (dna[i] === 'C'){
s += 'G'
} else {
s += 'C'
}
}
return s
}