Pomoc s programem v C#   zodpovězená otázka

C#, Visual Studio, WinForms

Dobrý den, jsem student střední školy, který studuje informatiku. Programování mi opravdu moc nejde a proto bych potřeboval poradit s jedním úkolem, který mám vypracovat. Prosím neberte to jako podvod, protože bych se s tím nechtěl zabývat, ale opravdu mi to nejde a už nějakej ten den to zkouším. Tady to je:

V prostředí C# vytvořte program, který dle zadané informace zjistí, zda bylo zadáno

a) číslo -> např.: Bylo zadáno číslo: 5,5

b) text -> např.: Byl zadán text: Ahoj

c) nic -> např.: Nebylo nic zadáno

Pro zjištění využijte konstrukci try catch.

Uživateli se zobrazí informace pomocí MessageBox s názvem okna Info

V programu bude pomocí instance třídy Label uvedeno vaše jméno.

nahlásit spamnahlásit spam -3 / 3 odpovědětodpovědět

wau, to je dost primitivní.

Aspoň sem hoď nějaký náznak snahy a místo kde ses zaseknul...

nahlásit spamnahlásit spam 0 odpovědětodpovědět
public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                double muck = Convert.ToDouble(textBox1.Text);
                if (muck > 0) MessageBox.Show("Bylo zadáno číslo " + muck + ". Toto číslo je kladné.", "Info");
                else if (muck < 0) MessageBox.Show("Bylo zadáno číslo " + muck + ". Toto číslo je záporné.", "Info");
                else MessageBox.Show("Bylo zadáno číslo " + muck + ".", "Info");
            }
            catch
            {

                if (textBox1.Text=="") MessageBox.Show("Nebylo nic zadáno.", "Info");
                else MessageBox.Show("Byl zadán text: "+textBox1.Text+"." , "Info");
            }
        }
    }
}

Promin nejsem programátor a nerozumím tomu, ale i tak ti děkuji za odpověd. A je tohle dobře ?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Podle mě se po tobě chce aby jsi v try zkusil převod na double.. no: tohle určitě funguje:

 private void Button_Click(object sender, RoutedEventArgs e)
        { 
            if (text.Text == "")
            {
                MessageBox.Show("Nic nebylo zadáné");
            }
            else
            {
                try
                {
                    
                   double cislo =   Double.Parse(text.Text);
                    MessageBox.Show("zadali jste číslo:" + cislo);
                }
                catch (Exception)
                {
                    MessageBox.Show("Zadali jste text:" + text.Text);

                }
            }
        }
nahlásit spamnahlásit spam 0 odpovědětodpovědět

Test na prázdný řetězec by se měl dělat buď:

if (string.IsNullOrEmpty(text.Text))
{
    //...
}

nebo pokud testovaná hodnota nebude nikdy null (jako text prvku TextBox):

if (text.Text.Length == 0)
{
    //...
}

Je to optimálnější.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback