Kezdőoldal » Számítástechnika » Programozás » C-ben van egy egyszerű feladat...

C-ben van egy egyszerű feladat én meg az első lépésnél elakadtam?

Figyelt kérdés

A lényeg hogy van egy végtelen egyszerű (megírva kb. 20 soros) feladat, viszont a legeleje egy kisebb fejfájást okozott.

Szóval annyi lenne, hogy inputra kapok pontosan 1 integert, amit be kell olvasnom. Ezután viszont kapok mégegyet stb. tehát nem tudom pontosan mennyi jön, csak hogy egyszer majd jön egy 0, ami a végét jelenti. Ezt dinamikus memóriakezeléssel meg lehet oldani (ezzel szenvedtem), vagy csak csináljak egy 200 milliárd intből álló tömböt?

Dinamikusan szebb lenne. Valaki arra tudna ötletet adni?


2017. szept. 8. 13:39
 1/4 anonim ***** válasza:

Nézz utána a memóriakezelésnek (malloc, calloc, realloc, free) illetve a mutatóknak (pointerek).


Itt egy példa a dinamikusan növekvő méretű adattípusra:

[link]


De alkalmazhatsz láncolt listát:

[link]

2017. szept. 8. 13:57
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:

A C++ vector implementacioja pl. olyan, hogy ha megtelik, akkor foglal egy 2x akkora helyet. Ezt implementalhatod te is, gyors (O(1)) es kis helyet foglal.


Ami meg eszembe jut, hogy nem biztos hogy tarolni kell az adatokat. Atlagot, osszeget, minimumot lehet szamolni a beolvasas kozben is.


Egyebkent C-s feladatoknak jellemzoen csak "elegendoen nagy", 50 meretu tombot kell foglalni, erettsegi feladatokban erre ki is ternek ujabban.

2017. szept. 8. 15:38
Hasznos számodra ez a válasz?
 3/4 sharkxxx ***** válasza:
Láncolt lista a megoldás.
2017. szept. 8. 17:09
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:
Ha ilyen feladat gördül eléd, felmerülhet egy kérdés: nem lehet anélkül megcsinálni a feladatot, hogy tudnom kell az összes eddigi számot? Mert ha kiderül, hogy a feladat megoldható úgy is, hogy csak az éppen megadott számot ismered, akkor mindjárt rengeteg memóriát megspórolsz.
2017. szept. 8. 23:32
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!