Cycles, munka pascal, cikkek, programozás - programozás C, Delphi, C #

Az utolsó kérdés, mi már elsajátították a kiterjesztést, ha nyilatkozatot. akkor. mást, nevezetesen goto eljárást.

Megmutattam, hogyan lehet használni építeni interaktív programok, kezeli a munka és a program előrehaladásáról. Ez a lehetőség adott néhány új távlatokat levelet fejlettebb programokkal. De ez nem elég, nem a normál program írási használ csak összehasonlítjuk elemekkel. A Pascal vannak más tervek, amelyek lehetővé teszik, hogy javítsák és bonyolítja a programkód, és következésképpen bővíteni programozási lehetőségeket.

Mi a rend és a kellő időben, hogy tanulmányozza őket. Ma tovább a tanulmány a struktúrák, nevezetesen egy új design - ciklus. Cycles - szerves része a programnak. Tény, hogy ez a kialakítás egyszerű, de sokszor nem értik az elvet, hogy - mi ez, és hogyan használják? Tulajdonú így először azt akarom mondani, hogy ebben a ciklusban, és mikor lehet szükség.

Kezdjük egy példát. Képzeljük el, hogy mi szükség van, hogy írjon egy programot, amely kiírja 10-szer, a felhasználó által megadott karakterlánc. Elnézést egy ilyen primitív példát, de a munka a legjobb, hogy megértsük ezt a témát.

Így, az oldatot a program nyilvánvaló:

  1. Azt olvassuk az egy string változó.
  • Tízszer megjeleníti a képernyőn.

    Tehát most jön a felismerés, hogy a nyelvi elem. Azt kell mondanom, hogy néhány ciklus - néhány lehetővé teszi, hogy ismételje meg a program számos alkalommal a program néhány kénytelenek megismételni a programot, hogy bizonyos körülmények között (például, amíg a felhasználó megnyomja az Esc gombot). Ennyi, most kezdjük rögtön a tanulmány a ciklusok magukat.

    Az első ciklus, amely azt fogja megtanulni az úgynevezett ciklus FOR. Ez kategóriájába tartozik, akik arra kényszerülnek, hogy meg kell ismételni többször a programot.

    Annak igazolására, hogy ebben a ciklusban, írjunk egy programot fent:

    Nézd meg közelről a programot. Látod a szót. Ez a ciklus kezdetén. Magyarázata szintaxist:

    1. A ciklus a szó.

  • Miután ez hozzárendelése bármelyik változó kezdeti értéke. Ez az a érték és a visszaszámlálás fog bekövetkezni.
  • Ezután jön a szó.
  • Ezután végét jelzi értékét a redukált változó. Akár ez az érték lesz a gróf.
  • A ciklus végén fejléc tegye a szót nem.
  • Akkor megy minden műveletet, amelyeket meg kell lezárás után. Ez ugyanúgy működik, mint a szabály az if. akkor. mást - mintegy fészkelő. Azaz, ha szavak után csinálni kell valami akció, hanem egy, az összes azok kezdeni építése. végén; Tartsa ezt szem előtt, ellenkező esetben a ciklus nem fog megfelelően működni - lesz végrehajtva csak az első felvonás, és a többiek is csak hatással a ciklus után.
  • Ez minden, amit tudni kell a szintaxis a ciklus. Most nézzük írni egy programot, amely használni fogja azt -, hogy biztosítsa az új anyag. Tehát kezdjük.

    Meg kell írni egy programot, amely növeli az értékét a bemeneti változó 10 nyomtatást is minden lépésnél, azaz kimenete olyannak kell lennie, (például, hogy hogy mi vezetett a 7-es számú):

    A megoldás nem vagyok magyarázza lépésről lépésre (a mi, ugye?), És ha a szöveg a program:

    Megjegyzés WriteLn vonal (I ,, A, '+', I, '=', A + I ''); - Itt idézem azt egy nagyobb betűtípust, hogy könnyebben érthető. Ez jól mutatja, multiplicitás writeln eljárás paraméterek. nem igaz? Emellett kérjük, vegye figyelembe, hogy én vagyok a writeln eljárás. ehelyett írása - annak érdekében, hogy át egymás után visszavonását. Így vonalak kimenet egy oszlopra.

    Szintén fontos megjegyezni, hogy az általam használt álló ciklusban Byte típusú. Az a tény, hogy a Byte kevesebb memóriát igényel, mint egész, vagy a Word. így a program lesz optimalizálva. Végtére is, tudjuk előre, hogy az érték nem lépi át a 10, közvetlenül a hurok? Miért érdemes használni típusú tárolására képes sokkal érték?

    És most én is a téma ciklus. Van néhány dolog, amit meg kell znast egy ciklusban. Különösen a tartományhatárokat és végrehajtott műveletet a ciklusban. Mit jelent? Nézd, például írunk:

    Az I: = 1-től 10 do

    Mi van, ha ez történik az i változó?

    1. Ez lesz egyenlő egységét;

    2. eggyel nő minden új ciklus kezdete (ez az úgynevezett iterációs - új csatorna;), amíg ez egyenlő 10.

    Közlemény, ez növeli? De ha írsz:

    Az I: = 1-től 10 do

    Részben azért, mert csökkenteni kell? Értékei alapján - igen. De ha meg van írva a program, a ciklus nem hajtódik végre. Pascal nem ad hibát, akkor a program megy elvégzésére, de a ciklus nem fog működni. Miért? Csak egy Ciklusutasítás minden új iteráció (pass) Packal 1-gyel növekszik a változó és ellenőrzi - ez több a célérték? Ha igen, akkor a ciklus befejeződik. Tehát itt - a változó I lépteti 1, akkor most egyenlő 11, amely nagyobb, mint a végső érték (nagyobb, mint 1), a ciklus befejeződik. Ez azt jelenti, üres - nem fog működni. A kezdeti érték azonnal nagyobb lesz, mint az utolsó.

    Néha azonban szükséges, hogy a változó a ciklusban csökken. Például egy módosított változata az előző program - csökkenteni 10 értékét bevitt változó. Hogy csináltad? Ezekre a célokra, és van egy kiterjesztés hurok szintaxis. amely lehetővé teszi, hogy csökkentse az értéket, vagyis kérni „a legnagyobbtól a legkisebb.”

    Ahhoz, hogy ezt a funkciót, akkor ki kell cserélni a funkció szóról szóra downto. vagyis hézag lesz:

    Az I: = 1 do 10 downto

    Egyszerű, nem? Mindenesetre a munkát ciklus teljesen megváltozott. Most nézzük módosítsa a programunk, azaz tenni, hogy azt csökkent csak 10 csökkenti 10-1 helyett 1-10, ahogy tettük korábban. Tegyük még javítani a program: hiszen mi azonnal levonjuk a 10 a beírt szám, én nem akarom, hogy legyen kisebb, mint 10. Miért mondod? Legyen. Nem, csak úgy, hogy olyan állapotban, hogy valahogy bővíteni a felület. Így ellenőrizni fogjuk a bemenet számát több / kevesebb, mint nulla, akkor vonjuk belőle száma 10: 1 példa program:

    Ez minden. Értsd meg ezt a programot, akkor minden ismerős.

    Tulajdonképpen ez az egész ciklus FOR. Írja magad néhány program. Próbálja meg rendesen tárolják a szintaxis, anélkül, hogy bárhol. Azonban, és anélkül, hogy ciklusokat is. Házi feladat, kérem ma, nem próbálja módosítani privedennyyu programot és több testmozgásra függetlenül. Írja több programot, hogy lehet kicsi, de kapsz több tapasztalat. Tudod, a független írásbeli feladatok - kiváló gyakorlat. Ápolni, mint programozó, és egyre több vajon mi néhány kérdést. Természetesen, ha nem tudom, ahhoz, hogy Pascal megoldása többé-kevésbé súlyos problémák, de nem is olyan kicsi, tudod, hogy nem old meg semmit.

    Programozás kezdőknek.

    Kapcsolódó cikkek