Dimenziós tömbök Pascal és véletlenszerű függvény pascal

Dimenziós tömbök Pascal

var dlina: array [1..3] egész szám; kezdődik dlina [1]: = 500; dlina [2]: = 400; dlina [3]: = 150;.

Állapítsa meg a mérete lehetővé állandó:

array inicializálás

Ezen kívül, magát a tömböt lehet állandó. azaz minden eleme a program meg van adva. Leírás Az ilyen tömb a következő:

var egy: array [1..5] egész szám; i: integer; kezdődik egy [1]: = 2; a [2]: = 4; egy [3]: = 8; a [4]: ​​= 6; egy [5] = 3; writeln ( 'Array A:'); i: = 1-től 5 do write (a [i]: 4); végén.

Tömbök gyakran használják Pascal egy ciklus paraméter, mint közismert, hogy hány elem a tömbben, és a ciklus számláló is használható indexek terméket.
Ebben a példában, egy dimenziós tömb egy határozott hátránya: értékének hozzárendelésével az elemek.

Feldolgozás tömbök Pascal, és a tömb, valamint a tölteléket, általában használja a ciklusban.

Véletlen számok funkció Pascal

Ahhoz, hogy következetesen nem kérte az értékek a tömb elemeinek felhasználásával egy véletlen szám generátor Pascal, amely végre a Random funkciót. Tény, hogy a pszeudo-véletlen számokat generálja, de nem ez a lényeg.
A számok generálására 0 és n (n nem beleértve magát az értéket. Egész számok a tartományban [0, N)) használunk véletlen rögzítési (n).
Használat előtt a szükséges funkciók initsializirovt véletlen számot randomize eljárást.
Tartomány Pascal leginkább véletlen számokat a-ból b képlet adja meg:

Példa: Tömb feltöltése véletlenszerű számok Pascal:

var f: array [1..10] az egész; i: integer; kezdődik randomize; i: = 1-től 10-do kezdeni f [i]: = random (10); <интервал [0,9]> levelet (f [i], ''); végén; végén.

A valódi számok a [0,1):

Cél Array 1. Be kell állítani a méretet tömb 5, töltse ki a tömböt véletlen számokkal az a [-1,1] és kijelző elemek a képernyőn, hogy meghatározza három pozíció az output minden elemének

Fibonacci számok Pascal

A leggyakoribb példa segítségével a tömb kimenet egy Fibonacci szám Pascal. Tekintsük meg.

Példa: Számos Fibonacci számok: 1 1 2 3 5 8 13 ...

var i: integer; F: array [0..19] az egész; kezdenek f [0]: = 1; f [1]: = 1; i: = 2 és 19 do kezdeni f [i]: = F [i-1] + f [i-2]; writeln (f [i]) end; végén.

Ebben a példában, világossá válik, hogyan kell dolgozni numerikus sorozat. Jellemzően, a kimenetre numerikus szekvencia a képlet meghatározására minden egyes tagja a sorozat. Így, abban az esetben, Fibonacci számok, a képlet-szabály jelenik meg, mint az f [i]: = F [i-1] + f [i-2]. Ezért kell használni a ciklusban a kialakulását a tömb elemeinek.

Cél Array 2. Dan sorozat 10 véletlen számok: a [1], a [2]. a [10]. Számítsuk ki a mennyiségét és típusát tripleteket mellette álló szám: egy [1] + egy [2] + egy [3]. a [2] + egy [3] + egy [4]. egy [3] + egy [4] + A [5]. ....... a [8] + egy [9] + egy [10]

Cél Array 3. Írjon programot a probléma megoldásának a nyomtatás több a számok 2 4 8 16 32 512; kitölteni egy tömb használatát Repeat ciklus

A maximális (minimális) tömbelem

Keresés maximális elem, annak index:

Dimenziós tömbök Pascal és véletlenszerű függvény pascal

Feladat: Keresse meg a minimális eleme tömb

Cél Array 4. mivel egy sor 10 integer elemek. Keresse meg a számos negatív és nyomtassa ki a számot a képernyőn

Cél Array 5. megtalálni a minimális és maximális számát n bemenet (tömb), és a mutatók

Feladat Array 6. Mivel a tömb mérete N. List mind a jelen tömb páros számok szerint csökkenő sorrendben az indexek, valamint a K szám

Cél Array 7. Írjuk be egy sor öt elem abban talált két maximális elemek és azok számát.

Elem keresése tömbben

Tekintsük a példát egy komplex munka egydimenziós tömbök:

Példa: Adott egy sor 10 egészek. Határozza meg, hogy van egy sor számok a felhasználó által megadott. Ha van - output „talált” - ha nem „talált”


Ahhoz, hogy megoldja ezt a problémát, akkor kell egy kis szünetet nyilatkozata - ki a hurkot.
Megoldás 1. opció:

var f: array [1..10] az egész; flag: logikai; i, c: integer; kezdődik randomize; i: = 1-től 10-do kezdeni f [i]: = random (10); levelet (f [i], ''); végén; flag: = false; writeln ( 'Adja meg a minta'); readln (c); i: = 1-től 10 do ha f [i] = C ezután kezdődik writeln ( 'talált'); flag: = true; break; végén; ha flag = false akkor writeln ( 'nem található'); végén.

Tekintsük hatékony megoldást:

A feladat: megtalálni a tömb elem megegyezik X. vagy annak megállapítása, hogy nem.

  • kezdődik az 1. elem (i: = 1)
  • Ha a következő elem (A [i]) a teljes lista X. különben menj a következő elem

Dimenziós tömbök Pascal és véletlenszerű függvény pascal

Elem keresése tömbben

Cél Array 8. Fill tömb 10 véletlen számok, az [0..4] és kiadási számai minden eleme egyenlő X.

ciklikus eltolás