46 lines
1.4 KiB
Plaintext
46 lines
1.4 KiB
Plaintext
window 1, @"Bioinformatics/base count"
|
|
|
|
local fn SubstringCount( string as CFStringRef, substring as CFStringRef ) as long
|
|
CFStringRef tempString = fn StringByReplacingOccurrencesOfString( string, substring, @"" )
|
|
end fn = len(string) - len(tempString)
|
|
|
|
void local fn DoIt
|
|
CFArrayRef sequence
|
|
CFStringRef string
|
|
long index = 0
|
|
long a = 0, c = 0, g = 0, t = 0
|
|
|
|
sequence = @[@"CGTAAAAAATTACAACGTCCTTTGGCTATCTCTTAAACTCCTGCTAAATG",
|
|
@"CTCGTGCTTTCCAATTATGTAAGCGTTCCGAGACGGGGTGGTCGATTCTG",
|
|
@"AGGACAAAGGTCAAGATGGAGCGCATCGAACGCAATAAGGATCATTTGAT",
|
|
@"GGGACGTTTCGTCGACAAAGTCTTGTTTCGAGAGTAACGGCTACCGTCTT",
|
|
@"CGATTCTGCTTATAACACTATGTTCTTATGAAATGGATGTTCTGAGTTGG",
|
|
@"TCAGTCCCAATGTGCGGGGTTTCTTTTAGTACGTCGGGAGTGGTATTATA",
|
|
@"TTTAATTTTTCTATATAGCGATCTGTATTTAAGCAATTCATTTAGGTTAT",
|
|
@"CGCCGCGATGCTCGGTTCGGACCGCCAAGCATCTGGCTCCACTGCTAGTG",
|
|
@"TCCTAAATTTGAATGGCAAACACAAATAAGATTTAGCAATTCGTGTAGAC",
|
|
@"GACCGGGGACTTGCATGATGGGAGCAGCTTTGTTAAACTACGAACGTAAT"]
|
|
|
|
for string in sequence
|
|
printf @"%3ld: %@",index,string
|
|
index += len(string)
|
|
a += fn SubstringCount( string, @"A" )
|
|
c += fn SubstringCount( string, @"C" )
|
|
g += fn SubstringCount( string, @"G" )
|
|
t += fn SubstringCount( string, @"T" )
|
|
next
|
|
|
|
print
|
|
|
|
printf @"A:\t\t%3ld",a
|
|
printf @"C:\t\t%3ld",c
|
|
printf @"G:\t\t%3ld",g
|
|
printf @"T:\t\t%3ld",t
|
|
printf @"\t\t---"
|
|
printf @"Total:\t%ld",a+c+g+t
|
|
end fn
|
|
|
|
fn DoIt
|
|
|
|
HandleEvents
|