Hirdetés

Keresés

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

  • kovisoft

    őstag

    válasz Gabesson #6089 üzenetére

    1. A külső do...while-ra nincs szükség (amúgy sem jó, mert a feltételben a szimpla = jel értékadás, nem pedig egyenlőségvizsgálat, ami a dupla == lenne).

    2. A belső for feltétele nem jó, mert itt is az i=999 feltételben a szimpla = értékadás. Amúgy sem egyenlőség, hanem <= vizsgálat kellene, és ha 3-jegyű számokat akarsz, akkor nem 0-tól, hanem 100-tól kellene indítani:

    for (i=100; i<=999; i++)

    3. A for után, de még a nyitó { előtt van egy pontosvessző, ez nem kell ide, emiatt üres a for belseje.

    4. A végső feltételvizsgálat és a printf a for ciklus belsejében kellene, hiszen minden egyes i-t meg akarsz vizsgálni.

    Szerk.: lassan gépeltem :)

  • axioma

    veterán

    válasz Gabesson #6089 üzenetére

    1. hasznald a kod formazast
    2. a haromjegyu szamok 100-tol vannak nem 0-tol
    3. miert van do es for ciklus is?
    4. a for ciklus bentmaradasi feltetele sose teljesul, mert ott <= kene legyen, a while meg a kilepesit sose eri el, (*) mivel nem noveled az i-t (na jo 1x de aztan visszaall)
    +1. ilyenkor elso teszt hogy kiveszed az if-et, es ha me'g mindig nem ir ki semmit, akkor a kiirasig (feltetelig) el se jut - az nem tunt fel hogy nemcsak hogy nem ir ki, hanem nem is allt le? azt is figyeld
    Egy picit kene szerintem nezegetned az alapveto vezerlesi szerkezetek helyes hasznalatat a tankonyvben, jegyzetben, vagy a neten. [Beirhatnank ide a megoldast de azzal nem jegyezned meg melyik miert nem volt jo.]

    (*) Re 6092:
    Igen, ezen en is gondolkoztam mert nem is neztem elsore hogy pont egy C-s topikban van egy algoritmikus(nak tuno) kerdes, nalam a hatultesztelos ciklus az kilepesi felteteleskent rogzult me'g pascal idokbol. De teny, tudhattam volna a while-bol hogy az is bennmaradasi, bocsanat a hibaert. Tehat kilep, es leall, csak a 0 nem felel meg a feltetelnek...

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

Hirdetés