Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ

Lexoni dhe lexoni deklaratat. Procedurat e futjes së informacionit

Ju jeni në seksionin mbi programimin Pascal. Para se të fillojmë programimin, duhet të sqarojmë disa nga konceptet që do të na duhen në fillim. Nuk mund të programosh ashtu. Ne nuk mund të shkruajmë një program me fjalë - kompjuteri nuk kupton asgjë përveç zerave dhe njësheve. Për këtë, në Pascal janë krijuar simbole të veçanta - gjuha Pascal, një grup fjalësh të rezervuara që nuk mund të përdoren në programet e tyre askund tjetër, përveç qëllimit të tyre të synuar. Le të rendisim konceptet bazë që na duhen në fillim:

✎ 1) program - "program" në anglisht, i shkruar në fillim të kodit, i ndjekur nga emri i programit me shkronja latine dhe një pikëpresje. Për shembull: program Shuma; - një program i quajtur Summa. Por kjo pjesë e kodit, e quajtur titulli i programit, nuk ka nevojë të shkruhet - është e pranishme vetëm për qartësi dhe tregon se çfarë problemi zgjidh programi i caktuar. Këtu kemi përdorur fjalën "kod" - ky është emri i regjistrimit tekstual të programit.

✎ 2) integer - në anglisht do të thotë "integer" (ose thjesht "integer") dhe përdoret në Pascal për të treguar numra të plotë 32-bit (8 bytes) me diapazonin [-2147483648, 2147483647]. Se çfarë nënkuptojnë këto shifra të mëdha, do ta analizojmë më vonë.

✎ 3) real - nga anglishtja "e vërtetë", "reale", "reale", "reale". Në gjuhën Pascal, ky term tregon numra realë nga diapazoni [-1,8 ∙ 10 308, 1,8 ∙ 10 308]. Këta janë numra shumë të mëdhenj, por shfaqen 15 - 16 shifra domethënëse. Meqë ra fjala, llojet e të dhënave të plota dhe reale në mjedisin e programimit PascalABC.Net theksohen gjithmonë automatikisht me blu.

✎ 4) const - analog i anglishtes. "Constant" që do të thotë "konstante", "konstante". Në Pascal, është një sasi që nuk mund të ndryshohet. Është shkruar kështu:


Kjo hyrje duhet të perceptohet ashtu siç është shkruar: numri N është 12, S është 5, "pi" është 3.14 (si në matematikë, në Pascal përdoret vetëm një pikë në vend të presjes). Në rreshtin e fundit, ne përdorëm një prerje të dyfishtë (dy prerje përpara) e ndjekur nga teksti - kështu shkruhen komentet në Pascal, dhe programi nuk i pranon ato. Gjithçka që fillon me një prerje të dyfishtë dhe deri në fund të rreshtit është një koment që shkruhet për të shpjeguar programin dhe gjithmonë theksohet me një ngjyrë tjetër (në PascalABC.Net është jeshile, në Turbo Pascal ky lloj komenti është nuk përdoret). Ekziston një lloj tjetër komenti - ky (teksti i mbyllur në kllapa kaçurrelë, si dhe këtu, i theksuar gjithashtu në të gjelbër). Ky lloj komenti mund të veprojë disa rreshta me radhë - nga fillimi i kllapave deri në mbylljen e tij, dhe gjithçka që është në mes të një ndërtimi të tillë nuk perceptohet nga përpiluesi si kod dhe thjesht anashkalohet.

Në fakt, formati i regjistrimit konst pak më e vështirë. Sipas rregullave, duhej të shkruanim:

1 2 3 4 konst N: tipi numër i plotë;

Përshkrim:

")" onmouseout = "toolTip ()"> numër i plotë
= 12 ; // numri N - lloji i numrit të plotë S: tipi numër i plotë;

Përshkrim:
Përfaqëson një numër të plotë të nënshkruar 32-bit.

Gama e vlerave: -2 147 483 648 .. 2 147 483 647")" onmouseout = "toolTip ()"> numër i plotë
= 5 ; // numri S - lloji i numrit të plotë pi: lloji real;

Përshkrim:
Përfaqëson një numër me pikë lundruese me saktësi të dyfishtë.

Madhësia: 8 bajt
Numri i shifrave domethënëse: 15 - 16
Gama e vlerave: -1,8 ∙ 10 308 .. 1,8 ∙ 10 308
")" onmouseout = "toolTip ()"> e vërtetë
= 3.14 ; // numri "pi" - real

Pas deklarimit të secilës vlerë, tregohet lloji i saj dhe më pas caktohet një vlerë. Por hyrja e mëparshme është gjithashtu e saktë, pasi përpiluesi Pascal është konfiguruar në mënyrë që të zbulojë automatikisht llojin e konstantës. Por e njëjta gjë nuk mund të thuhet për llojin tjetër të numrave - variablat.

✎ 5) var - vjen nga anglishtja. "Variable" (ose "e paqëndrueshme"), që në Pascal do të thotë një vlerë që gjatë programit mund të ndryshojë vlerën e saj. Është shkruar kështu:


Siç mund ta shihni nga hyrja, nuk ka asnjë shenjë "=" - variablat e të njëjtit lloj rillogariten (ndahen me presje) dhe vetëm lloji tregohet pas dy pikave. Variablat N, m (numra të plotë) dhe Q, r, t (real) në program mund të ndryshojnë vlerat brenda numrit të plotë dhe real, përkatësisht. Një shënim tjetër: përshkrimi i variablave vjen gjithmonë pas përshkrimit të konstanteve (konstantave) - fillimisht vjen ndërtimi const, dhe më pas var.

✎ 6) Fillim - përkthyer nga anglishtja do të thotë "për të filluar" dhe Pascal do të thotë fillimi i programit kryesor në të cilin shkruhen komandat (operatorët). Pas fjalës fillojnë pa pikëpresje.

✎ 7) fund - në anglisht. "Fund", dhe në gjuhën Pascal do të thotë e njëjta gjë (fundi i programit). Pas fjalës së fundit fund ka gjithmonë një pikë. Ne kemi theksuar fjalën "e fundit" për shkak të përdorimit të konstruksionit fillimi - mbarimi mundësisht në një rast më shumë: këto janë të ashtuquajturat kllapa operatori, të cilat përdoren për të kombinuar disa operacione nën një operator. Por më shumë për këtë më vonë. Kështu, programi kryesor do të duket si ky:

1 2 3 4 5 6 fillojnë < оператор 1 > ; < оператор 2 > ; . . . . . . . < оператор N > ; fund.

Këtu operatorët në trupin e programit janë komanda të ndryshme për përpiluesin.

✎ 8) shkruaj - në anglisht do të thotë "të shkruash". Ky operator shfaq tekstin e vendosur në të, për këtë arsye quhet operatori i daljes. Teksti i vendosur në të është theksuar me blu dhe shkruhet kështu:

Shkruaj ( "ky tekst shfaqet");

Mesazhi në kllapa dhe thonjëza do të shfaqet në dritaren e konsolës (vetëm në kllapa pa thonjëza është e pamundur). Pas ekzekutimit të kësaj deklarate, ne do të shohim në ekran:

ky tekst shfaqet në ekran

Në këtë formë, operatori i shkrimit përdoret në rastin kur është e nevojshme të tregohet një sugjerim, shpjegim, koment, etj. Dhe nga nëse është gjithashtu e nevojshme të shfaqet një vlerë numerike, le të themi, S = 50 sq. m, atëherë përdoret formati:

Shkruaj (, S);

Si rezultat, marrim rezultatin në ekran:

Madhësia e zonës është: S = 50

Dhe nëse është e nevojshme të shfaqen njësitë e matjes, duhet të futni përsëri tekstin në thonjëza pas S:

Shkruaj ( "Sipërfaqja është e barabartë me: S =", S, "sq. M");

Pas ekzekutimit të deklaratës së fundit të daljes, ne e marrim daljen në ekran:

Madhësia e sipërfaqes është: S = 50 sq.m

✎ 9) writeln është e njëjtë me shkrimin, por pas ekzekutimit kursori do të zhvendoset në rreshtin tjetër.

✎ 10) lexuar - përkthyer nga anglishtja do të thotë "lexo", prandaj leximi quhet operatori i leximit, ose futja e të dhënave. Shkruhet si i lexuar (N), që do të thotë se duhet të futni vlerën N, ku N është çdo numër, tekst ose çdo lloj ndryshoreje tjetër. Për shembull, nëse duhet të shkruani moshën e një personi që është 32 vjeç, ne mund ta shkruajmë kështu:


Në rreshtin e parë të këtij kodi, programi shfaq pyetjen " Cila është mosha juaj?"Dhe zhvendos kursorin në rreshtin tjetër (që përfundon me ln); në rreshtin e dytë shtypim "Viti =" (në fillim me një hapësirë); atëherë shohim operatorin readln (Viti), që nënkupton nevojën për të futur moshën Viti (numri 32); Së fundi, shfaqim mesazhet "Mosha ime", "32" dhe "Vitet". "Nje nga nje. Ju duhet të mbani një sy të ngushtë në hapësirat. Si rezultat i ekzekutimit të këtij kodi, do të marrim mesazhin:

Cila është mosha juaj?
Viti = 32
Mosha ime është 32

✎ 11) readln - njësoj si leximi, vetëm me rreshtin e ri. Në të vërtetë, në shembullin e mësipërm, pas futjes së numrit Viti, ne shkruajmë vetëm në rreshtin tjetër: " Mosha ime është 32».

Kjo është e gjitha për tani. Në faqen tjetër do të shkruajmë programin e parë, dhe në programimin Pascal këta do të jenë tanët

Ashtu si me deklaratat e daljes, deklaratat read dhe readln janë deklarata të integruara të thirrjes. procedurat e hyrjes së informacionit.

Operatorët read (lexo) dhe readln, që vijnë nga dy fjalët angleze read dhe line (string) përdoren në programe për të futur informacion në kujtesën e kompjuterit dhe " lexime"vlerat e një ndryshoreje.

Le të shqyrtojmë punën e këtyre operatorëve dhe procedurat për futjen e informacionit.

Programi ynë ka një rutinë leximi (a). Gjatë ekzekutimit të programit, kur ndeshet me deklaratën readln, kompjuteri do të ndalojë duke pritur që informacioni të futet. Pasi të fusim vlerën e ndryshores a - 16 nga tastiera, kompjuteri do t'ia caktojë këtë vlerë ndryshores a, d.m.th. do ta dërgojë atë në vendndodhjen e memories a dhe do të vazhdojë ekzekutimin e programit. Ne e quajmë këtë proces " duke lexuar"vlerat e një ndryshoreje.

Pra, procedurat read dhe readln "lexojnë" vlerat e variablave dhe ua caktojnë ato variablave që janë shkruar në to.

Mund të ketë disa variabla të tillë, atëherë ato shkruhen në këta operatorë të ndarë me presje, për shembull:

lexo (a, b, c, n, g, j, i), lexoln (e, f, k, p, d) etj.

Cili është ndryshimi midis procedurave të leximit dhe leximit?

Procedura e leximit do të kërkojë pas vetes hyrjen ose daljen e informacionit në një rresht, dhe procedura readln bën të mundur pas vetes futjen dhe nxjerrjen e informacionit nga fillimi i një rreshti të ri.

Për shembull:

Në program: shkruani ("Futni vlerat e a dhe b"); lexoni (a, b);

shkruani ("Futja e informacionit në një rresht");

Gjatë ekzekutimit të kësaj pjese të programit, gjithçka që është shkruar në deklaratën e parë të shkrimit do të shfaqet në ekran, më pas kursori do të jetë në të njëjtën linjë dhe kompjuteri do të presë që vlerat e a dhe b të jenë hyri. Le të futim vlerat e tyre - 2 dhe 3, duke i ndarë ato me një hapësirë ​​ose, me fjalë të tjera, përmes një hapësire. Pas kësaj, informacioni i shkruar në deklaratën tjetër të shkrimit do të shfaqet në të njëjtën rresht.

Në ekran:

Futni vlerat për a dhe b 2 3 Futni informacionin në një rresht

Në një program:

writeln ("Fut vlerat a, b dhe c); readln (a, b, c);

writeln ("Hyrja dhe dalja e informacionit nga fillimi i rreshtit");

Në ekran:

Futni vlerat a, b dhe c

Hyrja dhe dalja e informacionit nga fillimi i një rreshti

Veprimet aritmetike me numra të plotë. Ndryshoret me numra të plotë. Lloji i vërtetë

Në gjuhën Pascal përdoren numra të plotë, të cilët përfshijnë të gjithë numrat natyrorë të formuar në procesin e numërimit të objekteve: 1, 2, 3, 4, 5, 6, ...; numrat negativë: ..., -6, -5, -4, -3, -2, -1 dhe numri zero: 0. Numrat e plotë formojnë seritë e mëposhtme:

6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, ...

Pascal pranon një sërë numrash të plotë nga -32768 në 32767.

Variablat që marrin vlera të plota shkruhen në seksionin e përshkrimit me llojin e numrit të plotë të specifikuar.

Për shembull: var a, b, c, a1, b34, nomb: integer;

Vlerat e një lloji të ndryshëm nga këto variabla në një program nuk mund të caktohet.

Veprimet aritmetike me numra të plotë dhe ndryshore të plota në Pascal

Shenja "_" do të thotë një hapësirë. Kërkohen hapësira ndërmjet emrave të variablave dhe emrit të operacionit (div). (Vjen nga ndarja angleze - division).

Mbetja e një pjesëtuar me b. a_mod_b

Unë mendoj se shumë do të jenë të interesuar për të)))

Lexoni dhe lexoni deklaratat

Udhëzimi i leximit ka për qëllim futjen e vlerave të variablave (të dhënat fillestare) nga tastiera. Në përgjithësi, udhëzimi duket si ky:

lexo (Var1, Var2, ... VarN)

ku variabla është emri i një variabli vlera e së cilës duhet të futet nga tastiera gjatë ekzekutimit të programit.

Këtu janë shembuj të shkrimit të një deklarate të lexuar:

Lexo nje); lexo (Cena, Kol);

Kur ekzekutohet deklarata e leximit, ndodh si më poshtë:

1. Programi ndalon punën e tij dhe pret derisa të dhënat e kërkuara të shtypen në tastierë dhe të shtypet tasti .

Riparim 2 kompjuterësh Deria laptop në stavropol ITGen. ... Pasi të keni shtypur tastin vlera e futur i caktohet variablit të emërtuar në deklaratë.

Për shembull, si rezultat i ekzekutimit të instruksionit

lexo (Temperat);

dhe duke shtypur rreshtin 21, vlera e ndryshores Temperat do të jetë numri 21.

Një deklaratë leximi ju lejon të merrni vlerat e disa variablave. Në këtë rast, numrat e futur duhet të shtypen në një rresht dhe të ndahen me hapësira. Për shembull, nëse lloji i variablave a, b dhe c është real, atëherë si rezultat i ekzekutimit të instruksionit lexohet (a, b, c); dhe vargun e hyrjes së tastierës:

4.5 23 0.17

variablat do të kenë vlerat e mëposhtme:

a = 4,5; b = 23,0; c = 0,17.

Nëse rreshti përmban më shumë numra sesa variablat e specifikuar në deklaratën e leximit, atëherë pjesa tjetër e rreshtit do të përpunohet nga deklarata e ardhshme e leximit. Për shembull, si rezultat i ekzekutimit të udhëzimeve

lexoni (A, B); lexo (C);

dhe vargun e hyrjes së tastierës

10 25 18

variablat do të marrin këto vlera: A = 10, B = 25. Lexoni udhëzimin (C); do t'i caktojë variablit me vlerën 18.

Instruksioni readln ndryshon nga udhëzimi i leximit në atë që pas zgjedhjes së numrit tjetër nga rreshti i futur nga tastiera dhe caktimit të tij në variablin e fundit nga lista e instruksionit të leximit, pjesa tjetër e rreshtit humbet dhe leximi tjetër ose udhëzimi i leximit do të kërkojë hyrje të re.

Për shembull, si rezultat i ekzekutimit të instruksionit

lexim (A, B); lexo (C);

dhe shtypja e vargut

10 25 18

variablat do të marrin këto vlera: A = 10, B = 25. Pas kësaj, programi do të presë që të futet një numër i ri për t'ia caktuar variablit c.

Çdo udhëzim leximi ose leximi duhet të paraprihet nga një instruksion shkrimi për t'i treguar përdoruesit se çfarë të dhënash pret programi prej tij. Për shembull, një fragment i programit për llogaritjen e kostos së një blerjeje mund të duket si:

writeln ("Fut të dhënat fillestare.");

Shkruani ("Çmimi i produktit:");

Readln (Сenа);

shkruani ("Sasia në grup:");

Readln (Kol);

shkruani ("Zbritje:");

readln (Skidka);

Nëse lloji i të dhënave të futura nga tastiera nuk përputhet ose nuk mund të konvertohet në llojin e variablave emrat e të cilëve janë specifikuar në instruksionin e leximit (leximi), programi prishet (udhëzimet pas leximit nuk ekzekutohen) dhe shfaqet një mesazh. në ekran për gabimin.

Në seksionin për pyetjen Pse Pascal ka lexuar dhe lexuarln, nëse read përkthen gjithashtu një rresht, megjithëse në teori nuk duhet? dhënë nga autori Aleksandër pergjigja me e mire eshte readln - merr një vlerë nga buferi i hyrjes në një parametër, lan të gjithë buferin e hyrjes së tastierës
dhe lexo - merr vlerën nga buferi i hyrjes në parametër dhe nuk e pastron atë në bufer, por e lë vlerën !! !
furnizimi automatik i linjës kur shkruani - kudo
dmth readln është hyrje e sigurt
lexim- hyrje e pasigurt
shembull:
var
a, b: numër i plotë;
fillojnë
Lexo nje); (përdoruesi i futur: 4, 5 a = 4)
(në buferin e hyrjes numri 5!!}
lexoni (b); (këtu ai futi një numër: 6, por b = 5)
(numri 6 mbetet në buferin e hyrjes!!}
---
readln (a); (përdoruesi i futur: 4, 5; a = 4)
(buferi i hyrjes është i qartë!!}
readln (a); (përdoruesi ka futur numrin 6 dhe b = 6)
(buferi i hyrjes është i qartë!!}
lexoni (b);
fund.
Përkundrazi, nuk ka zbulim automatik të llojit të vlerës së hyrjes, gjithçka përcaktohet nga konventat në specifikuesin e formatit.

Përgjigje nga Yoali-Mali[guru]
Mund të shpjegohet në një mënyrë më të thjeshtë, pa ndonjë problem të veçantë:
Kur ekzekutohet procedura e leximit, vlera e të dhënave të ardhshme lexohet nga e njëjta rresht, dhe kur ekzekutohet procedura readln, vlera e të dhënave të ardhshme lexohet nga një rresht i ri.
Prandaj, operatori Readln (b1, b2, ... bn); siguron futjen e të dhënave në BAR.
Pas futjes së çdo ndryshoreje b1, b2, ..bn, kursori kalon në fillim të një rreshti të ri.
Operatori i leximit (b1, b2, ... bn); siguron futjen e të dhënave në LINE


Përgjigje nga VT-107 FIT[guru]
Këtu diçka Dmitry shkoi keq, por jo e vërtetë. Dhe për një tampon plotësisht të pastruar dhe të papastër dhe për sigurinë. Edhe Saliu nuk u përgjigj saktë. Nuk ka kolona dhe rreshta, rregulla krejtësisht të ndryshme.
Së pari, këto procedura nuk funksionojnë vetëm me hyrjen e konsolës, kështu që nevojiten dy funksione.
procedura Lexoni (F, V1 [, V2, ... Vn]);
lexon të gjitha V1..Vn nga rryma (saktësisht n parametra), të gjitha të dhënat e lexuara do të fshihen. Gjithçka që do të ndodhë pas këtyre të dhënave do të mbetet e pandryshuar.
Leximi i një rreshti do të lexojë gjithçka deri në një rresht të ri ose në fund të skedarit. Thirrjet e mëvonshme për të lexuar do të kthejnë një varg bosh. Dhe karakteri i linjës së re nuk do të hiqet nga transmetimi.
Nëse lexoni një karakter, atëherë në varësi të cilësimeve, karakteri i linjës së re mund të lexohet si char (26)
Gjatë leximit të numrave, të gjitha hapësirat, skedat, ndërprerjet e rreshtave anashkalohen. Dhe leximi tjetër do të fillojë me karakterin pas numrit të lexuar. Përsëri, personazhet e panevojshëm mund të anashkalohen.
procedura ReadLn ([var F: Tekst;] V1 [, V2, ..Vn]);
lexon nga transmetimi V1, Vn (d.m.th., funksionon si i lexuar) dhe më pas kalon të gjithë karakteret deri dhe duke përfshirë rreshtin e ri. Të gjithë karakteret pas një ndërprerjeje rreshti do të mbeten të pandryshuara.
Kalimi në një linjë të re kryhet sepse shtypni Enter në tastierë.
Në lidhje me sigurinë është shumë e largët. Këto janë funksione me qëllime të ndryshme. Çdo përdorim i gabuar i tyre nuk është i sigurt, çdo i saktë dhe përkatësisht i sigurt.

Artikujt kryesorë të lidhur