Munka tömbök Delphi
Nagyon meglepődtem, amikor azt a felkérést kapta, hogy beszélni tömbök és rendezési őket Delphi. De az idő kértek, és a mi a honlap célja, hogy segítse a fejlesztés a Delphi, akkor úgy döntöttem, hogy megírom ezt a cikket, amely megmondja, hogy a lehetséges intézkedések tömbökkel Delphi. Ebben az esetben mi írnia saját jellemzői, amelyek segítenek a jövőben, amikor foglalkozó tömbök.
input tömb
Annak érdekében, hogy működni egy sor, meg kell az elejétől kap a felhasználó. Próbáljuk, hogy egy input egydimenziós tömbben csak egy mezőbe. Minden eleme a tömb lesz elválasztjuk az előző szeparátor. Miután a gombra kattintva osztja tartalmazó karakterláncot egy tömb, az első részstring majd kiosztani egy második substring, stb
Térjünk most folynak csinálni. Vedd fel a forma gomb gombot, és a Mező szerkesztése.
Cím mi funkciók lesznek:
st - egy karakterlánc, amely tartalmaz egy sor expl - string határoló N - száma a substring
Az n-edik substring (tömb elemet) a kapott érvként sztring függvény először eltávolítja az előző s n-1 substring (Ciklus), ezután megkeresi a határoló, amely jelöli a végén a kívánt alsztringek allokál substring és visszaadja azt az értéket a függvény ( az ő neve).
Ne felejtsük el, hogy adjunk címet a funkció fejezetet Public programmodul.
Most, hogy teszteljék a teljesítményét a funkciókat írunk a onclick eseménykezelő mi gombra. Az elején vagyunk a mi funkciót kap egy sor Edit1, majd abból, hogy:
Keresés minimum (maximum) a tömb elem
Arra törekszünk, a minimális elem egy egész tömb. Ehhez egy kis változás onclick eseménykezelő a gomb:
Ebben a példában, egy [min] minimális eleme a tömb, és a min - a minimális elem számát. Az algoritmus nagyon egyszerű: össze az egymást követő elem minimális, ha az kevesebb, mint a minimális, majd tárolja változó számú min. és mi továbbra is összehasonlítani vele.
Ahhoz, hogy megtalálja a maximális elem, meg kell változtatni, csak egy sort:
Kell helyettesíteni:
Csak most a [min] - maximális elemet, és min - maximális száma elemek.
Keresés egy adott elem a tömbben
Mi jár az egyszerű felsorolás. Ehhez mi megy át az összes elemet a tömb, amíg megfelelnek az előírt elem, vagy amíg elérjük a végén a tömb.
Element véletlen, amelyekkel meg kell találnunk lesznek tárolva a szövegmezőbe Edit2. Onclick eseménykezelő a gomb lesz a következő formában:
Tömbök rendezése
Itt jön a legérdekesebb - rendezni a tömböt. Tekintsük az algoritmus az úgynevezett közvetlen választás. Jelentése a következő:
Megtekintése a tömb első elemét, megtaláljuk a minimális elem, és tegyük a helyére az első elem és az első elem - helyett a minimum.
Akkor majd nézet egy tömb, kezdve a második elem, majd folytassa, ahogy tettük, mielőtt ezt a lépést.
Az algoritmust most tiszta írásához kódot. Mindegy onclick eseménykezelő őt a következő alakú:
Jó estét, kérem, mondja meg,
surf min értékek
Szóval másolni az egész program
Ez ad egy hiba, mint Delfi
undeclaret idintifier 'GetSubSrt'
GetSubSrt mi ez és hol, hogy add meg a Delfi olvasni ??
Kérem, mondja meg (
és ha tudok holnap, hogy megoldja a problémát maradt 2 vizsga
vagy tömbök nem vrublyus (
Szám 5.3. Mivel egy sor valós számok. Keresse négyzetösszege
tömb elemeit.
és
№5.8. Mivel egy sor valós számok. Keresse meg a legalacsonyabb
tömb elemek páros számok.
Köszi előre, legalább körülbelül GetSubStr prompt (
Kérem, mondja meg, hogyan kell csinálni, így a tömb képes lehet felvenni a különböző adattípusok! és az ilyen betűk és számok! Előre is köszönöm!
pozhalusta segít megoldani a problémát
Mivel egy sor N.Preobrazovat neki hozzátéve, hogy a páros számok element.pervy első és utolsó eleme a tömb nem változik
Kérem, segítsen levelet programku egydimenziós tömbben. Itt van a probléma: Adott egy sor N. nagyítása minden páros szám foglalt tömb, az eredeti érték az első páros. Ha páros számok egy tömbben hiányzik, akkor hagyja a tömb változatlan marad. Köszönöm előre.
Az alábbi kódot helyett
A dinamikus egyszerű
var myarr: tömb string;
eljárás add;
kezdődik
SetLength (myarr, Lemgth (myarr) +1);
myarr [Hosszúság (myarr) -1]: = 'Hello';
végén;
eljárás mutatják (a: integer);
kezdődik
ha (a
végén;
Igen, én élveztem cool. Ez az, amikor nem találtam a dinamikus tömböket.
Nos, maga a weboldal is, de fontos prostinky vicces találtam számomra érdekes információkat.
Már mindent kitaláltam magamnak :)
Valami Próbáltam szeretnék, hogyan kell írni, de nem tudtam.
Hibák -
[Error] Unit1.pas (46): Statement várt, de 'eljárás' talált
[Warning] Unit1.pas (57): A szöveg után a végső 'END.' - figyelmen kívül hagyja a fordító
[Végzetes hiba] Project1.dpr (5): Nem sikerült összeállítani a használt egység 'Unit1.pas'
és kiemeli a piros vonal -
eljárás TForm1.Button1Click (Sender: TObject);
Magyarázd meg nekem, hogy mit csinálok rosszul.
Ui A Delfi csak dolgozott adatbázisokkal, és az egyetem kérte a kifejezés - „fejlesztése Windows alkalmazások Delphi keresés Minimum array ..”
ha egy ilyen tömb sotoyal slobtsov mondjuk 10X10. és szükséges volt hozzá a számokat formájában egy piramis: levelet.
-----* -----
----** ----
---*** ----
és így tovább **********
és FIHM versa csökkenő
-******** -
--****** -
------ ****
Elvileg minden érdekes, jól gdezhe dinamikus masivi.