C# programok ismertetése érdeklődőknek kezdőktől haladókig

C# MŰHELY

C# MŰHELY

Oktális szám olvasása

2020. július 10. - Benkő Tiborné

Írjunk függvényt 6 jegyű oktális szám beolvasására. A függvény ellenőrizze, hogy az oktális szám pontosan 6 jegyű legyen, digitjei csak 0..7 közé eshetnek.

A feladat megoldása

A függvény ellenőrzi a beolvasást, hiba esetén a pozícióval együtt kiírja a hibás számjegyet és nem fogad el 6 jegynél nagyobb számot:

        static string oct_read(string oct, out int hiba1,
                                           out int hiba2)
        {
            int i, h, k;
            hiba1 = hiba2 = 0;
            h = oct.Length;
            if (h == 6)
            {
                for (i = 0; i < h; i++)
                {
                    k = oct[i] - '0';
                    if (k > 7)   // bit vizsgálat
                    {
                        hiba1 = i + 1;
                        return oct;
                    }
                }
            }
            else
            if (h < 6 || h > 6)
                hiba2 = h;       
            return oct;
        }

        // Ellenőrzött olvasás
        private void button1_Click(object sender, EventArgs e)
        {
            string oct1, oct1_jó = "";
            int hiba1 = 0, hiba2 = 0;
            textBox2.Text = "";
            if (textBox1.Text != "")
            {
                oct1 = textBox1.Text;
                oct1_jó = oct_read(oct1, out hiba1, out hiba2);
                if( hiba2 != 0)
                {
                    MessageBox.Show("A szám hatjegyű lehet:  ez " +
                                    hiba2.ToString(),"Hibajelzés");
                    textBox1.Text = "";
                }
                if (hiba1 != 0)
                {

                    MessageBox.Show("adat: " +oct1.ToString()+"\n"+
                                    hiba1.ToString()+
". digit hibás! ",
                                    "Hibajelzés");
                    textBox1.Text = "";
                }
                if(hiba1 == 0 && hiba2 == 0)
                {
                    textBox1.Text = oct1_jó;
                    textBox2.Text = oct1_jó;
                }
            }
        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            textBox2.Text = "";
        }

A program futási eredményei:

 

    

     

A bejegyzés trackback címe:

https://csharp-muhely.blog.hu/api/trackback/id/tr9615993828

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása