Hirdetés

Új hozzászólás Aktív témák

  • Lortech

    addikt

    válasz shev7 #504 üzenetére

    Azért hogy aztán vissza kelljen alakítani. :)

    _seth_:
    N int típusú, TextLength is, mivel egy szám / érték, ezért ToStringezni nem kell.
    Propertyket (TextLength) felesleges eltárolni külön ilyen esetben, csak egyszer hívod.. Írd be nyugodtan a forba. De ha nagyon biztos programot akarsz írni, akkor az egész textBox1 stringet tárold el egy segédváltozóban, és annak írd be a ciklusba a hosszát.

    str = char.Parse(...) ??? Mit akarsz ezen parsolni? Eleve a típus.parse típust ad vissza, itt char-t (egy darabot!), tehát ha minden áron le akarod parsolni charra, akkor kéne egy ciklus, ahol végigmész a string indexein egyenként, figyelve arra, hogy ne ilyen nulla hosszúságú a string, mert akkor kivétel.. De nem tudom elképzelni, hogy mi értelme van ennek.

    A db változót nem árt nullázni, mert a második számolásnál már nem fog helyes értéket adni, mert az előző eredménye benne van, és azt növeled.

    Ez a ciklus.. Minek mész végig 0..N, ha fel sem használod az indexet, és minden iterációnál ugyanazt csinálod?

    Az i változót ne így deklaráld, mert könnyen hibákhoz és félreértésekhez vezethet.. Egy segédváltozó ritkán jó, ha az osztály mezője, tartozzanak az adott scopehoz, ott legyenek deklarálva.
    pl itt: for (int i=0;...) {} Ez vonatkozik az str-re, N-re is, és vsz a db-re, mert csak egy ellenőrzésre kell vagy tájékoztatásra kell, nem az osztályhoz tartozik szorosan, és nem kell megőrizni sem. Ez nem pascal. ;]

    Ha csak a kisbetűs magánhangzókat akarod beleírni a switchbe, akkor célszerű a stringet ToLower-rel csupa kisbetűssé alakítani, hogy nagybetűs magánhangzókra is menjen, pl: string str = textBox1.Text.ToLower();

    A ''számol'' gombra kattintás eseménykezelője kb így nézne ki sztem, ha a te kódodból indulok ki:
    private void button1_Click(object sender, EventArgs e)
    {
    db = 0;
    string str = textBox1.Text.ToLower();
    for (int j = 0; j < str.Length; j++)
    {
    switch (str[j])
    {
    case 'a': db++; break;
    case 'e': db++; break;
    case 'i': db++; break;
    case 'o': db++; break;
    case 'u': db++; break;
    }
    }
    MessageBox.Show(db.ToString());
    }

    Thank you to god for making me an atheist

Új hozzászólás Aktív témák