Hirdetés

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

  • Pttypang
    veterán

    - a 'kerulet' valtozot inicializalni kene (0-ra)
    - a tomboket (es kb. mindent C-ben) 0-tol kezdodoen indexalunk, tehat az elso elem indexe 0, az n. elem indexe n-1, tehat a lehet_e_haromszog-ben az indexeket csokkentsd eggyel
    - if (lehetvagynem = 1)
    nagyon tipikus C/C++ hiba: a '=' operator ERTEKADAS, nem pedig egyenloseg-ellenorzes. Az ertekadas eredmenye az ertek. C-ben az if utan kovetkezhet szam is, nem csak boolean ertek (ha nem nulla, akkor igaznak szamit), tehat
    if (a = 5) {
    // ez itt mindig vegrehajtodik, mert erteket adtal a-nak, es az nem nulla
    }

    Szoval if (lehetvagynem == 1) a helyes.

    Te meg az elejen vagy, szoval ha lehet, szokd meg, hogy ugy tesztelunk egyenloseget, hogy bal oldalon van a konstans. Ergo:

    if (1 == lehetvagynem) { }

    .. ugyanis ha veletlenul elgepeled, akkor szolni fog a fordito.

    Az indexelest nem vettem eszre, akkor a nem lefoglalt memoriateruletrol gondolom behalaszott valamit.
    Pointereket leszedtem, atirtam azokat, amiket emlitettel, de meg igy se irja ki, ha nem lehet osszerakni az oldalakbol haromszoget.

    Azt is feldobta csoporttarsam, hogy hasznaljam az stdbool.h libet, de azzal nemhiszem ,hogy elorebb lennek, nem valtoztatna rajta.

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