Hirdetés
Új hozzászólás Aktív témák
-
Lortech
addikt
válasz
Lortech #1048 üzenetére
Még kiegészítés:
for i:=1 to 10 do
s:=tomb[ i ];
tomb[ i ] :=tomb [i+1];
tomb[i+1]:=s
Ez gondolom egy cserét valósítana meg. De gondolj bele, neked nem az kell, hogy kicseréld az elemeket, hanem, hogy eggyel növeld vagy csökkentsd a sorszámukat.
Pl i=1, irany=''f''-nél tfh. tomb[1]=10, tomb[2]=20, ha kicseréled őket a te módszereddel, akkor igaz, hogy a 10-es eggyel nagyobb, illetve a 20-as eggyel kisebb indexszel fog rendelkezni (tomb[1]=20], tomb[2]=10), de ez neked nem együtt kell, hanem külön külön, az irány megválasztásának megfelelelően. És ha belegondolsz, i=2 esetben tomb[2]=10-et fogod kicserélni tomb[3]=30-ra, és így már kettőt lépett előre, és a végén azt éred el, hogy a tomb[1]=10 elment a legutolsó helyre. Ellenben ha megfigyeled az általam leírt módszert, és deklarálsz a tomb[1] elé egy tomb[0]-t, akkor ebbe beteszed a i=1 esetben a tomb[1]=10-et, tomb[1] ekkor a végső helyére került, az eredetinél eggyel alacsonyabb sorszámú helyre, így i=2 esetben a 10-es nyugodtan felülírható a következő értékkel ( 20).
irany=l esetén ugyanez, csak visszafelé. Ott az i=10-nél a 11-es indexű tömb lesz a pótlás, abba rakod a 10. elemet, ekkor ez helyére került, így felülírható a 10. elem a 9.-kel, és így tovább.
A kiírás pedig azért az utolsó tömbelemet írná csak ki, ha egyáltalán működne, mert nem foglaltad ciklusba a kiiratást, és csak egyszer fut le, így csak az i-ben utoljára megmaradt indexnek megfelelő tomb[ i ] elemet írja ki. Többet azt hiszem már tényleg nem tudok segíteni.
illetve de (): még annyit hozzá kell tenni, hogy ezzel a módszerrel a kiíratást is irany=f/l-nek megfelelően kell elvégezni, mivel ''f'' esetén 2-től 11-ig kell kiiratnod az elemeket (melléírva az indexét, mivel csak úgy tudod prezentálni, hogy tényleg azt csináltad amit kellett), ''l'' esetén pedig 0-9-ig ugyanígy. A kiiratást elvégezheted még a sorszámnövelő/csökkentő rész közben is, az if-en belül, felhasználva azt, vagy az egész után egy újabb if bevezetésével.
[Szerkesztve]
Új hozzászólás Aktív témák
- BONTATLAN Új iPhone 17 PRO Kozmosznarancs 256-512GGB Független 1év Apple Gar. Azonnal átvehető.Deák
- i5930, MSI X99, EVGA RTX 2080 Super Hybrid (Ritka), ssd + HDD, BeQuite Torony
- Insta360 X4 360 fokos akciókamera
- PS5 PlayStation 5 Slim (lemezes, 1TB) kiváló állapotban! 6 Hónap Jótállás
- Apple Watch Ultra eladó
- Extra olcsó! HP 230 Vezetéknélküli USB-s Billentyűzet
- Samsung Galaxy A80 128GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 14 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Ravpower 6000 mAh-s mégis pici powerbank eladó
- Okosóra felvásárlás!! Samsung Galaxy Watch 5 Pro, Samsung Galaxy Watch 6 Classic
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő