Kezdőoldal » Számítástechnika » Programozás » Egy lista elemeinek számozása...

Egy lista elemeinek számozása miért 0-ról indul?

Figyelt kérdés

pl pythonban:


lista = ["nagyon", "fura", "ez", "nekem"]

print lista[1]


a kimenet a "fura" lesz, de miért nem a "nagyon"? nem látok benne túl sok logikát így elsőre...


2013. okt. 28. 11:44
1 2
 1/18 anonim ***** válasza:
82%

Általánosan:

A 'lista' a lista elejére mutat, tehát az első elemre, az index pedig az offset-et jelenti, vagyis hogy hányat kell onnan arrébb ugrani a kívánt elemhez. Az első elemhez 0-t kell ugrani, hiszen a 'lista' arra mutat. Ha onnan 1-et ugrasz, akkor az már a 2. elem lesz.

2013. okt. 28. 11:53
Hasznos számodra ez a válasz?
 2/18 anonim ***** válasza:
23%
Amerikaiak 0-tól számoznak nagy általánosságban nem 1-től.
2013. okt. 28. 11:55
Hasznos számodra ez a válasz?
 3/18 anonim ***** válasza:
50%

Általában a számítástechnikában az egész számok sorozata nullától indul, mivel a nulla a legkisebb "pozitív" egész, amit tárolni tudunk.

Valójában ez nem is sorszám, hanem egy index. Elemek indexeléséhez minden lehetséges értéket felhasználnak, mert ha egyet is kihagynak, az megfelezi a lehetőségek számát. Luxus lenne kihagyni a nullát. :)


Egyszerűen meg kell tanulni, hogy a tömb- (lista-, vektor-, stb.) indexek így jönnek:

0,1,2,3, ...

2013. okt. 28. 11:57
Hasznos számodra ez a válasz?
 4/18 iostream ***** válasza:
75%
#3 Zavaros katyvasz. #1 Mondja jól. Azért 0-tól indul, mert az első elemhez 0-t kell lépni. Ennyi. Nem minden nyelvben van így, de sok helyütt igen, ez konvenció, így kell csinálni, szokd meg.
2013. okt. 28. 11:59
Hasznos számodra ez a válasz?
 5/18 anonim ***** válasza:
38%

Igen, amit első írt, az is igaz. Az index alapján számolja ki a progi, hogy hol van a keresett elem. Az első elem helye adott, a többit úgy találja meg, hogy az első címéhez hozzáadja az 'index * elemméret' értéket.

Tehát az első az első+0*méret, vagyis önmaga,

a második lesz első+1*méret, vagy a következő, stb.

2013. okt. 28. 12:01
Hasznos számodra ez a válasz?
 6/18 anonim ***** válasza:
35%

(

"#3 Zavaros katyvasz. #1 Mondja jól. Azért 0-tól indul, mert az első elemhez 0-t kell lépni."

Az lehet, hogy én rosszul közelítettem meg a dolgot, de hogy te sem válaszoltál a kérdésre, az is biztos. :DDD

)

2013. okt. 28. 12:03
Hasznos számodra ez a válasz?
 7/18 anonim ***** válasza:
81%

"Általában a számítástechnikában az egész számok sorozata nullától indul, mivel a nulla a legkisebb "pozitív" egész, amit tárolni tudunk."

0, mint pozitív egész??? Melyik bolygón??


"Valójában ez nem is sorszám, hanem egy index."

Mi a különbség a sorszám és az index között?


"Elemek indexeléséhez minden lehetséges értéket felhasználnak, mert ha egyet is kihagynak, az megfelezi a lehetőségek számát.2

WTF??? n-1=n/2?


"Luxus lenne kihagyni a nullát. :) "

Pff...

2013. okt. 28. 12:12
Hasznos számodra ez a válasz?
 8/18 A kérdező kommentje:

Köszi, így már értem.


Néhány válasz bizonyos részeivel nem értek egyet: nem megszokni, vagy megtanulni akartam, hanem megérteni... :) Sikerült, köszi mindenkinek.

2013. okt. 28. 12:15
 9/18 A kérdező kommentje:
De egyébként ti nem találjátok ezt "helytelennek"? Csak azért, mert ugye elvileg a magas szintű nyelvek lényege, hogy az ember logikájához jobban igazodjon.
2013. okt. 28. 12:20
 10/18 iostream ***** válasza:
84%

"de hogy te sem válaszoltál a kérdésre, az is biztos. :DDD"


De, hogyne válaszoltam volna. Azért, mert azt adjuk meg, hogy mennyi kell lépni.


"az első címéhez hozzáadja az 'index * elemméret' értéket."


Vagy igen, vagy nem. Ez attól függ, hogy mi van a lista alatt. Egy tömb esetén igen. Egy láncolt lista vagy egy deque már teljesen máshogy működik.


"Néhány válasz bizonyos részeivel nem értek egyet: nem megszokni, vagy megtanulni akartam, hanem megérteni..."


Márpedig meg kell szokni, ha ilyen nyelveket akarsz használni. Azt írod, nem találsz túl sok logikát benne, és neked ez furcsa. Akkor bizony szükséged van a megszokásra, az, hogy nem akarod csak neked nehezítés. Az első lépés a megértés, ezt pedig megadtuk.


"De egyébként ti nem találjátok ezt "helytelennek"? Csak azért, mert ugye elvileg a magas szintű nyelvek lényege, hogy az ember logikájához jobban igazodjon."


Nincs egy egyértelmű határ. A C egy viszonylag alacsonyabb szintű magasszintű nyelv. Hardverközeli, ott érthető a 0. Sok nyelv a C-s szokásokhoz igazodik, mert megkönnyíti az áttérést. Egy teljesen új nyelvnél is inkább a 0-t választják, mert ez a szokás. Ha mást választasz, csak kavarodást okozol.

2013. okt. 28. 12:57
Hasznos számodra ez a válasz?
1 2

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!