Javascript
Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása alatt változhat.
Változók Változó neve: ált.ban betűvel (angol abc) kezdődik, és betűvel vagy számmal, egyéb jelekkel folytatódhat. Pl.: X1, abc12, 3D -nem jó Értékadás: Értékadás bal oldalán a változó címét veszi figyelembe a program, jobb oldalon szereplő változó az értékét képviseli X=2; 2=X; X=Z; X = X + 1; változó címe = érték
Rövid műveletek X = X + 1 X++ Y = X++; Y = ++X; X+=3; X+=Y; X--; X-=Y;
Beolvasás a billentyűzetről adat = prompt( Ez a szöveg íródik ki ); A prompt szöveget olvas be! parseint() függvénnyel konvertáljuk számmá (egész számmá) parsefloat(), parsedate(),.. Feladat: Kérjünk be két számot, és írjuk ki, mennyi az összegük:
Kiírás document.write (..) document.write (a, és, b, összege:,a+b) Formázott kiírás: HTML készletet használjuk: document.write (a, és, b, összege:,a+b, <BR/> ) document.write ( <CENTER> a, és, b, összege:,a+b, </CENTER> )
Feladat Kérjük be egy háromszög három oldalának mérőszámát a felhasználótól, és írjuk ki a háromszög kerületét és területét. Használjuk a: t²=s*(s-a)*(s-b)*(s-c) összefüggést, a gyökvonáshoz a Math.sqrt( n ) metódust
Szintaxis A program nyelvi helyességét értjük Szintaktikai hibák elírásból, hiányzó jelekből (zárójel, kettőspont, stb.) erednek Pl.: print ( x pritn (x) Nem szintaktikai hiba a program hibátlan, de nem az csinálja, amit kellene szemantikai hiba
Vezérlési szerkezetek Böhm Jacopini sejtés (Mills tétel) 3 vezérlési szerkezettel minden struktúrált program felírható: Szekvencia (sor) Szelekció (elágazás) Iteráció (ciklus)
Elágazás szintaktikája IF (logikai feltétel) { utasítás1 utasítás2 } utasítás3 -ez már nem tartozik a szerkezetbe }-ig tart IF (logikai feltétel) { utasítás1 utasítás2 } ELSE { utasítás1 utasítás2 }
Logikai kifejezések == egyenlő!= nem egyenlő && -és -vagy IF (a==20 && b>=20) {...} IF (a!=20 b!=20) {...}
Ciklusok Előírt lépésszámú ciklus (for ciklus): A ciklus kezdetekor meghatározható, hogy hányszor fut le a ciklus magja Pl.: számok 1-től 120-ig Feltételes ciklus (while ciklus): Egy feltételtől függően áll meg Pl.: addig, amíg Entert nem ütnek
Ciklus részei Ciklusfej: ez határozza meg a feltételeket, kezdőértéket, stb. (a kerek zárójelek közötti rész) Ciklusmag: ez a programrészlet ismétlődik (a kapcsos zárójelek közötti rész) Ciklusváltozó: csak előírt lépésszámú ciklusnál van, ebben számoljuk a lépéseket minden ismétlődésnél változik
Ciklusok szintaktikája for (változó=kezdőérték; feltétel; változó++) { ciklusmag utasítás ciklusmag utasítás } ez már nem a for-hoz tartozik while (feltétel/logikai érték) { utasítás utasítás } utasítás
Feladat Készítsük el az alábbi feladat algoritmusát: A gép kitalál egy véletlen számot 1-100 között A felhasználó beírja a tippjét Ha kitalálta a számot a program megáll Egyébként: a gép megadja, hogy a gondolt szám kisebb v. nagyobb Használjuk a Math.random() metódust (függvényt)! Milyen ciklussal érdemes megvalósítani?
Nevezetes algoritmusok Eldöntés, Kiválasztás, Leválogatás Összegzés Minimum / maximum Megszámlálás Kereső és rendező algoritmusok
Eldöntés, Kiválasztás, Leválogatás Egy n elemű adathalmazban lévő, egy adott tulajdonsággal rendelkező elemek közül kiválasztunk egyet, leválogatjuk az összeset, vagy csak eldöntjük, hogy van-e ilyen Algoritmus eldöntés letezik = hamis Ciklus i=1-től n-ig Ha tulajdonság ( elem( i ) ) == igaz letezik = igaz Ciklus vége Ki: letezik Algoritmus vége
Megszámlálás Megszámoljuk, hogy egy n elemű adathalmazban hány darab adott tulajdonságú elem létezik Algoritmus megszámlálás Darab = 0 Ciklus i=1-től n-ig Ha tulajdonság ( elem( i ) ) == igaz darab = darab +1 Ciklus vége Ki: darab Algoritmus vége
Összegzés Összeadjuk, egy n elemű adathalmazban lévő számok értékét Algoritmus összegzés Összeg = 0 Ciklus i=1-től n-ig Összeg = összeg + elem (i) Ciklus vége Ki: összeg Algoritmus vége
Feladat Olvassunk be egy számot, és számoljuk meg, hány osztója van Határozzuk meg az osztók összegét! Állapítsuk meg, hogy tökéletes számot adtak-e meg!
Feladat Készítsünk a korábbi feladat algoritmusa alapján egy programot: A gép kitalál egy véletlen számot 1-100 között A felhasználó beírja a tippjét Ha kitalálta a számot a program megáll Egyébként: a gép megadja, hogy a gondolt szám kisebb v. nagyobb
Eseményvezérlés A program események bekövetkezésekor tesz vmit. (reagál egy eseményre) Milyen eseményeket kezelhetünk? Oldal betöltődik (pl.: reklámok) Oldalt elhagyjuk Klikkelünk egy objektumon Egér egy objektum felé megy (onmouseover) Stb.