Algoritmus – anime stílusú fiú a táblán teljes folyamatábrával (Start–End).

Programozási alapismeretek

Algoritmusok fogalma

Az előző részben megnéztük, mi is az az algoritmus, honnan ered a szó, és hogyan találkozunk vele a hétköznapokban. Most itt az ideje, hogy kicsit közelebb menjünk a programozás világához, és megtanuljuk az alapfogalmakat, amelyek nélkül nem tudunk algoritmust írni.

Ezek elsőre talán ijesztően hangzanak – változó, konstans, értékadás –, de ha belegondolsz, mindennapi dolgokat fednek le.

Egy változó olyan, mint a bögréd: ma teát töltesz bele, holnap kakaót – a tartalma változik, de maga a bögre ugyanaz marad.

Egy konstans olyan, mint a hét napjai: mindig ugyanaz a sorrend, hétfő után kedd jön, ezen nem tudsz változtatni.

Az értékadás pedig olyan, mint amikor beállítod az ébresztőt a telefonodon: kiválasztasz egy számot (mondjuk 6:30), és onnantól kezdve a telefon ehhez tartja magát.

Ebben a fejezetben tehát sorra vesszük:

  • hogyan írhatunk le egy algoritmust mondatszerűen,

  • mik azok az adatok, amelyeket a számítógép kezel,

  • mit jelent a Be és Ki utasítás,

  • hogyan működik az értékadás,

  • és miért fontos a műveleti sorrend és a logika.

A végére tisztább lesz a kép, és meglátod: az algoritmusok világa sokkal barátságosabb, mint amilyennek elsőre tűnik. 😉

Mondatszerű leírás

Az algoritmus lépéseit természetes nyelven írjuk le. Akkor jó, ha pontosan meghatározza:

  • mit kap (BE – bemenet)

  • mit ad vissza (KI – kimenet)

  • milyen lépésekben halad végig

Példa:
„Kérj be két számot, add össze, és írd ki az eredményt.”

Ez egy mondatszerű leírás, ami gyorsan és könnyen érthető.

Előnye: egyszerű, bárki számára érthető, nem kell hozzá programozói tudás.
Hátránya: könnyű homályosan fogalmazni („számolj ki valamit” → de mit is pontosan?). Ezért a programozásban rövid, egyértelmű, utasító mondatokat és fix formátumot használunk.

👉 Példa a homályos vs. pontos megfogalmazásra:

  • Homályos: „Számítsd ki a diák átlagát.”

  • Pontos: „Olvasd be a három jegyet, add össze, oszd el hárommal, és írd ki az eredményt.”

Milyen egy jó adatleírás?

Amikor programot írunk, fontos pontosan meghatározni, hogy milyen adatokkal dolgozunk. Ez segít a számítógépnek abban, hogy értse, mit szeretnénk vele számoltatni vagy feldolgoztatni.

Van egy változója – olyan memóriahely, melynek értéke változhat a program futása közben. Formája: Név : típus
Példa:
szám : egész
átlag : valós
név : szöveg
siker : logikai                        // igaz vagy hamis

Van egy konstans értéke – Olyan adat, amihez nem nyúlunk hozzá: értéke a program futása alatt nem változhat. Olyan, mint a hét napjai száma (mindig 7), vagy a pi értéke.
Példa:
napokHet : egész(7)
PI : valós(3.14159)

Meghatározott típusa van – milyen fajta adat lehet
Meghatározza, milyen értéket tárolhatunk és milyen műveletek értelmesek rajta. 
Alapok: egész, valós, szöveg, logikai
Összetett típusok: tömb (lista), rekord (adatcsomag)
Formája: Típus típusNév = (struktúra).
Példa:
Típus Diak = Rekord {nev : szöveg, eletkor: egész, atlag: valós}
Típus SzamLista = Tömb(1..10 : egész)          //10 elemű egész lista

Tipp:

  • Adj típust minden változónak
  • Konstans értéket nem módosítunk
  • Tömbnél figyelj az indextartományra (1..10)
  • A változónév legyen beszédes: jegyek, pontok

Beolvasó (BE) és kiíró (KI) utasítások

A számítógép önmagában nem tudja, honnan vegyen adatokat, és mit kezdjen velük. Ezért kell BE és KI utasításokat használnunk.

Mit jelentenek?

BE: kérünk/olvasunk értéket és eltesszük változókba
KI: kiírunk szöveget vagy számolt értéket a képernyőre

Formájuk:
BE: változók felsorolása
KI: kifejezések felsorolása

Változók = amibe olvassuk (pl. a, b, nev)
Kifejezések = amit kiírunk (pl. Összeg: )

Példa:

Két szám összege
BE: a, b
KI: „Összeg: „, a+b

Üdvözlő szöveg
BE: nev
KI: „Szia, „, nev, „!

Tanulók magyarázzák az algoritmus fogalmát a BE és KI utasításokon keresztül a táblánál.

Értékadó utasítás (assignment)

Mit jelent? 

Az értékadás azt jelenti, hogy egy változó felveszi egy kifejezés pillanatnyi értékét.
Formája: 
változó := kifejezés

Bal oldalon mindig változó (vagy tömb-elem, pl. jegyek), jobb oldalon mindig valami számolható áll: a+b, max(a,b) stb.

Fontos különbség: 
:= (értékadás) nem ugyanat, mint = (egyenlőség vizsgálat a feltételekben)

  • := → értékadás (új értéket teszünk a változóba)

  • = → összehasonlítás (pl. „egyenlő-e két szám?” – ezt a feltételekben használjuk)

Például:

  • x := 5 → a változó mostantól az 5 értéket tárolja.

  • x = 5 → logikai vizsgálat, igaz vagy hamis választ ad.

Példa – átlag 3 jegyből
BE: J1, J2, J3
osszeg := J1 + J2 + J3
atlag := osszeg / 3
KI: „Átlag:”, atlag

Ha a beolvasott jegyek: 4, 5, 3, akkor:

  • osszeg := 4+5+3 = 12

  • atlag := 12 / 3 = 4

  • KI: „Átlag: 4”

Algoritmus fogalma – értékadó utasítás (:=) magyarázata a táblán, két diák szemlélteti.

Műveleti sorrend

Amikor a számítógépnek több műveletet kell elvégeznie, mindig tudnia kell, melyikkel kezdje. Ha nem tartanánk be a sorrendet, teljesen más eredményeket kapnánk.

Alapszabály: balról jobbra haladunk, kivéve, ha a zárójelek mást mondanak.
👉 Ha bizonytalan vagy, inkább zárójelezz!

Sorrend:

Függvények – pl. abs(x), max(a,b), round(x)

Egyoperandusú (unáris) műveletek – pl. -x (előjeles mínusz), nem x (logikai negálás)

Kétoperandusú (bináris) műveletek – pl. *, /, div, mod, +, -

Relációk (összehasonlítások) – pl. =, <, >, , ,

Logikai műveletek sorrendje:
nem → erősebb, mint az és, ami erősebb, mint a vagy.

Példák:

Szorzás előbb van, mint az összeadás

KI: 2+3*4                 //3*4 = 12, majd 2+12 -> 14
KI: (2+3)*4             //zárójel előbb: 5*4 -> 20

Unáris mínusz vs zárójel

KI: -(3+1)             //előbb 3+1=4, majd unáris mínusz -> -4

Függvény előbb, mint művelet

KI: max(3, 7) -2   //max ->7, majd 7-2 -> 5

Relációk a legvégén

BE: a, b
KI: a+2 > b  //előbb a+2, utána hasonlítunk b-hez -> igaz/hamis
példa: a=5, b=7 -> a+2=7 -> 7>7? -> hamis

Logika
Általános gyakorlat: a nem erősebb, mint az és, ami erősebb, mint a vagy

Algoritmus fogalma – műveleti sorrend és logikai műveletek magyarázata két diákkal a táblánál.
Mi az algoritmus? – anime stílusú lány, aki végzett a leckével a Programozási alapismeretek cikkhez