Ejemplo n.º 1
0
        /// <summary>
        /// Reads a binary sequence from standard input; converts each two bits
        /// to an 8-bit extended ASCII character over the alphabet { A, C, T, G };
        /// and writes the results to standard output.
        /// </summary>
        public void Expand()
        {
            var sb             = new StringBuilder();
            var lengthIterator = 0;

            foreach (var b in _bytes)
            {
                var bits     = new BitArray(new [] { b });
                var iterator = 0;

                var chBits = new BitArray(2);
                foreach (var bit in bits)
                {
                    chBits.Set(iterator, (bool)bit);
                    iterator++;
                    if (iterator != 2)
                    {
                        continue;
                    }
                    var b1 = new byte[1];
                    chBits.CopyTo(b1, 0);
                    var ch = DNA.ToChar((int)b1[0]);
                    sb.Append(ch);
                    lengthIterator++;
                    if (lengthIterator >= _length)
                    {
                        break;
                    }
                    iterator = 0;
                    chBits   = new BitArray(2);
                }
            }

            Console.WriteLine(sb.ToString());
        }
Ejemplo n.º 2
0
        public void Run(string content)
        {
            var n = content.Length;

            for (var i = 0; i < n; i++)
            {
                if (_alpha.Contains(content[i]))
                {
                    _count[_alpha.ToIndex(content[i])]++;
                }
            }
            for (var c = 0; c < _r; c++)
            {
                Console.WriteLine(_alpha.ToChar(c) + " " + _count[c]);
            }
        }