2018. október 24., szerda

2018.10.24. Elmélet számonkérés

Feladat: mindenki ossza meg velem a digifüzetét, aki még nem tette (ellenőrizd, meg van-e osztva). Továbbá csinálj a Drive-odon egy Programozás mappát, amiben a programjaid vannak (ha eddig nem volt) és oszd meg velem azt is.

A (gyakorlati) rajzolás házit oszd meg velem, és be is másoltuk az Órai munkába.
Az elméleti házit a digifüzetedben megoldottad, ezt is bemásoltuk.

Ma elméletből rövid számonkérést írtunk az eddigi elméleti anyagból.



2018.10.24. elmélet röpi

A csoport
Tervezz egy algoritmust, ami arról szól, hogy elmégy a boltba vásárolni.  (Nem kell, hogy sok köze legyen a valósághoz.) Az algoritmusba választásod szerinti tevékenységeket írj bele. A feladatmegoldásban használj szekvenciát, egyágú szelekciót, kétágú szelekciót, és legalább egyfajta ciklust.
A megoldásban tanult módon használd a behúzásokat és a nagybetűket-kisbetűket.

B csoport
Tervezz egy algoritmust, ami arról szól, hogy elmégy a haverokkal egy hétvégi délutánon valahova, és együtt csináltok magatoknak programot. (Nem kell, hogy sok köze legyen a valósághoz.) Az algoritmusba választásod szerinti tevékenységeket írj bele. A feladatmegoldásban használj szekvenciát, egyágú szelekciót, kétágú szelekciót, és legalább egyfajta ciklust.
A megoldásban tanult módon használd a behúzásokat és a nagybetűket-kisbetűket.

2018. október 17., szerda

2018.10.17. Gyakorlat

Ma ellenőriztük a házit.
Átnéztük az Üzenetek leckét, ehhez nem csináltuk meg a mintaprogramot (ez nekünk túl egyszerű :)
Elkezdtük feldolgozni a Rajzolás leckét.

Házi feladat:
A Rajzolás lecke otthoni önálló feldolgozása.
Készíts egy programot a minta szerint.A színek elhelyezéséhez rajzolj egy festő palettát, legyen rajta minimum 7 szín. A Google segít a színválasztásban. A paletta rajza sematikus legyen. A palettát a rajzlap valamelyik sarkában helyezd el. Ne lehessen rárajzolni.


A rajzolást ecset szereplővel valósítsd meg. Ha vastagabb vonalat választasz, az ecset is legyen vastagabb. Ezt megvalósíthatod úgy, hogy egy másolatot készítesz az ecsetből, és rajzolással megvastagítod.
A rajz törléséhez, vastagabb, vékonyabb vonal választásához rajzolj valami egyedi jelet.

2018. október 15., hétfő

2018.10.15. Elmélet - Házi feladat

1. A leckét a blogból másold be a tanult módon a digifüzetedbe.

2. Az előző lecke házi feladatából vedd elő a telefonálás algoritmusát, és egészítsd ki egy elöl tesztelő ciklussal.

3. Az előző lecke házi feladatából vedd elő a hétvégi reggeli felkelés algoritmusát, és egészítsd ki egy hátul tesztelő ciklussal.

A megoldásod kerüljön be a digifüzetedbe.


2018.10.15. Elmélet: ciklusok

Október 24-én elméletből röpdolgozatot írunk az eddigi anyagból, tehát szekvencia, feltételek, és a ciklusok közül tudni kell elöl-, és hátultesztelő ciklust írni.


Ebben a leckében a számlálós ciklusokig jutottunk.


Ismétlődő utasítások – ciklusok

A feladatok megoldása során találkozhatunk olyan utasításokkal, melyeket ismételten, többször is végrehajtunk. SMS küldésénél például egymás után írjuk be a mobiltelefonba a karaktereket.
Ciklus (iteráció): egymás után többször végrehajtásra kerülő, ismétlődő utasításcsoport.

Ismétlődő utasítások:
ISMÉTLÉS AMÍG nincs vége az üzenetnek
            írd be a következő karaktert
ISMÉTLÉS VÉGE

Az algoritmusokban az ismétlés szó helyett általában a ciklus szót használjuk.
Ha előre nem fogalmaztuk meg az üzenetet, akkor nem tudjuk a karakterek számát. Az ismétlés egy feltétel bekövetkezésétől függ: egymás után írjuk be a karaktereket addig, amíg nincs vége az üzenetnek.

Ritkán szoktunk olyan üzenetet küldeni, amely egyetlen karakterből sem áll. Ezért az ismétlés feltételét megvizsgálhatjuk a tevékenység (az első betű beírása) után. Lehetséges, hogy a feltételt az utasítások végrehajtása előtt nem is tudjuk kiértékelni. (Kiértékelés: eldönteni a feltételről, hogy igaz, vagy hamis).

A feltétel kiértékelésének helyétől függően a ciklus lehet:
a, elöltesztelő ciklus: a feltételt az utasítások végrehajtása előtt értékeljük ki;
b, hátultesztelő ciklus: a feltételt az utasítások végrehajtása után értékeljük ki;

Hátultesztelő ciklus:
CIKLUS
            írd be a következő karaktert
AMÍG nincs vége az üzenetnek
CIKLUS VÉGE

Vegyük észre, hogy ha eleve nem teljesül a feltétel, akkor az elöltesztelő ciklus egyszer sem kerül végrehajtásra. Ha a telefonhívásnál foglalt a vonal, akkor várunk egy kicsit, majd újra tárcsázunk. Nincs szükség a várakozásra, és az ismételt hívásra, amikor ismerősünk egyből felveszi a telefont.

A hátultesztelő ciklus utasításait viszont legalább egyszer végrehajtjuk. Egy magasugró versenyen a sportoló annyiszor ismételhet, ahányszor átugorja a lécet. Ha átugrotta, magasabbra emelik, és megint ugorhat. Amíg nem ugrott, nem tudjuk megmondani, hogy ismételhet-e. A magasugrás a hátultesztelő ciklus példája.

Hátultesztelő ciklust általában akkor alkalmazunk, ha a ciklus kezdetén még nem tudjuk ellenőrizni az ismétlés feltételét.

Ismétlési és kilépési feltételek

Az SMS küldésére vonatkozó példánkban egy feltétel tagadása szerepelt:
CIKLUS AMÍG nincs vége az üzenetnek
A feltétel tagadása megnehezíti az algoritmusok értelmezését. Célszerű bevezetnünk olyan ciklustípust, amelyben az ismétlés feltétele helyett a kilépés feltételét adjuk meg.
Ismétlési feltétel: teljesülése esetén ismétlődik a ciklus utasításainak végrehajtása.
Kilépési feltétel: teljesülése esetén kilépünk a ciklusból (abbahagyjuk az utasítások ismétlését).

Ciklus kilépési feltétellel:
CIKLUS MÍGNEM vége van az üzenetnek
            írd be a következő karaktert
CIKLUS VÉGE

A kilépési feltételre a MÍGNEM szóval utalhatunk. Addig jár a korsó a kútra, amíg el nem törik – tartja a közmondás. Kilépési feltétellel így fogalmazhatjuk meg: addig jár a korsó a kútra, mígnem eltörik.
A programozási nyelvekben az ismétlési feltételre általában a WHILE, a kilépési feltételre az UNTIL szó utal.

Vegyük észre, hogy a kilépési feltétel éppen tagadása az ismétlési feltételnek. Azt választjuk közülük, amelyikkel egyszerűbben írhatjuk le az algoritmust.
A feltételes ciklusok tehát lehetnek elöl-, illetve hátultesztelőek. A feltétel mindkét típusnál vonatkozhat az ismétlésre vagy a kilépésre.

Ismétlődő utasítások – számlálós ciklusok

Az SMS-küldésnél (hagyományos mobiltelefonon) bizonyos betűk beírásához a nekik megfelelő billentyűt többször le kell nyomni. Az S betűt például a 7-es billentyű négyszeri megnyomásával érjük el. Ekkor előre tudjuk az ismétlések számát.

A ciklusok típusai:
a, számlálós ciklus: előre tudjuk az ismétlések számát;
b, feltételes ciklus: az ismétlések száma egy feltétel teljesülésétől függ.

Számlálós ciklus:
CIKLUS 4-szer
            nyomd le a 7-es billentyűt
CIKLUS VÉGE

Ciklusváltozó alkalmazása:
CIKLUS számláló = 1-től 100-ig:
            ugord át a kötelet
CIKLUS VÉGE

Ha sokszor kell végrehajtanunk egy számlálós ciklust, akkor célszerű valamilyen módon nyilvántartanunk az ismétlések számát. Strigulákat húzhatunk papíron, vagy készíthetünk elektronikus számlálót is. Az algoritmusban jelezhetjük a számláló alkalmazását.

Az ugrókötelezésnél 100-szor kell átugornunk a kötelet. A számláló értéke 1-től kezdve minden egyes ismétlésnél eggyel megnő. Amikor túllépte a 100-at, akkor már nem kerül sor az ugrás megismétlésére. A számlálót ciklusváltozónak nevezzük. A számláló értékét felhasználhatjuk a ciklus utasításaiban.


A számlálónak a végértékkel való összehasonlítását elvégezhetjük a ciklusutasítások végrehajtása előtt, illetve után. A számlálós ciklusok általában előre veszik az összehasonlítást (elöltesztelő ciklus). Ha a kezdőérték eleve túllépi a végértéket, akkor a ciklusutasítások egyszer sem kerülnek végrehajtásra.

2018.10.12. Gyakorlat

Leellenőriztük a házit.

Átnéztük együtt a Feltételek leckét.

Házi feladat:
Megcsinálni a labirintusos mintaprogramot. Ehhez megosztom majd a háttérképet, és a két szereplő képét.

A házit mindig fel kell tölteni a Drive-odra.

Szorgalmit sosem tilos csinálni :)



2018. október 10., szerda

2018.10.10. Ismétlődések

Átnéztük az ismétlődések leckét, megértettük a mintaprogram működését.

Házi feladat:

- elolvasni újra az 1., 2. leckét

- a 2. lecke papagájos feladatát otthon megcsinálni, lementeni, és feltölteni a Drive-ra, itt megnézzük

- a 3. leckét alaposan végigolvasni, majd újra megnézni a kutyás program működését

- Csinálni egy olyan programot, ami ugyanazt tudja, mint a kutyás, de a következőkben más:

1. Rajzolj neki egy hátteret. Ha nagyon csúnya lett :), akkor tölts be egy saját, lementett képet.
2. Válassz egy szereplőt a szereplőkönyvtárból a kutya helyett, aminek van két jelmeze, és tudni fog lépegetni.
3. Rajzolj egy saját napot, rajzolj neki két jelmezt, amivel megvalósíthatod az animációt.

Ezen felül ha valakinek van egyéni ötlete, valósítsa meg :)

Ezt a programot is töltsd föl a Drive-ra, itt órán mindkettőt be kell mutatnod. Vigyázz, hogy amikor a programokat feltöltöd, várd is meg, hogy a helyükre kerüljenek, és győződj meg róla, hogy valóban ott vannak.

Aki nem készíti el a házi feladatát, mínuszt kap, és két mínusz egy egyest ér.


2018. október 8., hétfő

2018.10.08.Teafőzés megoldás és házi feladat

Házi feladat: az első feladat mintája alapján a 2.-3. feladatot megírni úgy, hogy feltételek is legyenek benne.
1. feladat egy lehetséges megoldása:

vízforralóban forralok vizet
kiöntöm a forró vizet a bögrébe
beleteszem a filtert
várok 5 percet
HA van itthon méz AKKOR
beleteszem a mézet a teába
EGYÉBKÉNT
cukrot teszek bele
ELÁGAZÁS VÉGE
HA van itthon citrom AKKOR
belefacsarom a citromot a teába
EGYÉBKÉNT
citromsavat teszek bele
ELÁGAZÁS VÉGE
megiszom a teát

2018. október 5., péntek

2018.10.05. Elmélet: Feltételes elágazások, Digifüzet létrehozása

Mindenkinek kell olyan saját gmail.com-os e-mail cím, amit órán telefonos azonosítás nélkül tud használni.
A következő órán jelentkezz, ha változott az eredeti cím.

Létrehoztuk a digifüzetet, és belemásoltuk az elméleti leckéket. Érdemes otthon megnyitni, meggyőződni róla, hogy eléred. A következő órán megosztjátok velem.

-------------------------------------------------------------------------------------------------------------------------

Sok algoritmusban fordulnak elő olyan utasítások, melyeket csak meghatározott feltételek teljesülése esetén kell végrehajtani. Ha például még nincs Facebook fiókunk, akkor először létrehozunk egyet. Csak utána tudunk bejelentkezni.

Feltételes elágazás:

HA nincs Facebook fiókod AKKOR
       hozz létre egyet
ELÁGAZÁS VÉGE
Jelentkezz be

Feltételes elágazás (szelekció): az utasításoknak egy meghatározott feltételtől függő végrehajtását írja elő.

Kétágú szelekció:

HA a címzett szerepel a címlistában AKKOR
       válaszd ki az e-mail címet a listából
EGYÉBKÉNT
       írd be az e-mail címet a címzett rovatba
ELÁGAZÁS VÉGE


Többágú szelekció:

HA kicsúszott a vezeték a gépből AKKOR
       dugd vissza
EGYÉBKÉNT HA kikapcsolták a főkapcsolót AKKOR
       kapcsold be
EGYÉBKÉNT
       vidd el a szervízbe
ELÁGAZÁS VÉGE

A feltételes elágazás egyes ágaihoz tartozó utasításokat célszerű behúzással leírni az algoritmusban. Így könnyen áttekinthető szerkezetet alakítunk ki.

A feltételes elágazások gyakran arra az esetre is utasítást adnak, amikor nem teljesül a feltétel. Ekkor kétágú szelekcióról beszélünk. E-mail írásánál például beírjuk az ismerősünk címét a Címzett rovatba. De ha szerepel a címlistánkban, akkor a gépelés helyett elegendő onnan kiválasztani.

Bonyolultabb esetben kettőnél több ágra szakadhat az elágazás. Ha például nem indul el a számítógép, akkor ennek többféle oka is lehet.


Feladatok: egészítsük ki a szekvenciális feladatainkat feltételekkel!

1. Alkossuk meg a teafőzés algoritmusát!

2. Alkossuk meg a telefonálás algoritmusát!

3. Alkossuk meg a hétvégi, reggeli felkelés algoritmusát!



-------------------------------------------------------------------------


Forrás: Irány az ECDL! a középszintű érettségi! tankönyv (Nemzeti Tankönyvkiadó)

2018. október 3., szerda

2018.10.03. Gyakorlás

Az ELTE SCRATCH oldalán elkezdtük az alapozó leckéket. Az első leckében papagájt röptettünk, a mentést legközelebb tanuljuk meg.