Lihttüüpi (primitive types) andmed paiknevad ühes mälupesas. Viitetüüp on selline andmetüüp, kus mälupesades asuvad mitte andmed ise, vaid nende andmete aadressid ehk viited. Juurdepääs aadressile puudub. Lihttüübid: · täisarvulised: byte, short, int, long, char; · ujukomaarvud float, double; · tõeväärtustüüp boolean. Java struktuurtüüpe kasutatakse objektprogrammeerimisel -- sõned, failid, kasutajaliidese elemendid, kasutajatüübid (klassid). Javas on kasutusel järgmised kokkulepped tähtede registrite ja identifikaatorite kohta: · Klasside nimed algavad alati suure tähega MinuKlass, Jutukas · Lihttüüpide nimed kirjutatakse väikeste tähtedega -- int, short, int, long, char, boolean ...; · struktuurtüüpide nimed on soovitatav kirjutada suure tähega. Siis on kirjutamise käigus hea eristada, millega on tegu
(10^18), Z - zeta (10^21), Y - jota (10^24) o siinid - andmesiin, aadress-siin, juhtsiin, ... o välisseadmed - välismälu, sisend/väljundseadmed, kontrollerid, ... · Programmi täitmine arvutis: o masinkäsud - protsessori käsustik o operandid, aadresside moodustamine o andmete kujutamine madaltasemel: täisarvud, ujupunktarvud, sümbolid ja stringid (sõned), ... o käskude täitmistsükkel juhtseadmes: käsuregister, käsuloendaja (PC), aadressregister, olekuregister (flags), ... o katkestused John von Neumann (1903 - 1957) - mällu salvestatud programmi idee. Annab võimaluse programme genereerida (programm on andmete eriliik). Neumanni arhitektuuri kriitika. Need kaks pilti siin on kopeeritud meie põhiõpikust · Arvutisüsteemi kihid: o riistvaralised komponendid, füüsiline võrk
programmile edastatavaid andmeid. Näit. java Euclid 15 6 Käivitatakse Java rakendus Euclid.class, millele antakse ette parameetrid 15 ja 6. Vastavaks formaalseks parameetriks, mille kaudu informatsioon programmile teatavaks tehakse, on main-meetodi signatuuris olev sõnemassiiv (String[] ). Selle massiivi esimene element vastab esimesele sõnale (antud näites "15"), teine teisele ("6") jne. Tuleb arvestada, et käsurea parameetrid on sõned, s.t. kui meile on vajalikud näiteks arvud, siis me peame rakendama tüübiteisendust sõnest arvuks. public static void main (String[] param) { int m=15; int n=6; if (param.length > 1) { m=Integer.parseInt (param [0]); n=Integer.parseInt (param [1]); } System.out.println ("SYT (" + m + ", " + n + ") = " + syt (m, n)); } // main Andmete lugemine dialoogis kasutajaga D
$b = 3; // käsu lõpp - semikoolon
// käsk: kirjuta valjundisse muutuja $a väärtus
echo 'a = '.$a; // käsu lõpp - semikoolon
// käsk: kirjuta väljundisse reavahe
echo '
'; // käsu lõpp - semikoolon
// käsk: kirjuta väljundisse muutuja $b väärtus
echo 'b = '.$b; // käsu lõpp - semikoolon
?>
Näide 1.3.3
Echo
Järgmine on sõna echo. See on keelekonstruktsioon, mida kasutatakse sõnede kirjutamiseks väljundisse (meie juhul html faili). Sõned
peavad olema kas jutumärkides (" ") või ülakomades (' '). Kui sõne on jutumärkides, siis esimene asi mis PHP parser selliste sõnedega
teeb - püüab leida nendes muutujaid ja asendada neid nende väärtustega. Kuna ülakomades sõnedega niimoodi ei tehta, töödeldakse
neid kiiremini. Echo käsu jaoks peab olema defineeritud vähemalt üks parameeter, aga neid võib olla ka rohkem - siis neid tuleb
eraldada komadega. Testimiseks käivitage järgmine fail:
echo.php
return True return False file = open("sonad.txt", "r", encoding="utf-8") for line in file: line = line.strip("n") if on_palindroom(line): print(line) file.close() 10. Nädala kodutöö 1. Teksti analüüs Kirjuta funktsioon sümbolite_sagedus , mis võtab argumendiks sõne ja tagastab sõnastiku, mis sisaldab sõnes sisalduvate tähtede esinemise sagedusi. Sõnastiku võtmeteks peaksid olema tähed või muud sümbolid (st tehniliselt võttes sõned) ja väärtusteks täisarvud. Kirjuta ka funktsioon erinevad_sümbolid , mis võtab samuti argumendiks sõne, aga tagastab hulga kõikide antud sõnes leiduvate erinevate sümbolitega. def sümbolite_sagedus(sona): dictionary = {} for s in sona: if not s in dictionary: dictionary[s] = 1 else: amt = dictionary[s] dictionary[s] = amt + 1 return dictionary def erinevad_sümbolid(sona): return set(sona) 3. Lapsed ja vanemad
muutujate ega funktsioonide nimedena, oma JavaScript'i programmis. Need on sõnad, millel on JavaScript'il kindel tähendus. Näiteks nagu if, else, for, var, function, jne. Põhjalikumat informatsiooni nede sõnade kohta saate Netscape'i veebileheküljelt mõne JavaScripti versiooni dokumentatsioonist, kus on olemas eraldi peatükk "Resreved words". 2. Andmetüübid JavaScript lubab töötada kolme andmetüübiga, milleks on arvtüübid (numbers), sõned (string) ja tõevaartused (boolean). Arvtüübid. JavaScript's ei eristata eraldi täis arve ja uju-punkt arve nagu seda tehakse C-s ja Javas-s. Kõik numbrid on esitatud uju-punkt arvudena. Sõne on järjestik tähtedest, numbrimärkidest, kirjavahemärkidest jne. Sõne on andmetüüp teksti esitamiseks. Igas sõnes asuvale sümbolile (tähele, numbrile, kirjavahemärgile) vastab üks täisarvuline number e. järjekorranumber, mida nimetatakse indeksiks
Olgu R0i ⊆ Σ* sõnede hulk, mis viib automaadi M lähteolekust q0 olekusse qi. Seose HL ekvivalentsiklass on lõplik ühend Cl = R0i1 ∪ R0i2 ∪ . . . ∪ R0il. (piisavus) Olgu HL ekvivalentsiklassid C0,…,Cm. Teeme lõpliku automaadi olekute hulgaga Q = {C0…Cm}: Valime algolekuks klassi C0, mis sisaldab ε-d. Olgu lõppolek Ck ekvivalentsiklass, mis ühtib keelega L ehk kui x ∈ Ck ja x ∈ L, siis kui y ∈ Ck y ∈ L. Kui x ∈ Ci ja y ∈ Ci, st xz ∈ L yz ∈ L, siis kuuluvad sõned xa ja ya ka ühte klassi Cj. Tõepoolest: kui z = az′, siis xaz′ ∈ L yaz′ ∈ L iga z′ ∈ Σ* korral. Lisame automaati sümboliga a märgendatud ülemineku Ci → Cj . Konstrueeritud automaat aktsepteerib keelt L ja on lõplik. Järelikult on keel L regulaarne. 7 Fraasisturktuuri grammatikad ja keeled. vt punkt 15 kui α-st saab β ühe tuletusega: vahetult tuletatav α β DEF: näiteks kui α = γNδ ja β =γφδ ja grammatikas leidub produktsioon N → φ.
· static double E, kasutamine Math.E Isendiväli - kuulub isendi struktuuri ja kasutamine on võimalik ainult vastava isendi kaudu, välja nimele lisandub isendi osuti. , klassisisesel kasutamisel on selleks vaikimisi this. · kast2.pikkus Isend argumendina Klassis Kast - void tervitus(Kast teineKast) { System.out.println("Tere, " + teineKast.nimi); } Klassis KastiMaailm - kast1.tervitus(kast2); 2. Loeng Sõned Sõne pole algtüüpi - Iga sõne on isend Javas põhineb sõnetöötlus sisseehitatud klasside kasutamisel java.lang.String; java.lang.Character; java.lang.StringBuffer; java.lang.StringBuilder Loomine, võrdlemine: · new char[] tähed = {'a','b','c'}; String sõne1 = new String(tähed); · hulk konstruktoreid · on eriline false
sisulist tähendust ja grammatilise sõna puhul lisanduvad mitmed mitteleksikaalsed tähendused, mida kannavad grammatilised tunnused ja lõpud. Nt lugesime = luge- leksikaalne sõna, -si tegevus toimus minevikus, -me tegijaid mitu, kõneleja nende hulgas. Sõna eri tasandid - 1.mees (sõnaraamatu märksõna, lemma). 2.mees, mehe, meest, mehesse... (ühe sõna grammatilised vormid e sõnaraamatusõna konkreetsed esindajad tegelikus tekstis e sõned). 3.mehelik, mehestuma, mehine, meeskond (tuletised ühe tüve baasil). 4.meessugu, meessõber, meesõpetaja, meeste-jalgratas... (liitsõnad ühe täiendsõna baasil). 1-3 on lihtsõnad, vastandudes viimasele, liitsõnade klassile. 3) Formatiiviks nimetatakse ühes sõnavormis kajastuvate grammatiliste tähenduste ühisväljendust. Nt sõnavorm loeti koosneb tüvest loe, mis kannab leksikaalset tähendust