Jak fungují příkazy čtení a zápisu. operátory read a readln

Instrukce čtení je určena pro zadávání proměnných hodnot (počátečních dat) z klávesnice. V obecný pohled návod vypadá takto:

read(Proměnná!, Proměnná2, ... ProměnnáW kde proměnné je název proměnné, jejíž hodnota musí být zadána z klávesnice během provádění programu.

Zde jsou příklady psaní instrukce pro čtení:

Číst); read(Cena,Kol);

Po provedení příkazu read se stane následující:

1. Program pozastaví svou práci a čeká, dokud nebudou na klávesnici napsána požadovaná data a stisknuta klávesa .

2. Po stisknutí tlačítka zadaná hodnota je přiřazena proměnné, jejíž název je uveden ve výpisu.

Například v důsledku provedení instrukce

Číst(Tempérât);

a zadáním řádku 21 z klávesnice bude hodnota proměnné Tempérât číslo 21.

Jediný příkaz čtení může načíst hodnoty více proměnných. V tomto případě je třeba zadaná čísla napsat na jeden řádek a oddělit je mezerami. Pokud je například typ proměnných a, b a c reálný, pak v důsledku provedení instrukce přečteme (a, b, c); a zadejte řádek z klávesnice:

4.5 23 0.17

proměnné budou mít následující hodnoty: a = 4,5; b = 23, o; c = 0,17.

Pokud je na řádku více čísel, než je proměnných zadaných v příkazu read, bude zbytek řádku zpracován dalším příkazem read. Například v důsledku provedení pokynů:

Přečtěte si (a, B); read(C);

a vstupní řetězec klávesnice

10 25 18

proměnné obdrží následující hodnoty: a = 10, b = 25. Přečtěte si instrukci (C); přiřadí proměnné c hodnotu 18.

Instrukce readln se od instrukce readln liší tím, že po výběru dalšího čísla z řetězce zadaného z klávesnice a jeho přiřazení k poslední proměnné ze seznamu instrukce readln se zbytek řádku ztratí a další čtení, resp. instrukce readln bude vyžadovat nový vstup.

Například v důsledku provedení instrukce:

Readln (a, B); read(C);

a zadáním řádku z klávesnice

10 25 18

proměnné obdrží následující hodnoty: a = ω, b = 25. Poté program počká na zadání nového čísla, aby jej přiřadil proměnné c.

Každé instrukci read nebo readln by měla předcházet instrukce zápisu, která uživateli řekne, jaká data od něj program očekává. Fragment programu pro výpočet ceny nákupu může například vypadat takto:

Writeln("Zadejte počáteční data."); write("Cena produktu:"); readln(Sepa); write("Množství v dávce:"); readln(Kol); napište("Sleva:"); readln(Skidka);

Pokud se typ dat zadávaných z klávesnice neshoduje nebo je nelze přetypovat na typ proměnných, jejichž jména jsou uvedena v příkazu read (readln), program spadne (neprovedou se instrukce po čtení) a zobrazí se hlášení o chybě .

Autor Alexander položil otázku v sekci Jiné jazyky a technologie

Proč Pascal četl a readln, jestliže read také překládá řádek, ačkoli teoreticky by neměl? a dostal nejlepší odpověď

Odpověď od Skipy _[guru]
readln - převezme hodnotu ze vstupní vyrovnávací paměti do parametru a vymaže celou vstupní vyrovnávací paměť klávesnice
a read - převezme hodnotu ze vstupního bufferu do parametru a nevymaže ji do bufferu, ale ponechá hodnotu!! !
Automatický posun řádku při psaní – všude
tj. readln je bezpečný vstup
čtení - nebezpečný vstup
příklad:
var
a,b: celé číslo;
začít
číst); (zadáno uživatelem: 4, 5 a = 4)
(ve vstupním bufferu je číslo 5!!}
read(b); (zde zadal číslo: 6, ale b = 5)
(číslo 6 zůstává ve vstupní vyrovnávací paměti!!}
---
readln(a);(zadáno uživatelem: 4, 5; a = 4)
(vstupní vyrovnávací paměť je čistá!!}
readln(a);(uživatel zadal číslo 6 a b = 6)
(vstupní vyrovnávací paměť je čistá!!}
readln(b);
konec.
Naopak neexistuje automatická detekce typ vstupní hodnoty, vše je určeno symboly ve specifikátoru formátu.

Odpověď od Yoali-Mali[guru]
Dá se to vysvětlit jednodušeji, bez přílišného zmatku:
Po provedení procedury read se načte hodnota dalších dat ze stejného řádku a při provedení procedury readln se načte hodnota dalších dat z nového řádku.
Proto operátor Readln (b1,b2,...bn); poskytuje zadávání dat do SLOUPCE.
Po zadání každé proměnné b1, b2, ..bn se kurzor přesune na začátek nového řádku.
Operátor Read(b1,b2,...bn); poskytuje zadávání dat do LINE


Odpověď od VT-107 FIT[guru]
Tady byl Dmitry něčím zmaten, ale není to správné. A o zcela vyčištěném a nečištěném pufru a o bezpečnosti. Sali také odpověděl špatně. Neexistují žádné sloupce a řádky, úplně jiná pravidla.
Za prvé, tyto postupy nefungují pouze se vstupem z konzoly, takže jsou zapotřebí dvě funkce.
procedura Read(F, V1 [, V2,...Vn ]);
načte všechny V1..Vn ze streamu (přesně n parametrů), všechna načtená data budou smazána. Vše, co následuje po těchto datech, zůstane nezměněno.
Při čtení řádku se přečte vše až do nového řádku nebo konce souboru. Následná volání ke čtení vrátí prázdný řetězec. A znak nového řádku nebude ze streamu odstraněn.
Pokud čtete char, pak v závislosti na nastavení může být znak nového řádku přečten jako char(26)
Při čtení čísel se přeskakují všechny mezery, tabulátory a zalomení řádků. A další čtení začne se symbolem, který následuje za přečteným číslem. Opět mohou být přeskočeny nepotřebné znaky.
procedure ReadLn([ var F: Text; ] V1 [, V2, ..Vn ]);
čte z proudu V1, Vn (to znamená, že to funguje jako čtení) a pak přeskakuje všechny znaky až do nového řádku včetně. Všechny znaky po zalomení řádku zůstanou nezměněny.
K přechodu na nový řádek dojde, když v konzole stisknete klávesu Enter.
O bezpečnosti je to přitažené za vlasy. Jedná se o funkce s různými účely. Jakékoli nesprávné použití není bezpečné, jakékoli správné použití je odpovídajícím způsobem bezpečné.

4. Operátory Write a writeln. Výstupní procedury

Všimli jste si, že program používal operátory write a writeln. Anglické slovo write se překládá - psát a slovo writeln pochází jako zkratka dvou anglických slov write - psát a line - line.

Kromě operátorů write a writeln mluvíme o procedurách výstupu informací.

Co je to postup ?

Koncept procedury je jedním z hlavních Pascalových pojmů. Podprogram v jazyce BASIC je mu podobný.

Postup je určitá sekvence operátorů jazyka Pascal, která má jméno a je přístupná odkudkoli v hlavním programu zadáním jeho názvu.

Výše jsme hovořili o operátorech výstupu informací, i když v Pascalu na rozdíl od BASICu nejsou žádné operátory výstupu informací a prostřednictvím servisních slov write a writeln je umožněn přístup k Standard nebo vestavěný postup výstupu informací. Standardní postup nepotřebuje předběžný popis, je dostupný pro jakýkoli program, který obsahuje jeho volání. Proto volání write nebo writeln připomíná operátor PRINT - výstup informací v jazyce BASIC.

Rozdíl mezi výstupní operátor a apelovat na postup odnětí je, že název výstupní procedury, stejně jako jakákoli jiná procedura Pascal, není vyhrazeným slovem, a proto může uživatel napsat svou vlastní proceduru s názvem write nebo writeln. To se ale v praxi používá velmi zřídka.

Operátory write a writeln jsou tedy operátory pro přístup k vestavěným procedurám výstupu informací.

Oba tyto postupy zobrazují informace na obrazovce, pokud jsou tyto informace obsaženy ve formě hodnot proměnných, pak stačí do příkazů write nebo writeln napsat názvy těchto proměnných do závorek, např.: write(a), writeln(f). Pokud je takových proměnných více, pak se zapisují oddělené čárkami, například: write(a, b, c, d), writeln(e,f, g, h).

Pokud jsou informací slova, věty, části slov nebo symboly, pak jsou obsaženy mezi znaky "; " "; - apostrof, Například:

write("Zadejte délku cesty"),

writeln("Hodnota rychlosti je"

Je možný současný výstup jak symbolických informací, tak hodnot proměnných, pak jsou v příkazu write nebo writeln odděleny čárkami, například:

write("Hodnota teploty je ", t),

writeln("Rychlost je ", v," "v době pohybu", t).

Všimněte si, že na konci slov je před apostrofem mezera.

Proč se to dělá?? Následující číselné informace by samozřejmě měly být odděleny od slov mezerou.

co je rozdíl v práci write a writeln procedur?

Procedura zápisu vyžaduje následující vstupní nebo výstupní procedury pro zadávání nebo výstup informací na stejném řádku (na stejném řádku).

Pokud program specifikuje příkaz write a po něm následuje další příkaz write nebo writeln, pak informace, které vydávají, budou připojeny k informačnímu řádku prvního příkazu write.

Například: write("Dnes a zítra bude ");

napište("víkendy");

Na obrazovce se zobrazí:

Dnes a zítra budou dny volna

Mezera mezi slovem ";bude"; a ";víkend"; je opatřeno mezerou na konci prvního řádku. Pokud tam není, dojde k výstupu bezproblémově :

napište("Dnes a zítra bude");

napište("víkendy");

Dnes a zítra budou prázdniny

Několik dalších příkladů: t:=20;

write("Doba pohybu je ");

write("sekundy");

Doba pohybu je 20 sekund

write("Součet čísel je ");

write(" a produkt ");

Součet čísel je 30 a součin je 216

Postup writelnposkytuje následující vstupní nebo výstupní procedury pro zadávání nebo výstup informací od začátku každého nového řádku.

V programu:

writeln("Dnes v noci, dnes v noci, dnes v noci");

writeln("Když piloti, upřímně řečeno, nemají co dělat");

Na obrazovce se zobrazí:

Dnes v noci, dnes v noci, dnes v noci,

Když piloti, upřímně řečeno, nemají co dělat

V programu:

writeln("Součet a rozdíl čísel se rovnají:");

Na obrazovce:

Součet a rozdíl čísel se rovnají:

5. Operátory čtení a čtení. Postupy pro zadávání informací

Stejně jako u operátorů výstupu informací jsou operátory read a reeadln operátory pro přístup k vestavěným postupy zadávání informací.

Operátory read (read) a readln, což pochází ze dvou anglických slov read (read) a line (line), se v programech používají pro zadávání informací do paměti počítače a "; čtení"; hodnoty do proměnné.

Podívejme se na práci těchto operátorů a postupy zadávání informací.

Náš program má proceduru readln(a). Při spouštění programu se počítač setká s příkazem readln a čeká na vstup. Poté, co z klávesnice zadáme hodnotu proměnné a - 16, počítač tuto hodnotu přiřadí proměnné a, tzn. odešle jej do paměťového umístění s názvem A a bude pokračovat ve spouštění programu. Tento proces nazýváme "; čtení"; hodnoty do proměnné.

Takže procedury read a readln ";read"; hodnoty proměnných a přiřadit je k proměnným, které jsou v nich zapsány.

Takových proměnných může být několik, pak se zapisují těmito operátory oddělenými čárkami, například:

read(a, b, c, n, g, j, i), readln(e, f, k, p, d) atd.

Jaký je rozdíl mezi prací procedur read a readln?

Procedura čtení bude vyžadovat vstup nebo výstup informací na jednom řádku za sebou a procedura readln vám umožňuje zadávat a vydávat informace za sebou od začátku nového řádku.

Například:

V programu: write("Zadejte hodnoty a a b"); read(a, b);

write("Zadejte informace na jeden řádek");

Po provedení této části programu se na obrazovce zobrazí vše napsané v prvním příkazu zápisu, poté bude kurzor umístěn na stejném řádku a počítač bude čekat na zadání hodnot a a b. . Zadejte jejich hodnoty - 2 a 3, oddělte je mezerou nebo jinými slovy oddělte mezerou. Poté se na stejném řádku zobrazí informace zapsané v dalším příkazu write.

Na obrazovce:

Zadejte hodnoty a a b 2 3 Zadejte informace na jeden řádek

V programu:

writeln("Zadejte hodnoty a, b a c); readln(a, b, c);

writeln("Vstupní a výstupní informace od začátku řádku");

Na obrazovce:

Zadejte hodnoty a, b a c

Zadávání a výstup informací od začátku řádku

Kapitola 2. Zadávání a spouštění programů

1. V integrovaném prostředí Turbo Pascal 7.0.

Po spuštění Turbo Pascalu se na obrazovce objeví následující shell (viz obr. 3):

Rýže. 3

Horní řádek okna, které se otevře, obsahuje "; Jídelní lístek"; možné provozní režimy Turbo Pascal, nižší - stručná informace o účelu hlavních funkční klávesy. Zbytek obrazovky patří oknu text editor, ohraničený dvojitým rámečkem a určený pro zadávání a úpravu programového textu.

Když vstupujeme do programu, pracujeme s textovým editorem zabudovaným do prostředí Turbo Pascal. Níže se proto seznámíme s prací editoru a jeho hlavními příkazy.

Známkou toho, že je prostředí ve stavu úprav, je přítomnost kurzoru v okně editoru – malá blikající pomlčka.

Chcete-li vytvořit text programu, musíte tento text zadat pomocí klávesnice, podobně jako při psaní textu na psacím stroji. Po vyplnění dalšího řádku stiskněte B>Enter> "; Vstupte"; pro přesun kurzoru na další řádek (kurzor vždy ukazuje místo na obrazovce, kde bude umístěn další zadaný znak programu).

Okno editoru napodobuje dlouhý a poměrně široký list papíru, jehož část je viditelná v okně obrazovky. Pokud kurzor dosáhne spodního okraje, okno editoru se posouvá: jeho obsah se posune o řádek nahoru a dole se objeví nový řádek ";". prostěradlo";. Nejdelší délka řádku v Turbo Pascalu je 126 znaků.

Okno lze posunout vzhledem k listu pomocí následujících kláves:

PgUp- stránka nahoru ( PageUP- stránka nahoru);

PgDn- stránka dolů ( STRÁNKA Dolů N- stránka dolů);

Domov- na začátek aktuálního řádku ( DOMOV- Domov);

Konec- na konec aktuálního řádku ( KONEC- konec);

Ctrl-PgUp- na začátek textu;

Ctrl-PgDn- do konce textu.

Kurzorové klávesy" kurzor“ lze přesunout tak, aby se vešel textu na obrazovku (poznámka, pouze text!). Podle "; čistý "; pokud není obrazovka pokryta nápisem, kurzor se nepohybuje!

Pokud při zadávání dalšího znaku uděláte chybu, můžete jej smazat pomocí tlačítka označeného šipkou doleva (klávesa Backspace- B>Zpět>, nachází se vpravo a nahoře v oblasti hlavních alfanumerických kláves nad klávesou B>Enter> - “ Vstupte"). B>Del klíč ete> (Vymazat - vymazat, smazat) vymaže znak, ke kterému tento moment označuje kurzor a příkaz Ctrl-Y označuje celý řádek, na kterém je kurzor umístěn. Je třeba si uvědomit, že editor Turbo Pascal vkládá na konec každého řádku oddělovací znak, který je na obrazovce neviditelný. Tento znak se vloží klávesou B>Enter> a vymaže se klávesou B>Backspace> nebo B>Del ete> . Vložením/vymazáním oddělovače můžete "; střih”/";lepidlo"; řádky.

Komu "; střih"; přesuňte kurzor na požadované místo a stiskněte klávesu B>Enter> na "; lepidlo"; sousední řádky, musíte umístit kurzor na konec prvního řádku a stisknout klávesu B>Del ete> nebo umístěte kurzor na začátek dalšího řádku a stiskněte klávesu B>Backspace>.

Režim vkládání

Normálním provozním režimem editoru je režim vkládání, ve kterém je každý nově zadaný znak jako "; pomazánky"; text na obrazovce, posunující zbytek řádku doprava. Vezměte prosím na vědomí, že "; řezání"; a následné vkládání chybějících znaků je možné pouze v tomto režimu.

Příklady "; řezání";, ";lepení"; řádky a vkládání znaků do textu.

Předpokládejme, že z nějakého důvodu je na obrazovce přijat následující záznam:

Program Serg; var

a, b, c: celé číslo;

Pokud mluvíme o estetické stránce psaní programu, pak je žádoucí, aby popis sekce, která začíná slovem var, začínal červenou čárou. Chcete-li provést změny v textu, umístěte kurzor na písmeno proti a stiskněte klávesu B>Enter>, zatímco část textu za kurzorem a pod ním se přesune na další řádek, dostaneme:

Program Serg;

a, b, c: celé číslo;

Pro větší krásu a přehlednost bez pohybu kurzoru, ale ponechání na písmenu proti, stiskněte několikrát klávesu B>Mezerník>. Celý řádek se přesune doprava a záznam bude vypadat takto:

Program Serg;

a, b, c: celé číslo;

Předpokládejme jinou situaci, kdy část textu "; explodoval"; a my to potřebujeme"; lepidlo“, například to dopadlo takto:

write("Zadejte počet let, které

roj by byl Seryozha ";);

Umístěte kurzor na začátek druhého řádku před písmeno ";р"; a stiskněte klávesu B>Zpět>, dostaneme:

write("Zadejte počet let, kolik by měl být Seryozha");

Můžete to udělat jinak, umístěte kurzor na konec prvního řádku za písmeno ";o"; a několikrát stiskněte klávesu B>Delete> ";vytáhněte"; spodní řádek nahoru.

Pomocí kláves B>Zpět> a B>Del ete> Umět "; sjednotit"; ";roztržený” řádek. Například v této situaci:

write("Zadejte počet let, kolik by měl být Seryozha");

Umístěte kurzor před písmeno ";d"; a několikrát stiskněte klávesu B>Backspace>, dokud se nezobrazí slovo „;Enter“; přijme požadovanou konstrukci nebo umístěním kurzoru za písmeno „e“; Stiskněte několikrát klávesu B>Delete>.

Vkládání chybějících znaků je ještě jednodušší.

Například vám uniklo několik písmen:

wrte("Vy jste počet let, kterými by byl Serge");

V prvním slově chybí písmeno ";i" a ve slově ";Enter"; ve slově ";Seryozha" chybí dvě písmena ";di"; písmena ";er";.

Umístěte kurzor na písmeno ";t"; v prvním slově a na klávesnici zadejte „;i“, okamžitě se vloží na správné místo. Dále umístěte kurzor na písmeno ";t"; ve slově ";Vvete"; a na klávesnici zadejte „di“, slovo „; se rozestoupí"; a písmena ";di"; zapadnou na místo. Umístěte kurzor na ";e"; ve slově ";Sezha"; a napište ";er";,

Režim prolnutí

Editor může také pracovat v režimu překrývání nových znaků na stávající starý text: v tomto režimu nový znak nahradí znak, na který ukazuje kurzor, a zbytek řádku napravo od kurzoru není posunut do že jo. Chcete-li přepnout do režimu prolnutí, stiskněte klávesu B>Ins ert> (Insert- vložit), pokud toto tlačítko stisknete znovu, režim vkládání se znovu obnoví. Náznakem toho, v jakém režimu editor pracuje, je tvar kurzoru: v režimu vkládání vypadá kurzor jako blikající podtržítko a v režimu překrývání je to velký blikající obdélník, který zakrývá celý znak.

Režim automatického odsazení

Další funkcí editoru je, že obvykle funguje v režimu automatického odsazení. V tomto režimu začíná každý nový řádek na stejné pozici obrazovky jako předchozí.

Režim automatického odsazení podporuje dobrý styl návrhu textů programu: odsazení od levého okraje se zvýrazní různých operátorů a učinit program vizuálnějším.

Režim automatického odsazení můžete zrušit příkazem Ctrl-O I(se stisknutou klávesou Ctrl je nejprve stisknuto tlačítko Ó, poté klíč Ó klávesa se uvolní a stiskne ), opakujte příkaz Ctrl-O I obnoví režim automatického odsazení.

Nejčastěji používané příkazy jsou uvedeny níže textový editor Turbo Pascal, kromě výše uvedených.

Editace příkazů

Backspace- B>Zpět> - vymazání znaku nalevo od kurzoru;

Del- vymazat znak, na který ukazuje kurzor;

Ctrl-Y- vymazat řádek, na kterém se nachází kurzor;

Vstupte- B>Enter> - vložte nový řádek, "; střih"; starý;

Ctrl-Q L- obnovit aktuální řádek (platí, pokud

kurzor neopustil upravený řádek).

Práce s blokem

Ctrl-K B- označit začátek bloku;

Ctrl-K Y- vymazat blok;

Ctrl-K V- přesunout blok;

Ctrl-K P- vytisknout blok;

Ctrl-K H- skrýt/zobrazit blok (zrušit zaškrtnutí);

Ctrl-K K- označit konec bloku;

Ctrl-K C- kopírovací blok;

Ctrl-K W- zapsat blok do souboru na disku;

Provádění programu

Po napsání programu jej můžete zkusit spustit.

Chcete-li to provést, stiskněte klávesy B>Ctrl>+ (podržte klávesu B>Ctrl> a stiskněte klávesu B>F9>). Stejnou operaci lze provést tak, že přejdete do hlavní nabídky, stisknete klávesu B>F10> a poté pohybem ukazatele vyberete možnost Běh a stiskněte klávesu B>Enter>.

Na obrazovce se otevře nabídka druhé úrovně spojená s touto možností. Nové menu je jako "; vypadává"; z horního řádku, proto se takové nabídce často říká rozbalovací nabídka. Obrazovka bude vypadat takto (viz obr. 4):

Rýže. 4

Nyní musíte najít možnost v nové nabídce BĚH(start) a stiskněte klávesu B>Enter>.

Pokud při zadávání textu nedošlo k chybě, po několika sekundách se obrázek na obrazovce změní. Turbo Pascal dává obrazovku k dispozici běžícímu programu uživatele. Tato obrazovka se nazývá okno programu.

V reakci na žádost:

Zadejte počet let, po které bude Seryozha, zadejte 16 a stiskněte B>Enter>.

Po dokončení běhu (provoz programu se často nazývá jeho běh) se na obrazovce opět objeví okno editoru s textem programu. Pokud jste nestihli vidět obrázek okna programu, stiskněte Alt-F5. V tomto případě okno editoru se schová a budete moci vidět výsledky programu. Chcete-li vrátit obrazovku do režimu přehrávání okna editoru, stiskněte libovolnou klávesu.

Můžete si usnadnit zobrazení výsledků programu na obrazovce. Chcete-li to provést, můžete otevřít druhé okno ve spodní části obrazovky.

Chcete-li to provést, stisknutím klávesy F10 přejděte do režimu výběru z hlavní nabídky a přesuňte ukazatel na možnost Ladit(debug) a stiskněte klávesu B>Enter> - na obrazovce se otevře nabídka druhé úrovně spojená s touto volbou. Obrazovka bude vypadat takto (viz obr. 5):


Rýže. 5

Najděte v nové nabídce možnost VÝSTUP, přesuňte na ni ukazatel a stiskněte B>Enter>.

V dolní části obrazovky se objeví druhé okno, které však již nezmizí.

Nyní se ujistěte, že se na obrazovce zobrazují dvě okna současně: znovu stiskněte klávesu F10, vyberte OKNO, stiskněte B>Enter>, přesuňte ukazatel na možnost DLAŽDICE(dlaždice) a stiskněte B>Enter>.

Pokud je vše provedeno správně, bude obrazovka vypadat takto (viz obr. 6):

Rýže. 6

Dvojitý rámeček ohraničující okno programu označuje, že toto konkrétní okno je aktuálně aktivní.

Aktivujeme okno editoru: stiskněte klávesu B>Alt> a bez jejího uvolnění stiskněte klávesu s číslem 1 (okno editoru je číslo 1, okno programu je číslo 2, tato čísla jsou zapsána vpravo nahoře rohy rámů). Nyní je vše připraveno pro další práci s programem.

První chyby a jejich náprava

1. Například za příkazem readln(a) není středník. Po spuštění programu se stisknutím kláves B>Ctrl>+B>F9> v horním řádku obrazovky objeví červeně napsaná zpráva:

Chyba 85: ";;"; očekávaný.

(Chyba 85: ";;"; chybí.)

Editor nastaví kurzor na další znak za chybějícím znakem, v našem příkladu na proměnnou b. Po stisknutí libovolné klávesy chybové hlášení zmizí a editor se přepne do režimu vkládání. Musíte přesunout kurzor na požadované místo, dát středník - „;“ a pokračovat v práci.

2. Proměnná se nezapisuje do popisu proměnných, ale je přítomna v programu, například proměnná C. Po spuštění programu se zobrazí následující zpráva:

Chyba 3: Neznámý identifikátor.

(Chyba 3: Neznámé ID.)

Kurzor bude umístěn na tuto proměnnou, v našem příkladu na proměnnou C. Chybu je třeba opravit, tzn. napsat proměnnou C přejděte do sekce popisy proměnných a pokračujte v práci.

3. Po operátorovi neběží žádná lhůta konec na konci programu. Zpráva kompilátoru bude vypadat takto:

Chyba 10: Neočekávaný konec souboru.

(Chyba 10: Neplatný konec souboru.),

kurzor bude umístěn na písmeno "; E"; ve slově "; konec";. Musíme to ukončit a spustit program znovu.

Zápis souboru na disk

Program byl tedy editován a spuštěn (posouván), nyní je potřeba jej zapsat na disk. K tomu můžete použít hlavní nabídku, ve které vyberte možnost "; Soubor"; (viz obr. 7). Posloupnost akcí je následující: 1) stiskněte klávesu F10 a přejděte do hlavní nabídky; 2) přesuňte ukazatel na možnost "; Soubor"; a stiskněte B>Enter>, otevře se druhá nabídka možností "; Soubor";:

Rýže. 7

Můžete vybrat možnost "; Uložit";. Zapíše obsah aktivního okna editoru do souboru na disku.

Pokud stisknete B>Enter>, prostředí se zeptá na název souboru, pokud nebyl nastaven a okno bylo spojeno s názvem NONAME00.PAS. Název můžete změnit nebo nechat stejný.

Tato volba se volá přímo z editoru klávesou B>F2>.

Můžete vybrat možnost ULOŽITTAK JAKO. Zapíše obsah aktivního okna editoru na diskový soubor pod jiným názvem.

Dialogové okno pro tuto volbu vypadá takto (viz obr. 8):

Rýže. 8

Do vstupního pole musíte napsat název souboru, do kterého se zkopíruje obsah aktivního okna editoru. Existující soubor můžete vybrat z pole výběru nebo z protokolu s možnostmi. V tomto případě, v závislosti na nastavení vašeho prostředí, bude starý obsah souboru zničen nebo uložen jako záložní kopie s příponou .BAK.

Záznam textu programu po řádcích

V Pascalu neexistují žádná pravidla pro rozdělení textu programu na řádky.

Chcete-li však napsat program, můžete nějaké dát

Je velmi důležité, aby byl text programu uspořádán přehledně, nejen kvůli kráse, ale (a to je hlavní!), aby se zabránilo chybám. (Je mnohem snazší najít chyby ve vizuálním textu.)

1. Každý výrok by měl být napsán na nový řádek, s výjimkou krátkých a smysluplně souvisejících výroků.

Například,

write ... readln ... - napsáno na jeden řádek, operátory krátkého přiřazení lze napsat na jeden řádek:

a:= 23; b:= 105; c:= -11,2.

2. Operátory stejné úrovně umístěné na různých linkách musí být seřízeny vertikálně, tzn. ve stejné vzdálenosti od levého okraje.

Napišme například posloupnost operátorů, abychom určili součet číslic třímístného čísla:

s:=a div 100;

d:=a div 10 mod 10;

e:=a mod 10;

Zde jsou si všechny operátory rovny, jdou za sebou sekvenčně, takže všechny začínají ze stejné vertikální pozice.

3. Operátory zahrnuté v jiném operátoru by měly být posunuty doprava o několik pozic (nejlépe rovnoměrně).

pokud...tak

4. Doporučuje se vertikálně zarovnat dvojice základních slov: začít A konec, se kterými jsme se již seznámili, a také slova, se kterými se seznámíme později: opakovat A až do, záznam A konec, pouzdro A konec.

Zde jsou některé z nejoblíbenějších možností umístění operátorů -li:

A) pokud...tak ...

jiný ...

b) pokud...tak ...

jiný...

PROTI) -li...

pak ...

jiný ...

G) -li ...

pak ...

jiný ...

d) -li ... pak ... jiný ...

6. Komentáře se píší buď vedle konstrukce (identifikátor, operátor, její část), kterou vysvětlují, nebo na samostatný řádek.

Dokument

programování programování programování, generál... Grobovaya umlčet. › Několikrát spárováno programování prošel...

  • Výhody a nevýhody párového programování Alistair Cowburn

    Dokument

    Související s výzkumem programování a organizační účinnost. Úžasný... jazyk programování, určité metody návrhu a programování, generál... Grobovaya umlčet. › Několikrát spárováno programování prošel...

  • Úvod do neurolingvistického programování Nejnovější psychologie osobního mistrovství

    Dokument

    Bude se to jmenovat?" Výsledek byl neurolingvistický programování- těžkopádná fráze, za kterou se skrývá... mlčenlivý, vokál, zvuk, hlas, mluví, umlčet, disonance, souhláska, harmonická, průrazná, tichá...

  • NEUROLINGVISTICKÉ PROGRAMOVÁNÍ (metodická příručka pro začátečníky)

    Dokument

    CENTRUM PSYCHOTERAPIE "LAD" V.I. ELMANOVICH NEUROLINGVISTIC PROGRAMOVÁNÍ(metodická příručka pro začátečníky) 1. ČÁST. ... ZPŮSOBY (A). 1. Pokud je hlasitost = 0, pak „poslouchá“ umlčet", pokud je hlasitost maximální, pak „svítí...

  • V jazyce Programování v Pascalu používají se instrukce jako read a readLn. Co jsou?

    Co je to přečtené prohlášení?

    Tato instrukce je určena k zadávání různých hodnot proměnných z klávesnice PC při použití jazyka Pascal. Schéma použití příslušné instrukce vypadá jednoduše: jako čtení („proměnná hodnota“).

    V praxi se instrukce čtení používá k zajištění přečtení určitých dat ze souboru a následnému přiřazení hodnot extrahovaných z odpovídajících dat k proměnným, které jsou specifikovány při volání procedury.

    Pokud uživatel udělá chybu při zadávání dat, která neodpovídají žádnému typu proměnné uvedené v pokynech, program přestane provádět příkazy. Zároveň se na obrazovce PC objeví hlášení, že v aplikaci došlo k chybě.

    Pokud programátor používá několik čtených instrukcí, pak se data nějak zadají na jeden řádek. Na další přechod možné pouze v případě, že aktuální řádek končí. Můžete však číst informace umístěné na jiném řádku pomocí instrukce readLn. Pojďme se blíže podívat na jeho vlastnosti.

    Co je to instrukce readLn?

    Podstatou instrukce readLn je nastavit v programu podmínku, při které:

    • libovolné číslo zadané do řádku je přiřazeno poslední proměnné podle instrukce;
    • zbývající oblast řádku program nezpracuje, zatímco další instrukce bude vyžadovat nový vstup.

    Můžete tedy zadat pokyn:

    readLn(C,D); read(E);

    A pokud poté zadáte z klávesnice řadu 1 2 3, pak proměnná C nabude hodnoty 1, D - 2. Program ale proměnné E nepřiřadí konkrétní hodnotu, dokud uživatel nezadá nové číslo.

    Stejně jako u instrukce čtení, pokud uživatel zadá nesprávný datový typ pomocí příkazu readLn, program se ukončí a zobrazí zprávu, že došlo k chybě.

    Srovnání

    Hlavní rozdíl mezi readLn a read je v tom, že první procedura zahrnuje přesun programu na řádek souboru, který následuje po řádku, ve kterém jsou zapsány instrukce. Druhý postup umožňuje programu číst data umístěná na dalším řádku pouze se svolením uživatele – pokud stiskne Enter.

    V praxi se instrukce readLn nejčastěji používá k zajištění zpoždění mezi výsledkem provádění aplikace a přechodem na další instrukci. Odpovídající prodleva trvá, dokud uživatel nestiskne Enter.

    Po zjištění, jaký je rozdíl mezi readLn a read v jazyce Pascal, zaznamenáme závěry do tabulky.

    Přečtěte si (postup)

    U zadaných souborů načte komponentu souboru do proměnné.
    - Pro textové soubory, přečte jednu nebo více hodnot
    do jedné nebo více proměnných

    Oznámení

    Typované soubory

    Procedura Read(F , V1 [, V2,...,Vn ]);

    Textové soubory

    Procedura Read([ Var F: Text; ] V1 [, V2,...,Vn ]);

    Režim

    Windows, skutečné, chráněné

    Poznámky

    Pro řetězcové proměnné:

    Číst přečte všechny znaky až po (ale nezahrnuje) další značku konce řádku nebo do Eof(F) se stane pravdivým. Čtení se po přečtení nepřesune na další řádek. Pokud je výsledný řetězec delší než maximální délka proměnné řetězce, je zkrácen. Po prvním čtení bude každé následující volání Read vidět značku konce řádku a vrátí řetězec nulové délky.

    Ke čtení více řetězcových hodnot použijte více volání ReadLn.

    Když je možnost povolena Rozšířená syntaxe, procedura Read může číst řetězce zakončené nulou do polí znaků založených na nule.

    Pro proměnné typu Celé číslo nebo Nemovitý:

    Čtení přeskočí všechny mezery, tabulátory nebo značky na konci řádku před číselným řádkem. Pokud číselný řetězec nemá očekávaný formát, dojde k chybě I/O, jinak je proměnné přiřazena výsledná hodnota. Další čtení bude začínat mezerou, tabulátorem nebo značkou konce řádku, která ukončovala číselnou řadu.

    viz také

    Příklad

    používá Crt, Dos;

    var
    F:Text;
    Ch:Char;

    začít
    (Získání názvu souboru z příkazový řádek }
    Assign(F, ParamStr(1));
    Reset(F);
    zatímco ne EOF (F) dělat
    začít
    Read(F, Ch);
    Napište(Ch); (Zobrazení obsahu souboru na obrazovce)
    konec ;
    konec.