Primjer programa u Pascalu. Struktura programa u Pascalu. Nevažeća zaštita ulaza


Prva sesija pisanja novog programa.

U tom slučaju morate ući u glavni meni (F10), odabrati stavku "Datoteka", pritisnuti "Enter", zatim u podmeniju odabrati riječ "Novo", pritisnuti "Enter". U tom slučaju, kompajlirani program će automatski dobiti ime "NONAME.PAS", koje će biti istaknuto u gornjem desnom uglu prozora EDIT. Da biste programu dali drugačije ime, trebate odabrati podstavku "Zapiši u" u stavci "Datoteka" glavnog izbornika i u prozoru koji se pojavi uneti željeni naziv programa, navodeći naziv diska i, ako je potrebno , ime direktorija. Nakon što ste završili gore navedeno, trebate pritisnuti "Enter", nakon čega će se prozor EDIT obrisati, navedeni naziv programa će se prikazati u gornjem desnom uglu prozora, a kursor će treperiti u gornjem lijevom kutu, pozivajući vas da unesite tekst novog programa sa tastature.

Nakon završetka sesije kucanja programa ili njegovog uređivanja, potrebno je da snimite tekst na magnetni disk pritiskom na F2.

Opća struktura programa u Pascal-u:

Program Naziv programa Opis odjeljak Početak odjeljak Izjava Kraj .

Riječi PROGRAM, BEGIN i END ističu 2 dijela programa: odjeljak za opis i odjeljak s naredbom. Ova struktura je obavezna. Svaki objekat koji se koristi u programu mora biti uključen u sekciju opisa. Drugim riječima, odjeljak opisa treba da navede imena svih oznaka, konstanti, nestandardnih tipova podataka i varijabli koje se koriste u programu. Osim toga, odjeljak opisa pruža tekstove funkcija i procedura. Odjeljak naredbi je glavni dio programa, on sadrži komande koje čine program.

Program napisan prema pravilima standardnog Pascal jezika mora imati u svojoj kompletnoj verziji (kada su uključeni svi tipovi programskih objekata) sljedeću strukturu:

Naziv programa programa; Koristi Lista korištenih modula Oznaka Lista oznaka iz glavnog bloka programa Const Definicija programskih konstanti Tip Opis tipova Var Opis varijabli Procedura Tekst procedure Funkcija Tekst funkcije Početak Glavni blok programa (operatorski dio) Kraj .

Abeceda jezika Turbo Pascal sastoji se od kompletnog skupa simbola tastature, i nema razlike između malih i velikih slova (kompajler ne brine o visini slova). Razmak u Turbo Pascalu se koristi kao separator za pojedinačne jezičke konstrukcije, tako da će pisanje teksta zajedno biti pogrešno.

Prvi red teksta obično deklarira ime programa. U tu svrhu se koristi riječ PROGRAM, koja se ne može dalje koristiti u programu u druge svrhe:

Program Naziv programa;

";" - ovaj graničnik u Pascalu znači kraj naredbe ili opisa, njegova upotreba vam omogućava da postavite nekoliko izraza u jedan red.

Drugi red našeg programa sadrži sekciju za definisanje konstanti. On navodi konstante koje se koriste u programu i njihove vrijednosti. Riječ "CONST" znači da odmah slijedi definicija jedne ili više konstanti. “Definiranje konstante” znači specificiranje njenog imena i vrijednosti, koje se neće mijenjati kroz program. Konstanta je definirana na sljedeći način:

Konstantna konstanta ime=vrijednost;

Ime konstante i njena vrijednost odvojeni su znakom jednakosti.

Nakon vrijednosti konstante mora se staviti tačka i zarez. Vrijednost konstante mora ostati nepromijenjena tokom proračuna. Pokušaj promjene vrijednosti konstante smatrat će se greškom. Konstante mogu biti numeričke, simboličke ili logičke.

Treći red programa sadrži riječ "Var". To znači da je odeljak za definisanje konstanti završen i da počinje deo za opisivanje varijabli. Varijable se koriste za pohranjivanje i prijenos podataka unutar programa. Svaka varijabla koja se koristi u programu mora biti opisana, tj. u odjeljku "Var" treba navesti nazive varijabli i tipove podataka koji se u njima pohranjuju:

Ime varijable: tip varijable;

U Turbo Pascalu, ime varijable mora početi latiničnim slovom, sastojati se od latiničnih slova, brojeva ili donje crte "_". Ime ne smije imati više od 63 znaka (prevoditelj ga više ne prihvaća). Ne možete koristiti razmak u imenu varijable.

Obično učenje bilo kojeg programskog jezika počinje sa Hello, world! Ali na ovo ćemo doći malo kasnije, jer sada želim da vam kažem o količinama i tipovima podataka u Pascal-u.

Vrste količina

Obično učenje bilo kojeg programskog jezika počinje sa Hello, world! Ali na ovo ćemo doći malo kasnije, jer sada želim da vam kažem o količinama i tipovima podataka u Pascal-u. Šta je magnituda? Količina je poseban informacioni objekat pohranjen u memoriji računara. Postoje dvije klasifikacije količina. Pogledaćemo svaki posebno.


O njima ćemo detaljnije govoriti u narednim lekcijama.

Numerički se, pak, dijeli na dvije vrste.


Odmah dajem oznaku ovog tipa u Pascalu

Karakterni se također dijele na dvije vrste.

Druga klasifikacija količina.
Konstantno - vrijednost je nepromijenjena. Varijabla - vrijednost se može promijeniti dok je program pokrenut. Varijable se identificiraju simboličkim imenima koji se nazivaju identifikatori. Kako dodijeliti vrijednost varijabli? Koristeći komandu za dodjelu! Komanda za dodjelu u Pascalu: < переменная >:= < выражение >

Prvi program u Pascalu

Struktura programa u Pascalu

Naslov

Program< имя переменной >;

Deklarisanje varijabli i konstanti

konst<Символическое имя> = <выражение>;
var<Однотипные переменные> : <тип>;

Odjeljak za operatere

Počni
<оператор 1>;
<оператор 2>;

kraj.

Unos i izlaz u Pascalu

Vjerovatno imate pitanje: "Kako uneti promjenjive vrijednosti sa tastature?", a takođe i: "Kako prikazati dobijeni rezultat na ekranu?" Da biste to učinili, koriste se četiri posebna operatora:

Ući:

  • čitaj (promjenjivo)
  • readln (Varijabla)

I za izlaz:

  • napiši (tekst u ")
  • writeln (tekst u ")

“Koja je razlika između čitanja i čitanja, pisanja i pisanja?”: opet ćete biti zbunjeni. Odgovor je jednostavan. Ako dodate “ln” (što znači linija), kursor se pomiče na sljedeći red.

Zdravo, svijet na Pascalu

Sada ste spremni da napišete svoj prvi program.

Program Hello_World; (kovrčavi navodniki vam omogućavaju da ubacite komentar u kod) Begin Write("Hello, World!"); Kraj.

Pa, ovde je sve jasno. Kako bih diverzificirao rješenje, predlažem rješavanje nekoliko problema ovog tipa.

Problem 1. Potrebno je zatražiti korisničko ime, a zatim prikazati "Bok,<имя>!» Da bismo riješili ovaj problem, potreban nam je string tip podataka - string.

Program Hello_boy_girl; (kovrčavi navodniki vam omogućavaju da ubacite komentar u kod) var name: string; (deklariramo da je ime nova varijabla) Begin Write("Unesite svoje ime: "); (pošto koristimo pisanje, kursor će treptati iza dvotačke) Read(name); (Čitamo sve što je korisnik unio) Write("Zdravo,", ime,"!"); (Napomena! Varijabla je odvojena od navodnika zarezom End. !}

Zadatak 2.Morate saznati koliko godina ima korisnik, a zatim prikazati „Vi<возраст>godine“. Očigledno, da bismo riješili ovaj problem, potreban nam je cjelobrojni tip podataka - Integer.

Program How_old_are_you; var godina: cijeli broj; (deklarisanje godina je nova varijabla) Begin Writeln("Koliko imaš godina?"); (pošto koristimo writeln, kazaljka će treptati ispod natpisa) Read(godine); (Čitamo sve što je korisnik unio) Write("Imaš ", godina," godina."); Kraj.

OK, sada je sve gotovo! Sve što sam želeo da vam kažem u današnjoj lekciji. Naučili ste šta je količina u Pascalu i naučili osnovne tipove. Takođe smo naučili kako da kreiramo jednostavne linearne programe. O tipovima u PascalABC.Net ćemo govoriti detaljnije u narednim lekcijama. Usput, o PascalABC.Net. Jasno je da je pisanje programa na komadima papira beskorisno, a trebali biste vježbati na kompjuteru. Koristite ovu vezu da preuzmete najnoviju verziju za Windows.
Ovako izgleda interfejs programa kada se pokrene.


P.S. Istaknimo dvije karakteristike Pascala:

  1. Pascal NE razlikuje velika i mala slova, odnosno program, Program i PrOgRaM se ne razlikuju za njega. Stoga se od samog početka navikavajte na pisanje malim slovima, kako pri prelasku na drugi programski jezik ne biste imali problema s tim;
  2. Naziv programa u Pascalu nije bitan; on ne nosi nikakve korisne funkcije. Ako želite, jednostavno ne možete NJEGA pisati!

P.P.S. Postoje tri najpopularnija operativna sistema na svijetu: Linux, Mac OS i Windows. Šta ako nemate Windows? Koji kompajler da onda odaberem? O tome ćemo govoriti u lekciji broj N.

Čini se da je program na jeziku Pascal lak i tipičan za svakog programera, ali se ne može reći da je sam jezik preslab za savremeni svijet. Nije uzalud što se smatra osnovnim i uči se u školi.

Često, za pisanje programa u Pascalu, oni koriste Turbo Pascal.

Zašto bi početnici trebali izabrati ovaj jezik? Pokušajmo to shvatiti. Da biste u potpunosti savladali bilo koji programski jezik, morate imati odgovarajuću literaturu. Zato većina jezika odmah nestaje, a posebno Logo. Nije rasprostranjen u zemljama ruskog govornog područja, tako da o njemu nema edukativnih knjiga. Trenutno su najpoznatiji Pascal, Java, Basic i C. Pogledajmo svaki posebno. Java se uglavnom koristi za web programiranje. C je jedan od najčešćih jezika, ali i najteži (posebno za početnike). Da biste na kraju naučili pisati programe u njemu, najbolje je prvo savladati Pascal ili Basic. Oboje se uče u školama (po izboru nastavnika). Razlog njihove rasprostranjenosti leži u činjenici da na ovim jezicima možete napisati isti program kao u C ili C++, ali je savladavanje njime mnogo lakše zbog jednostavnosti njegove konstrukcije.

Vrijedi zapamtiti da postoji dovoljan broj verzija Pascala i Basica, ali tipovi kao što su Turbo Pascal 7.0 i QBasic su češći u školama. Ako ih posebno uporedimo, potonji je više dizajniran za pisanje malih programa do 50 redova. Turbo Pascal je moćniji i brži.

Prvi program u Pascalu

Primjeri programa u Pascalu mogu se lako pronaći na Internetu;

Da biste razumjeli kako ovaj jezik funkcionira, morate napisati mali „zadatak“. Recimo da trebate kreirati program koji će dodati dva broja: Q+W=E. Šta treba učiniti da se to stvori?

Slovo E će djelovati kao varijabla (u matematici - x). Obavezno mu dajte ime (ne više od 250 znakova). Može se sastojati od:

  • slova (A..Z);
  • brojevi od 0 do 9. Ali zapamtite da ime ne treba da počinje brojem;
  • znak "_".

Naslov ne bi trebao sadržavati:

  • ruska slova;
  • znakovi interpunkcije;
  • specijalista. simboli kao što su hash “#”, postotak “%”, dolar “$”, tilda “~”, itd.

Primjer ispravnog imena bi bio "red_velvet4", "exo" ili "shi_nee". Takođe treba imati na umu da Pascal ne razlikuje velika i mala slova, tako da se varijable pod nazivom "btob" i "BtoB" tretiraju kao jedna. Kako se tačno ćelije „pokreću“ i imenuju u programskom okruženju biće jasno u nastavku. Nakon ovog procesa potrebno je odrediti tip varijable. Ovo je neophodno da bi program ispravno prikazao rezultat na ekranu ili ga ispisao na papir. Na primjer, ako se dodaju dva broja, tada je naznačen numerički tip, a ako je prikazan pozdrav, tada je naznačen tip stringa. Za uobičajeno sabiranje dva broja prikladan je tip Integer („broj“).

Sve je jasno sa tipom za varijable, ali on mora biti dodijeljen svim numeričkim varijablama kako bi se njima moglo slobodno manipulirati.

Na osnovu onoga što je gore napisano, lako možete napisati mali „problem“. Pascal program će izgledati ovako:

Program shi_nee;

Var Q, W, E: cijeli broj;

Prvi red, tj. program shi_nee, je naziv ili naslov samog programa. Ovo je opciona komponenta koja ne utiče na rad pismenog proračuna. Ako se koristi, mora se postaviti prvi, inače će programsko okruženje generirati grešku.

Opis varijabli se javlja u drugom redu zahvaljujući “var” operatoru. Potrebno je navesti sve varijable koje se pojavljuju u programu i dodati ih odvojene dvotočkom

Par naredbi “BEGIN” - “END” počinje i, shodno tome, završava izvršavanje programa. Oni su najvažniji; Između njih su sve akcije opisane od strane programera.

Sintaksa jezika

Važno je zapamtiti da se svaki red programa završava tačkom i zarezom. Izuzetak od pravila će biti servisne komande kao što su var, begin, const, itd. Tačka se mora staviti iza naredbe end. U nekim slučajevima, kada postoji nekoliko ugniježđenja u programu i koriste se operatorske zagrade “BEGIN” - “END”, nakon ove naredbe može se staviti tačka i zarez.

Da biste ćeliji dodijelili vrijednost, na primjer, E=15, morate staviti dvotočku ispred znaka jednakosti:

Dvotačka u ovom jeziku se zove zadatak. Program u Pascalu je vrlo lako napisati ako savladate pravila sintakse opisana iznad.

Testiranje

Nakon što ste pokrenuli Turbo Pascal, potrebno je da odštampate program, pravilno rasporedite potrebne znakove i postavite željeni redosled redova. Program se može pokrenuti pomoću ili pomoću tipki Ctrl+F9. Ako je sve ispravno uneseno, ekran će malo treptati. Ako dođe do greške, program će pauzirati i kursor će biti postavljen na liniju gdje postoji. U ovom slučaju, opis same greške pojavit će se u redu “Izlaz”, na primjer, greška 85: “;” expexted. Ova linija označava da negdje nedostaje tačka i zarez. Međutim, za sada ne biste trebali obraćati pažnju na takve probleme, morate razumjeti strukturu koristeći primjere programa u Pascalu.

Šta prvo treba proučiti?

Prvo, u potpunosti razumite svaku liniju programa. Zatim obratite pažnju na sintaksu, ostavite u memoriji specijalne operatore nakon kojih se ne stavljaju interpunkcije i naučite logički lanac početka i kraja. Zapamtite kako se varijable kreiraju, koji tip im je potreban i zašto su uopće potrebne. Također će biti korisno razumjeti funkcioniranje samog programskog okruženja. Da biste to učinili, možete koristiti priručnik ili sami probirati Turbo Pascal. Stalno trebate vježbati, analizirati gotove „zadatke“ sa interneta i polako sami kucati primjere programa u Pascalu.

Jednodimenzionalni nizovi

Niz se koristi za praktičan rad sa podacima istog tipa, koji se u ovom slučaju nalaze u uzastopnim memorijskim ćelijama, a ne odvojeno. Malo je vjerovatno da je programerima ugodno raditi sa 50 ili 100 varijabli. Pogodnije ih je zapisati u niz.

Elementi koji se nalaze u grupi imaju svoj broj. U raznim programskim jezicima, brojanje počinje određenim brojem, ne nužno 1. Ali primjer programa u Pascalu sugerira da u njemu numeriranje počinje s njim. Ovaj serijski broj naziva se indeks svakog elementa. U pravilu je to cijeli broj, rjeđe simbol. U principu, za ćeliju podataka nije važno koje je indeksiranje specificirano: numeričko ili alfabetsko.

(primjeri u nastavku) može imati samo jedan tip, kojem će pripadati svi njegovi elementi. Ne dešava se da je jedna ćelija tipa realna, a druga celobrojna.

U programskom okruženju, podaci jednodimenzionalnog (tj. jednostavnog) niza se unose linearno:

Var a: niz char;

Za i:=5 do 40 čitanje (ch[i]);

Za i:=5 do 40 pisati (ch[i]:3);

Gledajući primjere programa u Pascalu, možete vidjeti da je memorija dodijeljena jednostavnom nizu koji se sastoji od 35 znakova. Indeksiranje () - od 5 do 40. U prvom redu nakon naredbe BEGIN, korisnik mora unijeti 35 apsolutno svih znakova (brojeva, slova) koje program upisuje u ćelije. Drugi red je odgovoran za njihovo prikazivanje na ekranu.

Dvodimenzionalni nizovi

Ako je jednodimenzionalni niz onaj u kojem su sve operacije poređane, odnosno svi elementi i radnje se izvode jedan za drugim, onda dvodimenzionalni niz omogućava implementaciju složenijih struktura sa grananjem.

Takvi podaci u jeziku Pascal (primjeri se mogu vidjeti u nastavku) su opisani na dva načina: “niz tipa” ili “niz niza tipa”.

Varijable b i f su konstante. Umjesto toga možete umetnuti i brojeve (kao u jednodimenzionalnim nizovima), ali u takvim problemima bolje je to ne prakticirati. To je zato što programski jezik definiše prvu konstantu kao broj redova, a drugu kao broj kolona datog niza.

Primjer zadatka koji koristi poseban odjeljak tipa:

Const b=24; f=13;

Tip cherry=array of real;

Nešto je lakše opisati niz kroz odjeljak varijabli (za početnike):

Const b=24; f=13;

Var n: niz realnih;

Obje opcije će biti ispravne; rad programa se ni na koji način ne mijenja u zavisnosti od odabranog načina snimanja.

Open Arrays

Otvoreni niz je onaj koji nema granica. Ima samo tip (realan, integer, itd.). Drugim riječima, kreirani niz je bezdimenzionalni. Njegovu "duktilnost" određuje sam program tokom izvršavanja. Pisano je ovako:

Seulgi1: niz char;

Yeri: niz realnih;

Karakteristična karakteristika ovih nizova je da indeksiranje počinje od nule, a ne od jedinice.

Grafika u Pascalu

Oni koji imaju i najmanju predstavu o „unutrašnjosti“ operativnog sistema znaju da su sve slike konstruisane korišćenjem pravougaonih rastera. Rasterske slike sastoje se od piksela koji su toliko mali da ljudsko oko ono što je nacrtano ili fotografisano percipira kao jedinstvenu cjelinu. Štaviše, što je veća rezolucija fotografije, to će pikseli biti manji.

Drugi način predstavljanja grafike je vektorski. U pravilu, to su segmenti, krugovi, elipse i drugi geometrijski oblici koji čine cijeli crtež.

U programskom okruženju na bilo kom jeziku moguće je da se pojavi ova vrsta zadataka, kao što je grafički, čiji će rezultat biti grafika. Pascal, primjeri takvih programa u određenoj mjeri pokazuju poteškoću njihovog razvoja, omogućava vam stvaranje slika i crteža. Da biste „aktivirali“ željenu biblioteku, potrebno je da unesete red „koristi graf;“.

Obično, kada se opisuju grafički podaci, koristi se ovaj postupak:

InitGraph(var drajver, choke: real; Putanja: string);

Ovdje je drajver varijabla čiji je tip cijeli broj; prigušnica - varijabilna, realnog tipa; i path vam omogućava da aktivirate drajvere.

Pogledajmo jednostavan primjer programa u Pascal ABC.NET. U početku sam mislio da dam složeniji primjer za razmatranje, ali sam shvatio da će vam trebati predugo da vam ga objasnim, pa ćemo pogledati standardni primjer „Zdravo, svijete“.

Program Pascal; begin writeln("Pascal ABC.NET"); kraj.

Prije svega, analizirajmo ovaj tekst. Sastoji se od 3 reda, od kojih svaki nosi neko značenje i uobičajeno je da svaki red počinje u novom redu, jer na taj način kod postaje razumljiviji. Pošto ja kažem „prihvaćeno“, to znači da se ceo programski kod može napisati u jednom redu (stvar je ukusa programera: napišite kod u nekoliko redova ili napišite sve u jednom redu).

Program Pascal; begin writeln("Pascal ABC.NET"); kraj.

Jedino ograničenje takvog koda (u jednom redu) je prisustvo razmaka između naredbi (u ovom primjeru, razmaka između begin i writeln) i razmaka između novog reda i reda koji se završava sa ";" nije potrebno. Odnosno, recimo sljedeći kod:

Program pascal;begin writeln("Pascal ABC.NET");end.

Također, Pascal zanemaruje razliku između malih i velikih slova (ubuduće, ako deklarirate varijablu a, onda je možete pozvati i kao A), kao u nekim programskim jezicima (Ali to nije slučaj u SVIM !). Odnosno, kod

PROGRAM PASCAL; BEGIN WRITELN("Pascal ABC.NET"); KRAJ.

Apsolutno ekvivalentno prethodnom kodu.

Sada počnimo s analizom samog koda. Kod počinje riječima "Program Pascal;". Riječ "Program" označava deklaraciju imena programa, što je u mom slučaju "Pascal". Ovo ime može biti bilo šta (samo ne možete uzeti rezervisana imena; oni su navedeni u ovoj tabeli), a generalno ovaj red nije obavezan, jer se ubuduće ne koristi ni na koji način, tako da možete pisati svoje kodove bez toga (što ću dalje raditi).

Gotovo svi redovi u ovom jeziku moraju se završavati tačkom i zarezom ";". Ovaj znak je graničnik koji označava kraj izjave ili opisa. Zahvaljujući ovom separatoru možemo napisati nekoliko iskaza u jednom redu.

Sve što je između ""Programa" i prvog "početka" nalazi se u sekciji koja se zove "Opisna sekcija". U njemu možete kreirati vlastite potprograme (više o tome kasnije), opisati varijable ili konstante. I prvi " begin" i "end." Oni ograničavaju odjeljak operatora, koji zapravo sadrži kod cijelog našeg programa. Ovaj primjer bi mogao biti malo fleksibilniji:

Program Pascal; const my_text="Pascal ABC.NET"; započeti writeln(moj_tekst); kraj.

Ovdje, u dijelu opisa, kreirao sam varijablu sa konstantnom vrijednošću (konstantom) koristeći riječ "const", nakon čega slijedi opis jedne ili više konstanti. Nakon što ste opisali konstantu u programskom jeziku, njenu vrijednost možete koristiti bilo gdje (unutar programa), ali nećete moći promijeniti njenu vrijednost. U nekim slučajevima ovo je vrlo zgodno. Na primjer, vrijednost Pi je jednaka 3,14... Očigledno, vrlo je zgodna za korištenje prilikom izračunavanja bilo koje geometrijske formule. I ova vrijednost bi trebala biti ista bez obzira na vanjske faktore (Država u kojoj živite; doba godine; doba dana...). Promjenom vrijednosti ove konstante, dobićete netačne vrijednosti u geometrijskim formulama. A ovo je pogrešno. Zato su konstante izmišljene u programskim jezicima. Moraju biti opisani u odjeljku opisa i korišteni u vašem kodu. U ovom slučaju, tokom sklapanja gotovog programa, svuda će umjesto imena ove konstante biti zamijenjena njena vrijednost. Možda mislite da je glupo svuda pisati ime date konstante ako će ona ionako biti zamijenjena njenom vrijednošću. Nije li lakše odmah napisati njegovo značenje?

Odgovor na ovo pitanje: ne, nije lakše, već teže. Prvo, konstanta može sadržavati vrlo dugu vrijednost. Na primjer, mogu kreirati konstantu:

Const Mytext="Volim Pascal ABC.NET jezik, i zato kreiram sajt na kojem možete naučiti ovaj jezik";

I gdje god je potrebno, zgodnije je napisati ime ove konstante „Mytext“, nego ove dugačke rečenice.

Drugo, postoje slučajevi kada program u početku treba kreirati za jednu stvar, a zatim reprogramirati za drugu. Na primjer, kreirate program za čitanje vrijednosti iz bilo koje datoteke (nije važno koje). Naravno, u početku je zgodno kreirati ovaj program tako što ćete ga testirati na određenoj unaprijed pripremljenoj datoteci (to jest, prvo raditi na glavnom algoritmu programa, a zatim dodati sve sitnice), a zatim, nakon testiranja, pripremite ovaj program za mnoge fajlove. Na primjer:

Var f:text; i:integer; start assign(f, "data.bat"); reset (f); pročitaj(f,i); i:=(i*10 - 125)*(-1); zatvori(f); dodijeliti(f, "data.bat"); rewrite(f); napisati(f,i); zatvori(f); kraj.

Najvjerovatnije niste razumjeli gotovo ništa u ovom kodu (nisam htio dati ovaj primjer, ali radi veće jasnoće odlučio sam ga dati). Ne morate sada ulaziti u ovaj kod (pošto sam ga napisao nasumično). Ovaj kod otvara datoteku "data.bat", čita vrijednost iz nje, transformira tu vrijednost i upisuje novu vrijednost natrag u tu datoteku. Ali to nije poenta. U ovom kodu možete vidjeti redove "assign(f, "data.bat");" U ovom primjeru postoje 2 reda. Ako se naziv datoteke iznenada promijeni, morat ćemo prepisati ova dva reda. Zamislite da postoje hiljade takvih redova. Sve će ih morati ponovo napisati. Iz tog razloga su uvedene varijable i konstante.

Vratimo se na prvi kod. Opisati konstantu u programskom jeziku znači naznačiti njeno ime i vrijednost. To jest, u primjeru:

Const my_text="Pascal ABC.NET";

Ime konstante je "my_text" i njena vrijednost je "Pascal ABC.NET". Možda imate osjećaj da se konstantama mogu dodijeliti samo vrijednosti niza, ali to nije istina:

Const my_Pi=3.1428;

Evo primjera koji dokazuje suprotno. Dakle, možete specificirati bilo šta u konstanti.

U našem primjeru, odjeljak naredbi sadrži samo jednu naredbu, "writeln("Pascal ABC.NET");". Komanda "writeln" je potprogram (upoznat ćemo ih malo kasnije) koji prikazuje sve što je sadržano u njenim zagradama (u našem slučaju, program će prikazati "Pascal ABC.NET").

Riječ "kraj" završava cijeli program. Ovaj skup znakova označava kraj programa. Sve što slijedi ovu naredbu se ne izvršava.

Dakle, na prethodnoj stranici definirali smo sljedeće koncepte: program, cijeli broj, real, const, var, početak, kraj, pisanje, writeln, read, readln. Napišimo jednostavne Pascal programe koristeći ih. Ali prvo, hajde da saznamo od kojih delova se sastoji Pascal program.

Svaki program u programskom jeziku Pascal ima tri komponente: 1) zaglavlje; 2) odjeljak za opise; 3) tijelo programa.

✎ 1) Naslov je riječ Program, nakon čega slijedi naziv programa na latinici i tačka-zarez na kraju. Ime ne može početi brojem, ne smije se podudarati s rezerviranim riječima (početak, kraj, cijeli broj, itd.) ili nazivima varijabli iz odjeljka opisa (pogledajte dolje) i upotrebom bilo kojih simbola (' @', '%' , '&', itd.), osim donje crte. Preporučljivo je dati naziv sa značenjem koje bi odražavalo suštinu samog programa. Ali ne morate napisati naslov.

✎ 2) Odeljak za opise – Pošto ćemo prvo razmotriti najjednostavnije zadatke, drugi deo će sadržati ili opis konstanti ili varijabli (pogledajte paragrafe 4 i 5 članka Uvod u Pascal).

✎ 3) Tijelo programa je blok naredbi u kojima su napisane naredbe koje treba izvršiti. Ovaj blok počinje riječju početi(“početak”), a završava se riječju kraj.(“kraj”) sa tačkom na kraju (stav 6., 7. istog člana).

Dakle, generalno, Pascal program izgleda ovako:


Prilikom rješavanja najjednostavnijih zadataka prvo ćemo se ograničiti na cijele brojeve. Prije nego počnemo programirati, naznačit ćemo najjednostavnije 4 operacije na brojevima u Pascalu: “+” - sabiranje, “-” - oduzimanje, “*” - množenje, “/” - dijeljenje. Kao što vidite, u programiranju i matematici, elementarne operacije nad brojevima se označavaju na isti način. Hajde da rešimo sledeći problem:

Zadatak. Neka su cijeli brojevi A i B dati njihov zbir.


Nazovimo program za pronalaženje zbira Summa. Tada će dio koda koji je odgovoran za ime programa izgledati ovako:

1 Program Summa; (program se zove Summa)

Označimo zbir brojeva A i B sa S. Pošto su brojevi cijeli brojevi, zbir će biti cijeli broj. Stoga ćemo u opisivanju brojeva A, B, S koristiti varijablu cjelobrojnog tipa. Ali kako opisati ove brojeve u odjeljku opisa - kao konstante ( konst) ili kao varijable ( var)? Sve zavisi od uslova problema. Brojeve A i B možemo pisati i kao konstante i kao varijable. Ali u svakom slučaju, zbir S će biti promenljivog tipa, pošto ne znamo njegovu vrednost.

Dakle, neka se daju vrijednosti brojeva A i B, jednake, na primjer, 23 i 76, respektivno. Pošto znamo vrijednosti unaprijed, A i B će biti kao konst, a S će biti opisan kao var. S obzirom da opis konstanti dolazi prije opisa varijabli, odjeljak opisa u ovom slučaju će biti sljedeći:


Dakle, tijelo programa će se sastojati od izračunavanja sume S i prikazivanja na ekranu. U Pascalu, da biste izračunali zbir A i B, ne možete jednostavno napisati S = A + B; takav zapis je moguć ako treba provjeriti da li je broj S jednak zbroju A + B. A da biste zapisali vrijednost sume A + B u varijablu S, potrebno je da vrijednost ove sume "dodijelite" varijablu S, tj. upišite zbir A + B na mjesto u memoriji računara koje je dodijeljeno za varijablu S. Ovo je kao da se vrijednost jednog broja „gura“ u vrijednost drugog. Zadatak je napisan ovako:

Za izlaz rezultata koristite operator izlaza pisanja s komentarom na ekranu:

write("Zbroj brojeva 23 i 76 je: S = ", S);

Kombinujući naše 1) zaglavlje programa, 2) odeljak opisa i 3) telo programa, dobijamo mali kod koji se može kopirati u PascalABC.Net ili drugu verziju Pascal-a:


Nakon izvršavanja ovog programa na ekranu ćemo vidjeti:

Zbir brojeva 23 i 76 je: S = 99

Sve je u redu i program radi. Ali ovdje smo napisali nešto nepotrebno. Pažljivo pogledajte naredbu za upisivanje na kraju - tu je prikazana suma S ako se umjesto S upiše vrijednost same sume, odnosno A + B? Tako je, ništa. Tek tada moramo ukloniti varijablu S iz našeg koda i umjesto toga koristiti zbroj A + B kada ga prikazujemo na ekranu. Evo pojednostavljenog koda:


U ovom slučaju, rezultat na ekranu će biti ovakav:

Zbir brojeva 23 i 76 je 99

Ovo je naš najjednostavniji prvi program. Ostale probleme ovog tipa možete vidjeti na stranici Pravougaonik, krug i paralelepiped. Proračun površina, perimetara i zapremina. Istina, koriste varijable realnog tipa real, ali suština je ista: riješiti problem bez operatora dodjeljivanja. Općenito, ovaj operator se koristi tamo gdje je potrebno izračunati srednju varijablu koja se koristi za izračunavanje glavnog rezultata. Stoga, tamo gdje možete učiniti bez dodjele prilikom izračunavanja rezultata (odgovor na problem), morate napisati izraz direktno u operator izlaza pisanja. Samo ako je izraz prevelik i ne uklapa se u izlaznu naredbu, mora se posebno procijeniti uvođenjem dodatnih varijabli (var). Ali u najjednostavnijim slučajevima, po pravilu, možete bez operatora dodjeljivanja.


Na sljedećoj stranici ćemo govoriti o procentima. U međuvremenu, ako ste obožavatelj World of Warcrafta, onda će vam ovo pomoći