Írjunk programot, amely pozitív egész számot átalakítja bináris számmá és a kért helyértéken lévő bit értékét jeleníti meg. Ha bármelyik adat hibás, hibajelzést ad.
A feladat megoldása:
static string Konvertáló(int decimális)
{
const int ALAP = 2;
int maradék;
string bináris = "";
while (decimális != 0)
{
maradék = decimális % ALAP;
bináris = maradék.ToString() + bináris;
decimális = decimális / ALAP;
}
return bináris;
}
private void button1_Click(object sender, EventArgs e)
{
int szám, maszk
int n;
string s;
if (textBox1.Text != "" && textBox2.Text != "")
{
szám = Int32.Parse(textBox1.Text);
n = Int32.Parse(textBox2.Text);
if (szám >= 0 && n >= 0)
{
s = Konvertáló(szám);
label4.Text = s;
maszk = 1 << n;
if ((szám & maszk) > 0)
textBox3.Text = n.ToString() +
". helyem: van 1 bit";
else
textBox3.Text = n.ToString() +
". helyem: van 0 bit";
}
else if (szám < 0)
{
MessageBox.Show("A szám negatív!", "Hibajelzés");
textBox1.Text = "";
}
else if (n < 0)
{
MessageBox.Show
("A vizsgálandó bit helye negatív szám!",
"Hibajelzés");
textBox2.Text = "";
}
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
textBox2.Text = ""; textBox3.Text = "";
label4.Text = "";
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
textBox3.Text = "";
}
A program futási eredményei: