Llojet e të dhënave Pascal
Çdo e dhënë (konstante, variabla, vlera funksioni ose shprehje) në Turbo Pascal karakterizohet nga llojet e tyre. Një lloj përcakton grupin e vlerave të vlefshme që mund të ketë një objekt, si dhe grupin e operacioneve të vlefshme që mund të zbatohen në të. Lloji gjithashtu përcakton formatin e paraqitjes së brendshme të të dhënave në memorien e kompjuterit.
Llojet e mëposhtme të të dhënave ekzistojnë në Turbo Pascal.
1) Llojet e thjeshta:
- reale;
- simbolike;
- boolean (logjike);
- të listuara;
– i kufizuar (varg).
2) Llojet e përbëra (të strukturuara):
– të rregullt (vargje);
– të kombinuara (rekorde);
- dosje;
- të shumëfishta;
- varg;
- objekte.
3) Llojet e referencës (tregues të shtypur dhe të pashtypur).
4) Llojet procedurale.
Turbo Pascal ofron një mekanizëm për krijimin e llojeve të reja të të dhënave, në mënyrë që numri i përgjithshëm i llojeve të përdorura në program të jetë arbitrarisht i madh.
tip numër i plotë. Vlerat e tipit të numrave të plotë janë elementë të një nëngrupi të numrave të plotë. Ekzistojnë pesë lloje të numrave të plotë në Turbo Pascal. Emrat e tyre, diapazoni i vlerave, gjatësia e paraqitjes në bajt janë dhënë në tabelë. 6.
Tabela 6
Llojet e të dhënave me numra të plotë
Ndryshoret e plota deklarohen duke përdorur fjalët e rezervuara të mësipërme:
i, j, k: numër i plotë;
Të dhënat e tipit të plotë ruhen saktësisht në memorie. Për shembull, variablat e tipit integer zënë 2 bajt (16 bit) në memorie, të cilat shpërndahen si më poshtë: 1 bit rezervohet për ruajtjen e shenjës së numrit (0 nëse numri është pozitiv dhe 1 nëse numri është negativ) dhe 15 bit për ruajtjen e numrit në llogaritjen e sistemit binar. Numri maksimal dhjetor që mund të shkruhet si binar 15 bit është 32767.
Gjatë përdorimit të procedurave dhe funksioneve me parametra të plotë, duhet të udhëhiqet nga "foleja" e llojeve, d.m.th. kudo që përdoret fjala, bajt është i lejuar (por jo anasjelltas), longint "përfshin" numër të plotë, i cili, nga ana tjetër, përfshin shortint.
Lloji i plotë përcakton pesë operacione bazë që rezultojnë gjithashtu në një numër të plotë: +, -,*, div, mod (mbledhja, zbritja, shumëzimi, ndarja e numrit të plotë dhe pjesa e mbetur e pjesës së plotë). Në shprehjet aritmetike, veprimet *, div, mod kanë një përparësi më të lartë se veprimet +, -. Shembuj të shprehjeve të shkrimit:
Lista e procedurave dhe funksioneve të zbatueshme për llojet e numrave të plotë është dhënë në tabelë. 7. Shkronjat b, s, w, i, l shënojnë përkatësisht shprehje të tipit byte, shortint, word, integer dhe longint; x është një shprehje e ndonjë prej këtyre llojeve; identifikuesit vb, vs, vw, vi, vl, vx tregojnë variabla të llojeve përkatëse. Një parametër opsional tregohet në kllapa katrore.
Tabela 7
Procedurat dhe funksionet standarde të aplikueshme për llojet e numrave të plotë
Apelim | Lloji i rezultatit | Veprimi |
Abs(x) | x | Kthen modulin x |
Chr(b) | Char | Kthen një karakter sipas kodit të tij |
dhjetor (vx[,i]) | - | Zvogëlon vlerën e vx me i, dhe në mungesë të i - me 1 |
Inc(vx[,i]) | - | Rrit vlerën e vx me i, dhe në mungesë të i - me 1 |
Përshëndetje (i) | byte | Rikthen bajtin e lartë të argumentit |
Përshëndetje (i) | byte | Gjithashtu |
Lo(i) | byte | Rikthen bajtin e ulët të argumentit |
ja (w) | byte | Gjithashtu |
Tek(l) | byte | Rikthen true nëse argumenti është një numër tek |
E rastësishme(w) | Si parametër | Rikthen një numër pseudo të rastësishëm të shpërndarë në mënyrë uniforme në intervalin 0…(w-1) |
Sheshi (x) | x | Kthen katrorin e argumentit |
këmbe (i) | Numër i plotë | |
Ndrysho (w) | fjalë | Ndërroni bajt me një fjalë |
Succ(x) | Si parametër | Kthen vlerën e plotë të radhës, d.m.th. x+1 |
pred(x) | Si parametër | Rikthen vlerën e mëparshme të numrit të plotë, d.m.th. x-1 |
Kur operoni në numra të plotë, lloji i rezultatit do të korrespondojë me llojin e operandit, dhe nëse operandët janë të llojeve të ndryshme të numrave të plotë, me llojin e operandit që ka gamën maksimale të vlerave. Rrjedha e mundshme e rezultatit nuk kontrollohet, gjë që mund të çojë në gabime në program.
Lloji i vërtetë. Vlerat e llojeve reale përcaktojnë një numër arbitrar me njëfarë saktësie të kufizuar në varësi të formatit të brendshëm të numrit real. Ekzistojnë pesë lloje reale në Turbo Pascal (Tabela 8).
Tabela 8
Llojet reale të të dhënave
Variablat realë deklarohen duke përdorur fjalët e rezervuara të mësipërme:
Një numër real në kujtesën e kompjuterit përbëhet nga 3 pjesë:
Shifra e shenjës së numrit;
Pjesa eksponenciale;
Mantisa e numrit.
Mantisa ka një gjatësi prej 23 (Single) deri në 63 (Extended) shifra binare, e cila siguron një saktësi prej 7-8 për shifrat e vetme dhjetore dhe 19-20 për shifrat dhjetore të zgjeruara. Pika dhjetore (presja) nënkuptohet para shifrës së majtë (më domethënëse) të mantisës, por kur vepron me një numër, pozicioni i saj zhvendoset majtas ose djathtas në përputhje me rendin binar të numrit të ruajtur në pjesën eksponenciale. , prandaj veprimet me numra realë quhen aritmetikë me pikë lundruese (presje).
Llojet Single, Double dhe Extended aksesohen vetëm në mënyra të veçanta përpilimi. Për të aktivizuar këto mënyra, zgjidhni artikullin e menysë Opsione, Përpiluesi... dhe aktivizoni opsionin 8087/80287 në grup Përpunimi numerik.
Një pozicion të veçantë në Turbo Pascal zë tipi Comp, i cili trajtohet si një numër real pa pjesë eksponenciale dhe thyesore. Në fakt, Comp është një numër i plotë i madh i nënshkruar që ruan 19 deri në 20 shifra dhjetore të rëndësishme. Në të njëjtën kohë, Comp është plotësisht i pajtueshëm me çdo lloj tjetër real në shprehje: të gjitha operacionet reale përcaktohen në të, mund të përdoret si një argument i operacioneve matematikore, etj.
Numrat realë janë dhënë me shënime dhjetore në njërën prej dy forma.
V formë pikë fikse rekordi përbëhet nga një numër i plotë dhe një pjesë thyesore, të ndara nga njëra-tjetra me një pikë, për shembull:
0.087 4.0 23.5 0.6
V formë me pikë lundruese hyrja përmban shkronjën E, që do të thotë "shumohet me dhjetë në fuqi", dhe shkalla është një numër i plotë, për shembull:
7E3 6.9E-8 0.98E-02 45E+04
Veprimet e mëposhtme përcaktohen në objekte të tipit real: +, -, *, /.
Operatorët "*" dhe "/" kanë përparësi më të lartë se operatorët "+" dhe "-".
Nëse të paktën një operand është real, atëherë operacionet +, -, *, / çojnë në një rezultat real. Operacioni i ndarjes / çon në një rezultat real në rastin e dy operandëve me numra të plotë, për shembull: 9/3 = 3.0.
Për të punuar me të dhëna reale, mund të përdoren funksionet standarde matematikore të paraqitura në tabelën 1. 9. Rezultati i këtyre funksioneve është gjithashtu real.
Tabela 9
Funksionet matematikore që punojnë me të dhëna reale
Variablat dhe konstantat e tipit REAL nuk lejohen të përdoren:
– në funksionet pred(x), succ(x), ord(x);
– si indekse vargjesh;
– si etiketa në pasqyrat e transferimit të kontrollit;
– si variabla kontrolli (parametrat e ciklit).
Për të kthyer një numër real në një numër të plotë, mund të përdorni funksionet e mëposhtme:
trunc(x) është pjesa e plotë e x (x është real);
round(x) – rrumbullakimi në numrin e plotë më të afërt (x është real).
lloji i karakterit. Variablat e karaktereve deklarohen duke përdorur fjalën e rezervuar char:
Vlerat e këtij lloji zgjidhen nga një grup i renditur karakteresh (nga grupi ASCII) i përbërë nga 256 karaktere. Secilit karakter i caktohet një numër i plotë nga diapazoni 0..255. Për shembull, shkronjat e mëdha të alfabetit latin A..Z kanë kodet 65..90 dhe shkronjat e vogla kanë kodet 97..122.
Vlera e një variabli të tipit të karakterit është një karakter i vetëm i mbyllur në apostrofa, për shembull:
'F' '8' '*'
Variablat e karaktereve mund të krahasohen me njëri-tjetrin duke krahasuar kodet e karaktereve.
Ka funksione që krijojnë një korrespondencë midis një karakteri dhe kodit të tij:
ord(с) - jep numrin e simbolit nga;
chr(i) - kthen karakterin me numrin i.
Këto funksione janë të kundërta nga njëra-tjetra.
tip boolean. Variablat Boolean deklarohen duke përdorur fjalën e rezervuar boolean:
p1, p2: boolean;
Variablat Boolean marrin dy vlera: e vërtetë(e vertete), i rremë(Gënjeshtra).
Këto vlera janë renditur si më poshtë: false< true. false имеет порядковый номер 0, true имеет порядковый номер 1.
Variablave Boolean ose mund t'u caktohet një vlerë drejtpërdrejt, ose mund të përdoret një shprehje boolean. Për shembull,
a, d, g, b: boolean;
Operacionet relacionale (<, <=, >, >=, =, <>) e aplikuar në variablat e numrave të plotë, realë dhe të karakterit prodhojnë një rezultat boolean.
Operacionet logjike në operandët e një lloji boolean japin gjithashtu një rezultat logjik (operacionet janë renditur në rend zbritës të përparësisë) (për detaje, shih tabelat 3 dhe 5):
jo – mohim (NOT operacion);
dhe - shumëzimi logjik (operacioni DHE);
ose – shtimi logjik (operacioni OSE);
xor - ekskluzive OSE.
Shprehja (jo a) ka kuptimin e kundërt të a.
Shprehja (a dhe b) vlerësohet si e vërtetë vetëm nëse edhe a dhe b janë të vërteta, përndryshe vlera e kësaj shprehjeje është e gabuar.
Shprehja (a ose b) vlerësohet si e gabuar vetëm nëse edhe a dhe b janë false, në të gjitha rastet e tjera rezultati është i vërtetë.
Lloji i numëruar. Një lloj i numëruar jo standard specifikohet nga numërimi si emrat e vlerave që mund të marrë ndryshorja. Çdo vlerë emërtohet nga ndonjë identifikues dhe ndodhet në një listë të mbyllur në kllapa. Forma e përgjithshme e përshkrimit të tipit të numëruar:
x = (w1, w2, …, wn);
ku x është emri i tipit, w1, w2,…, wn janë vlerat që mund të marrë një ndryshore e tipit x.
Këto vlera janë renditur w1 Funksionet standarde të mëposhtme zbatohen për një argument të tipit të numëruar w: succ(w), pred(w), ord(w). ngjyra = (e kuqe, e zezë, e verdhë, jeshile) ww=(majtas, lart, djathtas, poshtë); f: grup i ww; succ(d) = e verdhë; Variablat a dhe b janë të tipit w. ata mund të marrin një nga tre vlerat, dhe në Operacionet relacionale janë të zbatueshme për vlerat e tipit të numëruar: =,<>, <=, >=, <, >. Lejohet të specifikohen konstantet e tipit të numëruar drejtpërdrejt në seksion var pa përdorur seksionin lloji, Për shembull c,d: (e kuqe, e zezë, e verdhë, jeshile); Lloji i diapazonit (i kufizuar).. Kur përcaktoni një lloj të kufizuar, ju specifikoni vlerat e fillimit dhe të përfundimit që mund të marrë një variabël e llojit të intervalit. Vlerat ndahen me dy pika. Përshkrimi i një lloji të kufizuar është Këtu a është emri i tipit, min, max janë konstante. Kur specifikoni një lloj të kufizuar, duhet të ndiqen rregullat e mëposhtme: – të dyja konstantat kufitare min dhe max duhet të jenë të të njëjtit lloj; – Nga të dhënat e tipit bazë krijohet një lloj i kufizuar, i cili mund të jetë një numër i plotë, karakter ose tip i numëruar. Për shembull: col = e kuqe..e verdhë; shkronja = 'a'..'f'; - Variablat e një lloji të kufizuar mund të deklarohen në seksionin var pa iu referuar seksionit të tipit: – një lloj i kufizuar trashëgon të gjitha vetitë e llojit bazë nga i cili është krijuar; – kufiri minimal duhet të jetë gjithmonë më i vogël se kufiri maksimal. Vargjeve. Një grup është një lloj kompleks, i cili është një strukturë e përbërë nga një numër fiks i komponentëve të të njëjtit lloj. Lloji i komponentit quhet lloji bazë. Të gjithë përbërësit e grupit mund të porositen lehtësisht dhe çdo njëri prej tyre mund të arrihet thjesht duke specifikuar numrin rendor të tij. Përshkrimi i grupit në seksion var duket si: a: varg e t2; ku a është emri i grupit, varg, e– fjalët shërbyese (që do të thotë “vargu i…”), t1 – lloji i indeksit; t2 – lloji i komponentit (lloji bazë). Numri i indekseve përcakton dimensionin e grupit. Indekset mund të jenë të llojeve të numrave të plotë (përveç longint), karaktereve, boolean, të numëruara dhe të diapazonit. Indekset ndahen me presje dhe mbyllen në kllapa katrore. Komponentët e grupit mund të jenë të çdo lloji përveç skedarit. Shembulli 1 Konsideroni një grup njëdimensional C, vlerat e të cilit janë pesë numra realë: 4.6 6.23 12 -4.8 0.7 Përshkrimi i këtij grupi është si më poshtë: c: grup real; Me një vlerë të caktuar indeksi, ju mund të zgjidhni një komponent specifik të grupit (për shembull, C nënkupton elementin e tretë të grupit C, d.m.th. numrin 12). Shembulli 2 Konsideroni një grup dydimensional B (matricë B) vlera e të cilit është një tabelë me numra të plotë: Përshkrimi i këtij grupi është si më poshtë: b e numrit të plotë; Këtu b është emri i grupit, indeksi i parë është numri i rreshtit dhe merr vlera nga 1 në 2, i dyti është numri i kolonës dhe merr vlera nga 1 në 4. Sipas vlerave specifike të indeksit, mund të zgjidhni një komponent specifik i grupit (për shembull, b nënkupton një element tabele në rreshtin e parë dhe në kolonën e tretë, d.m.th. numri -4). Indekset mund të jenë shprehje arbitrare, që korrespondojnë me llojin e indekseve nga deklarata e grupit: a: grup real; a[(i+1)*2] := 24; Grupi i veprimeve në elementët e grupit përcaktohet plotësisht nga lloji i këtyre elementeve. lloji i vargut. Lloji i vargut - një grup vargjesh karakteresh me gjatësi arbitrare (nga zero në një numër të caktuar). Variablat e llojit të vargut përshkruhen duke përdorur një fjalë shërbimi varg: b: varg ; Veçoritë: – vlera e një variabli të vargut mund të futet duke përdorur tastierën, të caktuar në një deklaratë caktimi, të lexuar nga një skedar. Në këtë rast, gjatësia e vargut të futur mund të jetë çdo (më pak se madhësia e specifikuar, e barabartë me madhësinë ose më shumë, në rastin e fundit, karakteret shtesë hidhen); a:= 'Rezultatet'; – lejohet përdorimi i operacionit të bashkimit në operatorin e caktimit, pasi vargjet mund të ndryshojnë dinamikisht gjatësinë e tyre: a:= a + ‘llogaritjet’; – gjatësia maksimale e një variabli të vargut është 255 karaktere, ky tregues i gjatësisë mund të hiqet: a: varg; a1: varg ; Variablat a dhe a1 janë të njëjta (përshkrim ekuivalent). - memoria për variablat e tipit string shpërndahet në maksimum, por përdoret vetëm një pjesë e memories që aktualisht është e zënë nga karakteret e vargut. Për të përshkruar një variabël vargu me gjatësi n, përdoren n + 1 bajt memorie: n byte - për të ruajtur karakteret e vargut, n + 1 -të bajt - për të ruajtur gjatësinë aktuale. – Operacionet e krahasimit përcaktohen në vlerat e llojeve të vargjeve:< <= > >= = <>. Një varg i shkurtër është gjithmonë më pak se një i gjatë. Nëse vargjet janë me të njëjtën gjatësi, atëherë kodet e karaktereve krahasohen. – qasja në elementet individuale të një vargu është e mundur në të njëjtën mënyrë si aksesi në elementët e vargut: a, a. Kllapat katrore tregojnë numrin e elementit të rreshtit. Procedurat dhe funksionet e fokusuara në punën me vargje. concat (s1, s2,…)- funksioni i bashkimit të vargjeve, s1, s2,…- rreshta, numri i rreshtave mund të jetë arbitrar. Rezultati i funksionit është një varg. Nëse vargu që rezulton është më i gjatë se 255 karaktere, atëherë vargu shkurtohet në 255 karaktere. kopje(t, indeksi, numërimi)– funksioni i nxjerrjes së një vargu nga vargu burimor s gjatë numëroj karaktere që fillojnë me numrin e karaktereve indeks. fshij(t, indeksin, numërimin)është procedura për heqjen nga vargu i një nënvargu me gjatësi numëroj karaktere, duke filluar me një karakter me një numër indeks. fut (s1, s2, indeks)- procedura e futjes së vijës s1 në një varg s2, duke filluar me një karakter me një numër indeks. gjatësi(t)– funksioni për përcaktimin e gjatësisë aktuale të vargut, kthen një numër të barabartë me gjatësinë aktuale të vargut. pos(s1, s2)- funksioni i kërkimit në një varg s2 nënstrings s1. kthen numrin e pozicionit të karakterit të parë të një nënvargu s1 ne rresht s2(ose 0 nëse kjo linjë nuk ekziston). val (st, x, kodi)– procedura për konvertimin e vargut s në një variabël të plotë ose real x. Parametri kodi përmban 0 nëse konvertimi ishte i suksesshëm (dhe në x vendoset rezultati i konvertimit), ose numri i pozicionit të vargut ku u gjet karakteri i gabuar (në këtë rast, vlera x nuk ndryshon). Përputhshmëria dhe konvertimi i tipit. Turbo Pascal është një gjuhë e shtypur. Është ndërtuar mbi bazën e respektimit të rreptë të konceptit të llojeve, sipas të cilit të gjitha operacionet e përdorura në gjuhë përcaktohen vetëm në operandët e llojeve të pajtueshme. Dy lloje konsiderohen të pajtueshme nëse: - janë të dy të të njëjtit lloj; janë të dyja reale; - të dyja janë të paprekura – një lloj është një lloj vargu i llojit të dytë; – të dyja janë lloje varg të të njëjtit lloj themelor; – të dyja janë grupe të përbëra nga elementë të të njëjtit lloj bazë; – të dyja janë vargje të paketuara (të përcaktuara me një fjalë të paketuar paraardhëse) me të njëjtën gjatësi maksimale; - njëri është një varg tipi, dhe tjetri është një varg tipi ose karakter; - një lloj është çdo tregues, dhe tjetri është një tregues për një objekt të lidhur; – të dyja janë lloje procedurale me të njëjtin lloj rezultati (për një lloj funksioni), numrin e parametrave dhe llojin e parametrave që korrespondojnë reciprokisht. Përputhshmëria e tipit merr një rëndësi të veçantë në deklaratat e detyrave. Le të jetë t1 lloji i ndryshores dhe t2 lloji i shprehjes, pra caktimi është t1:=t2. Kjo detyrë është e mundur në rastet e mëposhtme: – t1 dhe t2 janë të të njëjtit lloj, dhe ky lloj nuk zbatohet për skedarët, grupet e skedarëve, regjistrimet që përmbajnë fushat e skedarëve ose grupet e të dhënave të tilla; - t1 dhe t2 janë lloje rendore të pajtueshme dhe vlera e t2 qëndron në rangun e vlerave të mundshme të t1; - t1 dhe t2 janë lloje reale, dhe vlera e t2 qëndron në rangun e vlerave të mundshme të t1; – t1 është një tip real dhe t2 është një tip numër i plotë; – t1 – vargu dhe t2 – simboli; – t1 është një varg dhe t2 është një varg i paketuar; – t1 dhe t2 janë vargje të paketuara të përputhshme; - t1 dhe t2 janë grupe të pajtueshme dhe të gjithë anëtarët e t2 i përkasin grupit të vlerave të mundshme të t1; – t1 dhe t2 janë tregues të pajtueshëm; – t1 dhe t2 janë lloje procedurale të përputhshme; – t1 është një objekt dhe t2 është fëmija i tij. Në një program, të dhënat e një lloji mund të konvertohen në të dhëna të një lloji tjetër. Një konvertim i tillë mund të jetë i qartë ose i nënkuptuar. Konvertimi i tipit eksplicit thërret funksione të veçanta konvertimi, argumentet e të cilëve janë të një lloji dhe vlerat e të cilave janë të një lloji tjetër. Një shembull janë funksionet e konsideruara tashmë ord, trunc, round, chr. Konvertimi i nënkuptuar është i mundur vetëm në dy raste: - në shprehjet e përbëra nga ndryshore reale dhe të plota, këto të fundit shndërrohen automatikisht në një tip real dhe e gjithë shprehja në tërësi fiton një tip real; - e njëjta zonë memorie trajtohet në mënyrë alternative si që përmban të dhëna të një lloji tjetër (kombinim i të dhënave të llojeve të ndryshme në memorie). Kur deklaroni një variabël, duhet të specifikoni llojin e saj. Lloji i një ndryshoreje përshkruan grupin e vlerave që mund të marrë dhe veprimet që mund të kryhen në të. Deklarata e tipit përcakton një identifikues që tregon llojin. Llojet e thjeshta ndahen në standarde (rendore) dhe të numëruara (të kufizuara). Turbo Pascal ka katër lloje standarde të integruara: integer (integer), real (real), boolean (boolean) dhe char (karakter). Turbo Pascal ka pesë lloje numrash të plotë të integruar: shortint (numër i plotë i shkurtër), integer (integer), longint (integer i gjatë), byte (byte i gjatë) dhe word (fjalë e gjatë). Çdo lloj tregon një nëngrup specifik të numrave të plotë, siç tregohet në tabelën e mëposhtme. Llojet e integruara të numrave. Gama Formati 8 bit i nënshkruar 16 bit i nënshkruar 2147483648 +2147483647 32 bit i nënshkruar 8 bit të panënshkruara 16 bit të panënshkruara Veprimet aritmetike në operandët e tipit të plotë kryhen në përputhje me rregullat e mëposhtme: Veprimet e kryera në numra të plotë: "+" - shtim “-“ - zbritje "*" - shumëzim SQR - katrore DIV - hedh pjesën e pjesshme pas pjesëtimit MOD - merrni mbetjen e numrit të plotë pas pjesëtimit ABS - moduli i numrit RANDOM(X) - marrja e një numri të rastësishëm nga 0 në X A:=100 ; b:=60 ; një rezultat DIV b është 1 dhe rezultati MOD b është 40 Variablat me numra të plotë deklarohen si më poshtë: var lista e variablave: lloji; Për shembull: var a,p,n:integer; Lloji real i referohet nëngrupit të numrave realë që mund të përfaqësohen në formatin me pikë lundruese me një numër fiks shifrash. Një vlerë me pikë lundruese zakonisht përfshin tre vlera - m, b dhe e - të tilla që m*b e, ku b është gjithmonë 10, dhe m dhe e janë vlera të plota në intervalin e tipit real. Këto vlera m dhe e përcaktojnë më tej gamën dhe saktësinë e tipit real. Ekzistojnë pesë lloje të llojeve reale: real, single, duble, exnende, comp. Llojet reale ndryshojnë në diapazonin dhe saktësinë e vlerave të tyre të lidhura Gama dhe shifra dhjetore për llojet reale Gama Numrat 2,9x10E-39 deri në 1,7x10E 38 1,5x10E-45 deri në 3,4x10E 38 5,0x10E-324 deri në 1,7x10E 308 3,4x10E-493 deri në 1,1x10E 403 2E 63 deri në 2E 63 Veprimet e kryera në numra realë: Variablat e tipit real përshkruhen si më poshtë: Për shembull: Lloji char është çdo karakter i mbyllur në apostrofa. Për të paraqitur një apostrof si një variabël karakteresh, mbylleni atë në një apostrof: ''''. Çdo karakter ka kodin dhe numrin e vet. Numrat rendorë të shifrave 0,1..9 renditen në rend rritës. Numrat rendorë të shkronjave janë gjithashtu në rend rritës, por jo domosdoshmërisht pasojnë njëri-tjetrin. Shenjat e krahasimit zbatohen për të dhënat e karaktereve: > , < , >=, <=, <> . Për shembull: 'A'< ‘W’ Funksionet që zbatohen për variablat e karaktereve: Një lloj i të dhënave të numëruar quhet kështu sepse është specifikuar si një numërim i konstanteve në një rend të përcaktuar rreptësisht dhe në një numër të përcaktuar rreptësisht. Një lloj i numëruar përbëhet nga një listë konstantesh. Variablat e këtij lloji mund të marrin vlerën e cilësdo prej këtyre konstanteve. Deklarata e tipit të numëruar duket kështu: ku<список констант>- ky është një lloj i veçantë konstante, të ndara me presje dhe që kanë numrin e tyre serial, duke filluar nga 0. Për shembull: Ju mund të ekzekutoni operatorët e mëposhtëm të caktimit: Kthesë:=jug; nisje:=Gusht; vëllimi:=tank; por nuk mund të bëni detyra të përziera: Nisja:=jug; vëllimi:=Gusht; Funksionet e mëposhtme zbatohen për variablat e tipit të numëruar: 1. ORD - numri serial 2. PRED - elementi paraardhës 3. SUCC është elementi tjetër. Variablat e tipit të numëruar mund të krahasohen sepse ato janë të renditura dhe të numëruara. Pra shprehje: veri< юг, июнь < январь имеют значения TRUE, а юг>perëndim dhe tank<бочка значение FАLSE. Nëse një variabël nuk merr të gjitha vlerat e llojit të tij, por vetëm në një gamë të caktuar, atëherë ai mund të konsiderohet si një variabël i një lloji të kufizuar. Çdo lloj i kufizuar përcaktohet duke vendosur një kufizim në llojet bazë. Përshkruhet kështu: Në këtë rast, duhet të respektohen rregullat e mëposhtme: Mund ta përshkruani menjëherë në seksionin e deklarimit të ndryshoreve: Në Pascal variablat karakterizohen nga e tyre lloji. Një lloj është një veti e një ndryshoreje, sipas së cilës një ndryshore mund të marrë një grup vlerash të lejuara nga ky lloj dhe të marrë pjesë në një grup operacionesh të lejuara për këtë lloj. Një lloj përcakton grupin e vlerave të vlefshme që mund të marrë një ndryshore e një lloji të caktuar. Ai gjithashtu përcakton grupin e operacioneve të lejuara nga një variabël i këtij lloji dhe përcakton paraqitjen e të dhënave në RAM-in e kompjuterit. Për shembull: n:numër i plotë; Pascal është një gjuhë statike, që do të thotë se lloji i një ndryshore përcaktohet kur deklarohet dhe nuk mund të ndryshohet. Gjuha Pascal ka një sistem të zhvilluar llojesh - të gjitha të dhënat duhet t'i përkasin një lloji të të dhënave të njohur më parë (ose një tip standard i krijuar gjatë zhvillimit të gjuhës ose një lloj i përcaktuar nga përdoruesi që përcakton programuesi). Programuesi mund të krijojë llojet e tij me një strukturë kompleksiteti arbitrar bazuar në tipe standarde, ose lloje të përcaktuara tashmë nga përdoruesi. Numri i llojeve të krijuara është i pakufizuar. Llojet e personalizuara në program deklarohen në seksionin TYPE sipas formatit: [emri] = [lloji] Sistemi i tipit standard ka një strukturë të degëzuar, hierarkike. Primar në hierarki janë lloje të thjeshta. Lloje të tilla janë të pranishme në shumicën e gjuhëve programuese dhe quhen të thjeshta, por në Pascal ato kanë një strukturë më komplekse. Llojet e strukturuara ndërtohen sipas rregullave të caktuara nga lloje të thjeshta. Treguesit janë formuar nga pamje të thjeshta dhe përdoren në programe për vendosjen e adresave. Llojet procedurale janë një risi e gjuhës Turbo Pascal dhe ju lejojnë t'i referoheni nënprogrameve sikur të ishin variabla. Objektet janë gjithashtu të reja dhe synohen të përdoren si gjuhë e orientuar drejt objektit. Ekzistojnë 5 lloje të llojeve të numrave të plotë në Pascal. Secila prej tyre karakterizon gamën e vlerave të pranuara dhe vendin e tyre në kujtesë. Gjatë përdorimit të numrave të plotë, duhet të udhëhiqet nga foleja e llojeve, d.m.th. Llojet e diapazonit më të vogël mund të futen brenda llojeve të diapazonit më të madh. Lloji Byte mund të futet në të gjitha llojet që zënë 2 dhe 4 bajt. Në të njëjtën kohë, tipi Short Int, i cili zë 1 bajt, nuk mund të futet në llojin Word, pasi nuk ka vlera negative. Ekzistojnë 5 lloje reale: Llojet e numrave të plotë përfaqësohen saktësisht në një kompjuter. Ndryshe nga llojet e numrave të plotë, vlera e llojeve reale përcakton një numër arbitrar vetëm me njëfarë saktësie të fundme, në varësi të formatit të numrit. Numrat realë paraqiten në një kompjuter me pikë fikse ose lundruese. 2358.8395
0.23588395*10 4
0.23588395*E 4 Një pozicion i veçantë në Pascal është i zënë nga lloji Comp, në fakt, ai është një numër i plotë i madh i nënshkruar. Ky lloj është i pajtueshëm me të gjitha llojet reale dhe mund të përdoret për numra të plotë të mëdhenj. Kur përfaqësoni numra realë me pikë lundruese, pika dhjetore nënkuptohet gjithmonë përpara mantisës së majtë ose më të lartë, por kur vepron mbi një numër, ajo zhvendoset majtas ose djathtas. Llojet e zakonshme kombinojnë disa lloje të thjeshta. Kjo perfshin: Tiparet e zakonshme për llojet rendore janë: çdo lloj ka një numër të kufizuar vlerash të mundshme; vlera e këtyre llojeve mund të renditet në një mënyrë të caktuar dhe me çdo numër mund të krahasohet një numër i caktuar, që është një numër serial; vlerat ngjitur të llojeve rendore ndryshojnë nga një. Për vlerat e tipit rendor, mund të aplikohet funksioni ODD(x), i cili kthen numrin rendor të argumentit x. Funksioni PRED(x) - kthen vlerën e mëparshme të tipit rendor. PRED(A) = 5. Funksioni SUCC(x) - Rikthen vlerën tjetër të një lloji rendor. SUCC(A) = 5. Vlerat e tipit të karaktereve janë 256 karaktere nga grupi i lejuar nga tabela e kodeve të kompjuterit që përdoret. Zona fillestare e këtij grupi, pra diapazoni nga 0 në 127, korrespondon me grupin e kodeve ASCII ku ngarkohen karakteret e alfabetit, numrat arabë dhe karakteret speciale. Karakteret e zonës fillestare janë gjithmonë të pranishme në tastierën e kompjuterit. Zona e vjetër quhet alternative, përmban karaktere të alfabeteve kombëtare dhe karaktere të ndryshme të veçanta, dhe karaktere pseudografike që nuk korrespondojnë me kodin ASCII. Një vlerë e tipit të karakterit zë një bajt në RAM. Në program, vlerat janë të mbyllura në apostrofa. Gjithashtu, vlerat mund të specifikohen në formën e kodit të tij ASCII. Në këtë rast, numri me kodin e karakterit duhet të paraprihet nga një shenjë #. C:= 'A' Ekzistojnë dy vlera të tipit Boolean: True (True) dhe False (False). Variablat e këtij lloji specifikohen me fjalën e shërbimit BOOLEAN. Një vlerë Boolean zë një bajt në RAM. Vlerat True dhe False korrespondojnë me vlerat numerike 1 dhe 0. Ekziston një nëngrup i llojit të tij bazë, i cili mund të jetë çdo lloj rendor. Lloji i diapazonit përcaktohet nga kufijtë brenda llojit bazë. [min-vlera]…[vlera maksimale] Lloji i diapazonit mund të specifikohet në seksionin Lloji si një lloj specifik, ose drejtpërdrejt në seksionin Var. Kur përcaktoni një lloj vargu, duhet të udhëhiqet nga: Ky lloj i referohet llojeve rendore dhe specifikohet duke renditur ato vlera që mund të numërojë. Çdo vlerë emërtohet nga një identifikues dhe ndodhet në listën e vendosur në kllapa. Lloji i numëruar është specifikuar në Lloji: popuj = (burra, gra); Vlera e parë është 0, vlera e dytë është 1, e kështu me radhë. Fuqia maksimale 65535 vlera. Tipi i vargut bën pjesë në grupin e tipave të strukturuar dhe përbëhet nga tipi bazë Char. Lloji i vargut nuk është tip rendor. Ai përcakton një grup vargjesh karakteresh me gjatësi arbitrare deri në 255 karaktere. Në program, lloji i vargut deklarohet me fjalën String. Meqenëse String është një lloj bazë, ai deklarohet në gjuhë dhe deklarimi i një ndryshoreje të tipit String bëhet në Var. Kur deklaroni një variabël të llojit të vargut pas String, këshillohet të tregoni gjatësinë e vargut në kllapa katrore. Përcakton një numër të plotë midis 0 dhe 255. Fam: String; Specifikimi i gjatësisë së vargut i lejon kompajlerit të ndajë numrin e caktuar të bajteve në RAM për variablin e dhënë. Nëse gjatësia e vargut nuk është e specifikuar, atëherë përpiluesi do të ndajë numrin maksimal të mundshëm të bajteve (255) për vlerën e kësaj ndryshore. Mësimi diskuton llojet kryesore të të dhënave standarde në Pascal, konceptin e një ndryshoreje dhe një konstante; shpjegon mënyrën e punës me veprimet aritmetike Pascal është një gjuhë programimi e shtypur. Kjo do të thotë që variablat që ruajnë të dhënat janë të një lloji specifik të të dhënave. ato. programi duhet drejtpërdrejt të tregojë se cilat të dhëna mund të ruhen në një variabël të caktuar: të dhëna teksti, të dhëna numerike, nëse janë numerike, atëherë numër i plotë ose i pjesshëm, etj. Kjo është e nevojshme në radhë të parë në mënyrë që kompjuteri "të dijë" se çfarë operacionesh mund të kryhen me këto variabla dhe si t'i kryejë ato në mënyrë korrekte. Për shembull, shtimi i të dhënave të tekstit, ose siç quhet saktë në programim - bashkimi - është bashkimi i zakonshëm i vargjeve, ndërsa shtimi i të dhënave numerike ndodh pak nga pak, përveç kësaj, numrat thyesorë dhe të plotë shtohen në të ndryshëm. mënyrat. E njëjta gjë vlen edhe për operacionet e tjera. Konsideroni llojet më të zakonshme të të dhënave në Pascal. Duhet pasur parasysh se kur shkruani programe në Pascal numër i plotë(përkthyer nga anglishtja si numër i plotë) është më i përdoruri, pasi diapazoni i vlerave është më i kërkuari. Nëse nevojitet një gamë më e gjerë, përdorni gjarpërues(i gjatë i plotë, përkthyer nga anglishtja numër i plotë i gjatë). Një lloj bajt në Pascal përdoret kur nuk ka nevojë të punohet me vlera negative, e njëjta gjë vlen edhe për llojin fjalë(vetëm diapazoni i vlerave këtu është shumë më i madh). Shembuj se si variablat përshkruhen (deklarohen) në Pascal: programi a1; varx,y:integer; (lloji i plotë) myname:string; (lloji i vargut) fillon x:=1; y:=x+16; emri im:="Pjetër"; writeln ("emri: ",emri im, ", mosha: ", y) fund. Rezultati: Kushtojini vëmendje mënyrës Përdoren komentet e Pascal. Në shembull, komentet, d.m.th. teksti i shërbimit që "nuk është i dukshëm" për përpiluesin është i mbyllur në kllapa kaçurrelë. Në mënyrë tipike, komentet bëhen nga programuesit për të sqaruar copat e kodit. Detyra 3. Popullsia e Moskës është një = 9,000,000 banorë. Popullsia e Vasyukovit të Ri është e barabartë me b=1000 banorë. Shkruani një program që përcakton ndryshimin në numrin e banorëve midis dy qyteteve. Përdorni variablat Numrat realë në Pascal dhe në përgjithësi në programim është emri i numrave thyesorë. Lloji real në Pascal është më i përdoruri nga llojet real. Më sipër u prezantuan lloje të thjeshta të dhënash në Pascal, të cilat përfshijnë: Për të nxjerrë vlerat e variablave të një lloji real, zakonisht përdoret prodhimi i formatuar: p:=1234.6789; WriteIn (fq:6:2); (1234.68) Krahas llojeve të thjeshta, gjuha përdor edhe llojet e të dhënave të strukturuara dhe treguesit, e cila do të jetë temë e mësimeve të mëpasshme të Pascal. Shpesh, programi e di paraprakisht se ndryshorja do të marrë një vlerë të caktuar dhe nuk do ta ndryshojë atë gjatë ekzekutimit të të gjithë programit. Në këtë rast, duhet të përdorni një konstante. Deklarimi i një konstante në Pascal ndodh para deklarimit të variablave (përpara fjalës së shërbimit var) dhe duket kështu: Një shembull i një përshkrimi të vazhdueshëm në Pascal: konst x=17; varmyname:string; Filloj emri im:="Pjetër"; writeln ("emri: ", emri im, ", mosha: ", x) fund. Për të lënë pika pas daljes së vlerave të variablave, në mënyrë që vlerat të mos "bashkohen" me njëra-tjetrën, është e zakonshme të tregohet përmes dy pikave se sa karaktere duhet të sigurohen për daljen. të vlerës: Këtu ia vlen të ndalemi më në detaje në disa veprime aritmetike. Shembull i operacionit Inc: x:=1; inc(x); (Rritet x me 1, d.m.th. x=2) shkruani (x) Një përdorim më kompleks i procedurës inc: a:=-9; b:=abs(a); (b=9) Një shembull i përdorimit të funksionit tek: varx:integer; fillimx:=3; writeln(sqr(x)); (përgjigjja 9) fund. Formula është: exp(ln(a)*n) , ku a është një numër, n është një fuqi (a>0). Sidoqoftë, në përpiluesin abc pascal, fuqizimi është shumë më i lehtë: varx:integer; fillimx:=9; writeln(sqrt(x)); (përgjigjja 3) fund. Detyra 4. Dimensionet e një kutie shkrepse janë të njohura: lartësia - 12,41 cm, gjerësia - 8 cm, trashësia - 5 cm. Llogaritni sipërfaqen e bazës së kutisë dhe vëllimin e saj Detyra 5. Ka tre elefantë dhe mjaft lepuj në kopshtin zoologjik, dhe numri i lepujve ndryshon shpesh. Një elefant supozohet të hajë njëqind karota në ditë dhe një lepur dy. Çdo mëngjes kujdestari i kopshtit zoologjik raporton numrin e lepujve në kompjuter. Kompjuteri, si përgjigje, duhet t'i tregojë shoqëruesit numrin total të karotave që sot duhet t'u ushqehen lepujve dhe elefantëve. Detyra 6. Dihet se x kg ëmbëlsira a rubla. Përcaktoni sa y kg nga këto ëmbëlsira, si dhe me sa kilogramë ëmbëlsira mund të blihen k rubla. Të gjitha vlerat futen nga përdoruesi. Agjencia Federale për Arsimin abstrakte "LLOJET E TË DHËNAVE NË PASCAL" 1. Llojet e të dhënave Çdo të dhënë, d.m.th. konstantet, variablat, vetitë, vlerat ose shprehjet e funksionit karakterizohen nga llojet e tyre. Një lloj përcakton grupin e vlerave të vlefshme që mund të ketë një objekt, si dhe grupin e operacioneve të vlefshme që mund të zbatohen në të. Përveç kësaj, lloji përcakton edhe formatin e paraqitjes së brendshme të të dhënave në kujtesën e PC. Në përgjithësi, gjuha Object Pascal karakterizohet nga një strukturë e degëzuar e llojeve të të dhënave (Fig. 1.1). Gjuha ofron një mekanizëm për krijimin e llojeve të reja, në mënyrë që numri i përgjithshëm i llojeve të përdorura në program të jetë arbitrarisht i madh. Të dhënat e përpunuara në program ndahen në variabla, konstante dhe literale: Konstante
janë të dhëna vlerat e të cilave vendosen në seksionin e deklarimit konstant dhe nuk ndryshojnë gjatë ekzekutimit të programit. Variablat
janë deklaruar në seksionin e deklarimit të ndryshoreve, por ndryshe nga konstantet, ato i marrin vlerat e tyre tashmë gjatë ekzekutimit të programit dhe këto vlera mund të ndryshohen. Konstantet dhe variablat mund të referohen me emër. Literal
nuk ka identifikues dhe përfaqësohet drejtpërdrejt nga vlera në tekstin e programit. Një lloj përcakton grupin e vlerave që mund të marrin elementët e të dhënave dhe grupin e operacioneve të lejuara në to. Ky dhe katër kapitujt në vijim ofrojnë një përshkrim të detajuar të secilit lloj.
1.1 Llojet e thjeshta Llojet e thjeshta përfshijnë llojet rendore, reale dhe datë-kohë. Llojet rendore ndryshojnë në atë që secila prej tyre ka një numër të kufizuar vlerash të mundshme. Këto vlera mund të renditen në një mënyrë të caktuar (pra emri i llojeve) dhe, për rrjedhojë, secila prej tyre mund të shoqërohet me një numër të plotë - numrin rendor të vlerës. Llojet reale, në mënyrë rigoroze, kanë gjithashtu një numër të fundëm vlerash, i cili përcaktohet nga formati i paraqitjes së brendshme të një numri real. Sidoqoftë, numri i vlerave të mundshme të llojeve reale është aq i madh sa nuk është e mundur të lidhet një numër i plotë (numri i tij) me secilën prej tyre. lloji datë-kohë projektuar për të ruajtur datën dhe kohën. Në fakt, ai përdor formatin real për këto qëllime. 1.1.1 Llojet rendore Llojet rendore përfshijnë (shih Figurën 1.1) numrat e plotë, boolean, karaktere, enum dhe varg. Për cilindo prej tyre është i zbatueshëm funksioni Ord(x), i cili kthen numrin rendor të vlerës së shprehjes X. Oriz. 1.1 - Struktura e llojeve të të dhënave Për e tërë tipet, funksioni ord(x) kthen vlerën e vetë x, domethënë Ord(X) = x për x që i përket ndonjë e tërë lloji. Aplikimi i Urdhrit (x) në logjike
, simbolike dhe të numëruara llojet jep një numër të plotë pozitiv në rangun 0 deri në 1 ( tip boolean), nga 0 në 255 ( simbolike), nga 0 në 65535 ( të numërueshme). Lloji-varg ruan të gjitha vetitë e tipit rendor themelor, kështu që rezultati i aplikimit të funksionit ord(x) në të varet nga vetitë e atij tipi. Funksionet mund të aplikohen gjithashtu për llojet rendore: parashikoj (x)- kthen vlerën e mëparshme të tipit rendor (vlera që i përgjigjet ordit rendor (x) -1, d.m.th. ord(pred(x)) = ord(x) - 1; succ(x)- kthen vlerën tjetër të tipit rendor që i korrespondon ordit rendor(x) + 1, pra ord(Succ(x)) = ord(x) + 1. Për shembull, nëse programi përcakton një variabël atëherë funksioni PRED(c) do të kthejë karakterin "4" dhe funksioni SUCC(c) do të kthejë karakterin "6". Nëse imagjinojmë ndonjë lloj rendor si një grup vlerash të renditura që rriten nga e majta në të djathtë dhe që zënë një segment të caktuar në boshtin e numrave, atëherë funksioni pred (x) nuk është përcaktuar për skajin e majtë, dhe succ (x) - për skajin e djathtë të këtij segmenti. Llojet e numrave të plotë
. Gama e vlerave të mundshme për llojet e numrave të plotë varet nga përfaqësimi i tyre i brendshëm, i cili mund të jetë një, dy, katër ose tetë bajt. Në tabelë. 1.1 liston emrat e llojeve të numrave të plotë, gjatësinë e paraqitjes së tyre të brendshme në bajt dhe gamën e vlerave të mundshme. Tabela 1.1 - Llojet e numrave të plotë Llojet fjalë e gjatë dhe int64 prezantuar për herë të parë në versionin 4, dhe llojet Smallint dhe kardinal mungon në Delphi 1. Lloji numër i plotë për këtë version, ai merr 2 bajt dhe ka një gamë vlerash nga -32768 në +32767, d.m.th., njësoj si Smallint
. Kur përdoren procedura dhe funksione me parametra të numrave të plotë, duhet të udhëhiqet nga "foleja" e llojeve, d.m.th. kudo që mund të përdoret fjalë, lejohet përdorimi byte(por jo anasjelltas) Longint"hyn" Smallint, e cila nga ana e saj përfshin Shkurt
. Lista e procedurave dhe funksioneve të zbatueshme për llojet e numrave të plotë është dhënë në tabelë. 1.2. Shkronjat b, s, w, i, l tregojnë përkatësisht shprehje të tipit byte
, Shortint, Word, Integer dhe Longint
, x është një shprehje e ndonjë prej këtyre llojeve; shkronjat vb, vs, vw, vi, vl, vx tregojnë variabla të llojeve përkatëse. Një parametër opsional tregohet në kllapa katrore. Tabela 1.2 - Procedurat dhe funksionet standarde të aplikueshme për llojet e numrave të plotë Kur veprohet në numra të plotë, lloji i rezultatit do të korrespondojë me llojin e operandëve, dhe nëse operandët janë të llojeve të ndryshme të numrave të plotë, me llojin e përgjithshëm që përfshin të dy operandët. Për shembull, kur veproni me shkurtim dhe fjalë e zakonshme do të jetë lloji numër i plotë. Si parazgjedhje, përpiluesi Delphi nuk gjeneron kod që kontrollon nëse një vlerë është jashtë rrezes, gjë që mund të çojë në konfuzion. Llojet Boolean
. Llojet Boolean janë Boolean, ByteBool, Bool, wordBool dhe longbool. Në Pascal standard, përcaktohet vetëm lloji Boolean, lloje të tjera Boolean janë futur në Object Pascal për përputhshmëri me Windows: llojet Boolean dhe ByteBool zënë një bajt secili, Bool dhe wordbool- 2 bajt, longbool- 4 bajt. Vlerat Boolean mund të jenë një nga konstantat e paradeklaruara False (false) ose True (true). Meqenëse tipi Boolean është një tip rendor, ai mund të përdoret në një deklaratë të ciklit të tipit numërues. Në Delphi 32 për Boolean kuptimi Ord (E vërtetë) = +1, ndërsa për llojet e tjera ( bool, fjalëbool etj.) Ord (E vërtetë) = -1, kështu që këta lloj operatorësh duhet të përdoren me kujdes! Për shembull, për versionin Delphi 6, deklarata e ekzekutueshme showMessage (" ---") në ciklin vijues për nuk do të ekzekutohet kurrë: për L:= E gabuar në të vërtetë bëj ShowMessage ("--); Nëse e zëvendësojmë parametrin loop tip L në shembullin e mëparshëm me Boolean, cikli do të ekzekutohet dhe mesazhi do të shfaqet dy herë në ekran. [Për versionin 1 dhe 2 të Delphi ord (E vërtetë) =+1 për çdo lloj boolean.] Lloji i personazhit
. Vlerat e tipit të karaktereve janë grupi i të gjithë karaktereve PK. Secilit karakter i caktohet një numër i plotë në rangun 0...255. Ky numër shërben si kod për paraqitjen e brendshme të karakterit dhe kthehet nga funksioni ord. Kodimi i Windows përdor kodin ANSI (emërtuar për Institutin Kombëtar të Standardeve Amerikane, instituti amerikan i standardeve që propozoi këtë kod). Gjysma e parë e karaktereve të PC me kode 0...127 korrespondon me Tabelën 1.3. Gjysma e dytë e karaktereve me kode 128...255 ndryshon për shkronja të ndryshme. Shkronjat standarde të Windows Arial Cyr, Courier New Cyr dhe Times New Roman për të përfaqësuar karakteret cirilike (pa shkronjat "ё" dhe "Ё") përdorin 64 kodet e fundit (nga 192 në 256): "А"... "Я ” janë vlerat e koduara 192..223, “a”... “i” - 224...255. Personazhet "Ё" dhe "ё" kanë përkatësisht kodet 168 dhe 184. Tabela 1.3 - Kodimi i karaktereve sipas standardit ANSI Simbolet me kodet 0...31 i referohen kodeve të shërbimit. Nëse këto kode përdoren në tekstin simbolik të një programi, ato konsiderohen hapësira.Llojet standarde
Lloji i plotë (i plotë)
Lloji i vërtetë (i vërtetë)
Lloji i karakterit (char)
lloji i numëruar
lloj i kufizuar
indeksi i tipit =0 ..63 ; shkronja='a'..'z'; varchar1,char2:shkronjë; a,g:indeks ; Llojet rendore
Lloji i personazhit
Lloji boolean (boolean).
Lloji-varg
Lloji i numëruar
lloji i vargut
Llojet e të dhënave të plota në Pascal
Një lloj
Gama
Kujtesa e kërkuar (bajt)
bajt
0..255
1
shkurtim
-128..127
1
numër i plotë
-32768.. 32767
2
fjalë
0..65535
2
gjarpërues
-2147483648..2147483647
4
Emri: Peter, mosha: 17Komentet në Pascal
Llojet reale të të dhënave në Pascal
Një lloj
Gama
Kujtesa e kërkuar (bajt)
reale
2.9*10E-39..1.7*10E38
6
beqare
1,5 * 10 E-45 .. 3,4 * 10E38
4
dyfishtë
5*10E-324..1.7*10E308
8
zgjatur
1,9 * 10E-4951 .. 1,1 * 10E4932
10
Konstantet në Pascal
1
2
3
4
5
6
konst x= 17 ; var myname: varg ; Fillo emri im: = "Pjetër" ; writeln ("emri: " , emri im, ", mosha: " , x) fund .
Prodhimi "i bukur" i numrave të plotë dhe real
Veprimet aritmetike në Pascal
Urdhri i Operacioneve
Procedurat dhe funksionet aritmetike standarde të Pascal
Inc(x,n) ku x është një tip rendor, n është një tip numër i plotë; procedura rritet x me n.a: =- 9 ; b:=abs(a); (b=9)
(S = gjerësia * trashësia, V = sipërfaqja * lartësia)Emri
Gjatësia, bajt
Gama e vlerave
kardinal
4
0. .. 2 147 483 647
byte
1
0...255
Shkurt
1
-128...+127
Smallint
2
-32 768...+32 767
fjalë
2
0...65 535
Numër i plotë
4
Longint
4
-2 147 483 648...+2 147 483 647
int64
8
-9*1018...+9*1018
fjalë e gjatë
4
0. . .4 294 967 295
Apelim
Lloji i rezultatit
Veprimi
abs (x)
x
Kthen modulin x
chr(b)
Char
Kthen një karakter sipas kodit të tij
dhjetor (vx[, i])
-
Zvogëlon vlerën e vx me i, dhe në mungesë të i - me 1
inc(vx[,i])
-
Rrit vlerën e vx me i, dhe në mungesë të i - me 1
Përshëndetje
byte
Rikthen harkun më të lartë të argumentit
Përshëndetje (unë)
Gjithashtu
Kthen bajtin e tretë
Lo(i)
“
Rikthen bajtin e ulët të argumentit
Jashtë (w)
“
Gjithashtu
tek (l)
Boolean
Kthen True nëse argumenti është një numër tek
E rastësishme(w)
Si parametër
Jep një numër pseudo të rastësishëm të shpërndarë në mënyrë të barabartë në rangun 0...(w-l)
sqr(x)
X
Kthen katrorin e argumentit
ndërroj (i)
Numër i plotë
Ndërroni bajt me një fjalë
shkëmbejmë (w)
fjalë
Gjithashtu
Kodi
Simboli
Kodi.
Simboli
Kodi.
Simboli
Kodi
Simboli
0
NUL
32
BL
64
@
96
"
1
ZON
33
!
65
A
97
a
2
STX
34
“
66
V
98
b
3
ETX
35
#
67
ME
99
Me
4
EOT
36
$
68
D
100
d
5
ENQ
37
%
69
E
101
e
6
ACK
38
&
70
F
102
f
7
BEL
39
"
71
G
103
d
8"
BS
40
(
72
H
104
h
9
HT
41
)
73
Unë
105
i
10
LF
42
*
74
J
106
j
11
VT
43
+
75
TE
107
k
12
FF
44
F
76
L
108
1
13
CR
45
-
77
M
109
m
14
KËSHTU QË
46
78
N
110
n
15
SI
47
/
79
0
111
O
16
DEL
48
0
80
R
112
P
17
DC1
49
1
81
P
113
q
18
DC2
50
2
82
R
114
r
19
DC3
51
3
83
S
115
s
20
DC 4
52
4
84
T
116
t
21
NAK
53
5
85
U
117
u
22
SYN
54
6
86
V
118
v
23
ETB
55
7
87
W
119
W
24
MUND
56
8
88
X
120
x
25
EM
57
9
89
Y
121
Në
26
NËN
58
:
90
Z
.122
z
27
ESC
59
;
91
t
123
{
28
FS
60
<
92
\
124
1
29
GS
61
=
93
]
125
}
30
RS
62
>
94
L
126
~
31
SHBA
63
F
95
127
r