silverfox
شنبه 21 شهریور 1388, 21:55 عصر
من یه برنامه ساده برای یکی از دوستام نوشتم که میاد کد های mRNA رو می گیره اسم کاملش رو می ده یعنی یه ورودی می گیره(رشته)بعد 3تا 3تا جدا می کنه هر 3تا یه معنی داره ترجمه اش می کنه با switch نوشتم اینو...حالا بعضی 3حرفی ها معنی ندارن یعنی مثلا ssd رو اگه وسط رشته باشه ترجمه نمی کنه و جاش رو خالی میذاری ولی اگه توی کل رشته هیچ کدوم از ورودی ها صحیح نباشن ارور میده و از برنامه میاد بیرون در صورتی که هم توی switchم default دارم و هم از try catch استفاده کردم دوستان یه نگاه میندازن ببینن مشکل از کجاس؟
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace Zist
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
comboBox1.SelectedItem = "Complete names";
}
public void convertEngineComplete(string inputStr)
{
try
{
switch (inputStr)
{
case "uuu":
textBox2.Text += "Phenylalanine-";
break;
case "uuc":
textBox2.Text += "Phenylalanine-";
break;
case "uua":
textBox2.Text += "Leucine-";
break;
case "uug":
textBox2.Text += "Leucine-";
break;
case "cuu":
textBox2.Text += "Leucine-";
break;
case "cuc":
textBox2.Text += "Leucine-";
break;
case "cua":
textBox2.Text += "Leucine-";
break;
case "cug":
textBox2.Text += "Leucine-";
break;
case "auu":
textBox2.Text += "Isoleucine-";
break;
case "auc":
textBox2.Text += "Isoleucine-";
break;
case "aua":
textBox2.Text += "Isoleucine-";
break;
case "aug":
textBox2.Text += "*Methionine-";
break;
case "guu":
textBox2.Text += "Valine-";
break;
case "guc":
textBox2.Text += "*Valine-";
break;
case "gua":
textBox2.Text += "Valine-";
break;
case "gug":
textBox2.Text += "Valine-";
break;
case "ucu":
textBox2.Text += "Serine-";
break;
case "ucc":
textBox2.Text += "Serine-";
break;
case "uca":
textBox2.Text += "Serine-";
break;
case "ucg":
textBox2.Text += "Serine-";
break;
case "ccu":
textBox2.Text += "Proline-";
break;
case "ccc":
textBox2.Text += "Proline-";
break;
case "cca":
textBox2.Text += "Proline-";
break;
case "ccg":
textBox2.Text += "Proline-";
break;
case "acu":
textBox2.Text += "Threonine-";
break;
case "acc":
textBox2.Text += "Threonine-";
break;
case "aca":
textBox2.Text += "Threonine-";
break;
case "acg":
textBox2.Text += "Threonine-";
break;
case "gcu":
textBox2.Text += "Alanine-";
break;
case "gcc":
textBox2.Text += "Alanine-";
break;
case "gca":
textBox2.Text += "Alanine-";
break;
case "gcg":
textBox2.Text += "Alanine-";
break;
case "uau":
textBox2.Text += "Tyrosine-";
break;
case "uac":
textBox2.Text += "Tyrosine-";
break;
case "uaa":
textBox2.Text += "|-";
break;
case "uag":
textBox2.Text += "|-";
break;
case "cau":
textBox2.Text += "Histidine-";
break;
case "cac":
textBox2.Text += "Histidine-";
break;
case "caa":
textBox2.Text += "Glutamine-";
break;
case "cag":
textBox2.Text += "Glutamine-";
break;
case "aau":
textBox2.Text += "Asparagine-";
break;
case "aac":
textBox2.Text += "Asparagine-";
break;
case "aaa":
textBox2.Text += "Lysine-";
break;
case "aag":
textBox2.Text += "Lysine-";
break;
case "gaa":
textBox2.Text += "Glutamic acid-";
break;
case "gag":
textBox2.Text += "Glutamic acid-";
break;
case "ugu":
textBox2.Text += "Cysteine-";
break;
case "ugc":
textBox2.Text += "Cysteine-";
break;
case "uga":
textBox2.Text += "|-";
break;
case "ugg":
textBox2.Text += "Tryptophan-";
break;
case "cgu":
textBox2.Text += "Arginine-";
break;
case "cgc":
textBox2.Text += "Arginine-";
break;
case "cga":
textBox2.Text += "Arginine-";
break;
case "cgg":
textBox2.Text += "Arginine-";
break;
case "agu":
textBox2.Text += "Serine-";
break;
case "agc":
textBox2.Text += "Serine-";
break;
case "aga":
textBox2.Text += "Arginine-";
break;
case "agg":
textBox2.Text += "Arginine-";
break;
case "ggu":
textBox2.Text += "Glycine-";
break;
case "ggc":
textBox2.Text += "Glycine-";
break;
case "gga":
textBox2.Text += "Glycine-";
break;
case "ggg":
textBox2.Text += "Glycine-";
break;
default:
break;
}
}
catch
{
MessageBox.Show("Invalid input!","Error");
textBox2.Text = "";
}
}
public void convertEngineShort(string inputStr)
{
try
{
switch (inputStr)
{
case "uuu":
textBox2.Text += "Phe-";
break;
case "uuc":
textBox2.Text += "Phe-";
break;
case "uua":
textBox2.Text += "Leu-";
break;
case "uug":
textBox2.Text += "Leu-";
break;
case "cuu":
textBox2.Text += "Leu-";
break;
case "cuc":
textBox2.Text += "Leu-";
break;
case "cua":
textBox2.Text += "Leu-";
break;
case "cug":
textBox2.Text += "Leu-";
break;
case "auu":
textBox2.Text += "Ile-";
break;
case "auc":
textBox2.Text += "Ile-";
break;
case "aua":
textBox2.Text += "Ile-";
break;
case "aug":
textBox2.Text += "*Met-";
break;
case "guu":
textBox2.Text += "Val-";
break;
case "guc":
textBox2.Text += "*Val-";
break;
case "gua":
textBox2.Text += "Val-";
break;
case "gug":
textBox2.Text += "Val-";
break;
case "ucu":
textBox2.Text += "Ser-";
break;
case "ucc":
textBox2.Text += "Ser-";
break;
case "uca":
textBox2.Text += "Ser-";
break;
case "ucg":
textBox2.Text += "Ser-";
break;
case "ccu":
textBox2.Text += "Pro-";
break;
case "ccc":
textBox2.Text += "Pro-";
break;
case "cca":
textBox2.Text += "Pro-";
break;
case "ccg":
textBox2.Text += "Pro-";
break;
case "acu":
textBox2.Text += "Thr-";
break;
case "acc":
textBox2.Text += "Thr-";
break;
case "aca":
textBox2.Text += "Thr-";
break;
case "acg":
textBox2.Text += "Thr-";
break;
case "gcu":
textBox2.Text += "Ala-";
break;
case "gcc":
textBox2.Text += "Ala-";
break;
case "gca":
textBox2.Text += "Ala-";
break;
case "gcg":
textBox2.Text += "Ala-";
break;
case "uau":
textBox2.Text += "Tyr-";
break;
case "uac":
textBox2.Text += "Tyr-";
break;
case "uaa":
textBox2.Text += "|-";
break;
case "uag":
textBox2.Text += "|-";
break;
case "cau":
textBox2.Text += "Histidine-";
break;
case "cac":
textBox2.Text += "His-";
break;
case "caa":
textBox2.Text += "Gln-";
break;
case "cag":
textBox2.Text += "Gln-";
break;
case "aau":
textBox2.Text += "Asn-";
break;
case "aac":
textBox2.Text += "Asn-";
break;
case "aaa":
textBox2.Text += "Lys-";
break;
case "aag":
textBox2.Text += "Lys-";
break;
case "gaa":
textBox2.Text += "Glu-";
break;
case "gag":
textBox2.Text += "Glu-";
break;
case "ugu":
textBox2.Text += "Cys-";
break;
case "ugc":
textBox2.Text += "Cys-";
break;
case "uga":
textBox2.Text += "|-";
break;
case "ugg":
textBox2.Text += "Trp-";
break;
case "cgu":
textBox2.Text += "Arg-";
break;
case "cgc":
textBox2.Text += "Arg-";
break;
case "cga":
textBox2.Text += "Arg-";
break;
case "cgg":
textBox2.Text += "Arg-";
break;
case "agu":
textBox2.Text += "Ser-";
break;
case "agc":
textBox2.Text += "Ser-";
break;
case "aga":
textBox2.Text += "Arg-";
break;
case "agg":
textBox2.Text += "Arg-";
break;
case "ggu":
textBox2.Text += "Gly-";
break;
case "ggc":
textBox2.Text += "Gly-";
break;
case "gga":
textBox2.Text += "Gly-";
break;
case "ggg":
textBox2.Text += "Gly-";
break;
default:
break;
}
}
catch
{
MessageBox.Show("Invalid input!","Error");
textBox2.Text = "";
}
}
private void menuItem1_Click(object sender, EventArgs e)
{
textBox2.Text = "";
if (textBox1.Text == "")
{
MessageBox.Show("You have to enter a string.", "Null input");
}
else if (textBox1.Text.Length % 3 == 0)
{
if (comboBox1.SelectedItem.ToString() == "Complete names")
{
string[] inputStr = new String[(textBox1.Text.Length / 3)];
for (int i = 0; i < (textBox1.Text.Length / 3); i++)
{
int strLenght = 3 * i;
inputStr[i] = textBox1.Text.Substring(strLenght, 3);
convertEngineComplete(inputStr[i]);
}
textBox2.Text = textBox2.Text.Substring(0, textBox2.Text.Length - 1);
}
else if (comboBox1.SelectedItem.ToString() == "Short names")
{
string[] inputStr = new String[(textBox1.Text.Length / 3)];
for (int i = 0; i < (textBox1.Text.Length / 3); i++)
{
int strLenght = 3 * i;
inputStr[i] = textBox1.Text.Substring(strLenght, 3);
convertEngineShort(inputStr[i]);
}
textBox2.Text = textBox2.Text.Substring(0, textBox2.Text.Length - 1);
}
}
else
{
MessageBox.Show("Check your input.", "Error");
}
}
private void menuItem4_Click(object sender, EventArgs e)
{
this.Close();
}
private void menuItem3_Click(object sender, EventArgs e)
{
MessageBox.Show("...", "About");
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace Zist
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
comboBox1.SelectedItem = "Complete names";
}
public void convertEngineComplete(string inputStr)
{
try
{
switch (inputStr)
{
case "uuu":
textBox2.Text += "Phenylalanine-";
break;
case "uuc":
textBox2.Text += "Phenylalanine-";
break;
case "uua":
textBox2.Text += "Leucine-";
break;
case "uug":
textBox2.Text += "Leucine-";
break;
case "cuu":
textBox2.Text += "Leucine-";
break;
case "cuc":
textBox2.Text += "Leucine-";
break;
case "cua":
textBox2.Text += "Leucine-";
break;
case "cug":
textBox2.Text += "Leucine-";
break;
case "auu":
textBox2.Text += "Isoleucine-";
break;
case "auc":
textBox2.Text += "Isoleucine-";
break;
case "aua":
textBox2.Text += "Isoleucine-";
break;
case "aug":
textBox2.Text += "*Methionine-";
break;
case "guu":
textBox2.Text += "Valine-";
break;
case "guc":
textBox2.Text += "*Valine-";
break;
case "gua":
textBox2.Text += "Valine-";
break;
case "gug":
textBox2.Text += "Valine-";
break;
case "ucu":
textBox2.Text += "Serine-";
break;
case "ucc":
textBox2.Text += "Serine-";
break;
case "uca":
textBox2.Text += "Serine-";
break;
case "ucg":
textBox2.Text += "Serine-";
break;
case "ccu":
textBox2.Text += "Proline-";
break;
case "ccc":
textBox2.Text += "Proline-";
break;
case "cca":
textBox2.Text += "Proline-";
break;
case "ccg":
textBox2.Text += "Proline-";
break;
case "acu":
textBox2.Text += "Threonine-";
break;
case "acc":
textBox2.Text += "Threonine-";
break;
case "aca":
textBox2.Text += "Threonine-";
break;
case "acg":
textBox2.Text += "Threonine-";
break;
case "gcu":
textBox2.Text += "Alanine-";
break;
case "gcc":
textBox2.Text += "Alanine-";
break;
case "gca":
textBox2.Text += "Alanine-";
break;
case "gcg":
textBox2.Text += "Alanine-";
break;
case "uau":
textBox2.Text += "Tyrosine-";
break;
case "uac":
textBox2.Text += "Tyrosine-";
break;
case "uaa":
textBox2.Text += "|-";
break;
case "uag":
textBox2.Text += "|-";
break;
case "cau":
textBox2.Text += "Histidine-";
break;
case "cac":
textBox2.Text += "Histidine-";
break;
case "caa":
textBox2.Text += "Glutamine-";
break;
case "cag":
textBox2.Text += "Glutamine-";
break;
case "aau":
textBox2.Text += "Asparagine-";
break;
case "aac":
textBox2.Text += "Asparagine-";
break;
case "aaa":
textBox2.Text += "Lysine-";
break;
case "aag":
textBox2.Text += "Lysine-";
break;
case "gaa":
textBox2.Text += "Glutamic acid-";
break;
case "gag":
textBox2.Text += "Glutamic acid-";
break;
case "ugu":
textBox2.Text += "Cysteine-";
break;
case "ugc":
textBox2.Text += "Cysteine-";
break;
case "uga":
textBox2.Text += "|-";
break;
case "ugg":
textBox2.Text += "Tryptophan-";
break;
case "cgu":
textBox2.Text += "Arginine-";
break;
case "cgc":
textBox2.Text += "Arginine-";
break;
case "cga":
textBox2.Text += "Arginine-";
break;
case "cgg":
textBox2.Text += "Arginine-";
break;
case "agu":
textBox2.Text += "Serine-";
break;
case "agc":
textBox2.Text += "Serine-";
break;
case "aga":
textBox2.Text += "Arginine-";
break;
case "agg":
textBox2.Text += "Arginine-";
break;
case "ggu":
textBox2.Text += "Glycine-";
break;
case "ggc":
textBox2.Text += "Glycine-";
break;
case "gga":
textBox2.Text += "Glycine-";
break;
case "ggg":
textBox2.Text += "Glycine-";
break;
default:
break;
}
}
catch
{
MessageBox.Show("Invalid input!","Error");
textBox2.Text = "";
}
}
public void convertEngineShort(string inputStr)
{
try
{
switch (inputStr)
{
case "uuu":
textBox2.Text += "Phe-";
break;
case "uuc":
textBox2.Text += "Phe-";
break;
case "uua":
textBox2.Text += "Leu-";
break;
case "uug":
textBox2.Text += "Leu-";
break;
case "cuu":
textBox2.Text += "Leu-";
break;
case "cuc":
textBox2.Text += "Leu-";
break;
case "cua":
textBox2.Text += "Leu-";
break;
case "cug":
textBox2.Text += "Leu-";
break;
case "auu":
textBox2.Text += "Ile-";
break;
case "auc":
textBox2.Text += "Ile-";
break;
case "aua":
textBox2.Text += "Ile-";
break;
case "aug":
textBox2.Text += "*Met-";
break;
case "guu":
textBox2.Text += "Val-";
break;
case "guc":
textBox2.Text += "*Val-";
break;
case "gua":
textBox2.Text += "Val-";
break;
case "gug":
textBox2.Text += "Val-";
break;
case "ucu":
textBox2.Text += "Ser-";
break;
case "ucc":
textBox2.Text += "Ser-";
break;
case "uca":
textBox2.Text += "Ser-";
break;
case "ucg":
textBox2.Text += "Ser-";
break;
case "ccu":
textBox2.Text += "Pro-";
break;
case "ccc":
textBox2.Text += "Pro-";
break;
case "cca":
textBox2.Text += "Pro-";
break;
case "ccg":
textBox2.Text += "Pro-";
break;
case "acu":
textBox2.Text += "Thr-";
break;
case "acc":
textBox2.Text += "Thr-";
break;
case "aca":
textBox2.Text += "Thr-";
break;
case "acg":
textBox2.Text += "Thr-";
break;
case "gcu":
textBox2.Text += "Ala-";
break;
case "gcc":
textBox2.Text += "Ala-";
break;
case "gca":
textBox2.Text += "Ala-";
break;
case "gcg":
textBox2.Text += "Ala-";
break;
case "uau":
textBox2.Text += "Tyr-";
break;
case "uac":
textBox2.Text += "Tyr-";
break;
case "uaa":
textBox2.Text += "|-";
break;
case "uag":
textBox2.Text += "|-";
break;
case "cau":
textBox2.Text += "Histidine-";
break;
case "cac":
textBox2.Text += "His-";
break;
case "caa":
textBox2.Text += "Gln-";
break;
case "cag":
textBox2.Text += "Gln-";
break;
case "aau":
textBox2.Text += "Asn-";
break;
case "aac":
textBox2.Text += "Asn-";
break;
case "aaa":
textBox2.Text += "Lys-";
break;
case "aag":
textBox2.Text += "Lys-";
break;
case "gaa":
textBox2.Text += "Glu-";
break;
case "gag":
textBox2.Text += "Glu-";
break;
case "ugu":
textBox2.Text += "Cys-";
break;
case "ugc":
textBox2.Text += "Cys-";
break;
case "uga":
textBox2.Text += "|-";
break;
case "ugg":
textBox2.Text += "Trp-";
break;
case "cgu":
textBox2.Text += "Arg-";
break;
case "cgc":
textBox2.Text += "Arg-";
break;
case "cga":
textBox2.Text += "Arg-";
break;
case "cgg":
textBox2.Text += "Arg-";
break;
case "agu":
textBox2.Text += "Ser-";
break;
case "agc":
textBox2.Text += "Ser-";
break;
case "aga":
textBox2.Text += "Arg-";
break;
case "agg":
textBox2.Text += "Arg-";
break;
case "ggu":
textBox2.Text += "Gly-";
break;
case "ggc":
textBox2.Text += "Gly-";
break;
case "gga":
textBox2.Text += "Gly-";
break;
case "ggg":
textBox2.Text += "Gly-";
break;
default:
break;
}
}
catch
{
MessageBox.Show("Invalid input!","Error");
textBox2.Text = "";
}
}
private void menuItem1_Click(object sender, EventArgs e)
{
textBox2.Text = "";
if (textBox1.Text == "")
{
MessageBox.Show("You have to enter a string.", "Null input");
}
else if (textBox1.Text.Length % 3 == 0)
{
if (comboBox1.SelectedItem.ToString() == "Complete names")
{
string[] inputStr = new String[(textBox1.Text.Length / 3)];
for (int i = 0; i < (textBox1.Text.Length / 3); i++)
{
int strLenght = 3 * i;
inputStr[i] = textBox1.Text.Substring(strLenght, 3);
convertEngineComplete(inputStr[i]);
}
textBox2.Text = textBox2.Text.Substring(0, textBox2.Text.Length - 1);
}
else if (comboBox1.SelectedItem.ToString() == "Short names")
{
string[] inputStr = new String[(textBox1.Text.Length / 3)];
for (int i = 0; i < (textBox1.Text.Length / 3); i++)
{
int strLenght = 3 * i;
inputStr[i] = textBox1.Text.Substring(strLenght, 3);
convertEngineShort(inputStr[i]);
}
textBox2.Text = textBox2.Text.Substring(0, textBox2.Text.Length - 1);
}
}
else
{
MessageBox.Show("Check your input.", "Error");
}
}
private void menuItem4_Click(object sender, EventArgs e)
{
this.Close();
}
private void menuItem3_Click(object sender, EventArgs e)
{
MessageBox.Show("...", "About");
}
}
}