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

  • Nem a hosszával van a baj.
    Csak nagyon csúf az az első ~20 sor és nem akartam magyarázkodásba kezdeni vele. Röviden annyi, hogy két sorban meg lehetne oldani azt vektorral, csak még nem tanultuk suliban, netről ellesni meg +1 hibalehetőség, megkérdezem hétfőn a tanárt (ezek érettségi feladatok és most kezdtem a tízet blabla kitérdekel), addig is megteszi ez a tömb, aminek rossz esetben is csak kevéssel van több eleme a szükségesnél.
    Szóval ha működne a dolog, akkor kiírná a legtöbb egymás melletti egyforma számok számát a beolvasandó fájlból, aminek a tartalma:
    32 45 56 34 34 34 34 55 11 11 11 11 11 11 12
    plusz a részsorozatot, tehát:
    6
    11 11 11 11 11 11

    Viszont nem ezt csinálja. Hol a hiba?

    Szia,

    for(s=1; !read.eof(), s<=n; elozo=a)

    A vessző helyett tegyél &&-t. Vesszővel a bal fele ugyan kiértékelődik, de nem számít bele a kilépési feltételbe. Az s pedig a te esetedben nem lesz nagyobb vagy egyenlő az n-nél, és így végtelen ciklusba kerül az egész.

    Egyébként, ha csak annyi a feladat, hogy megkeresd a leghosszabb sorozatot, felesleges eltenned tömbbe. Elég egyszer végigmenni a fájlon, és menet közben megkeresni a legtöbb egymás után következő ugyanolyan számot.

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