Fejezetek
Mint ahogy a görög vagy a szanszkrit nyelv létezése történeti tény, nem pedig feltétlen logikai szükségszerűség, ugyanúgy józanul feltételezhetjük, hogy a logika és a matematika is történeti eredetű és esetleges kifejezési formák.
Neumann János
Az algoritmusoktól és programoktól gyakran kiveri azokat a hideg verejték, akik úgy érzik, nem értenek hozzá matematikailag. Az algoritmusok azonban körülvesznek minket a mindennapi életünkben, és nem csupán a számítástechnika világába tartoznak. Nem is gondolnád, de egy recept elkészítése, egy rejtvény vagy akár a sportban ismétlődő mozdulatok végrehajtása is algoritmusnak tekinthető. A SlashData elemző cég becslése szerint 2019-ben legalább 19 millió aktív számítógép-programozó volt világszerte. 2030-ra pedig a becslések szerint a regisztrált webfejlesztők száma 45 millióra duzzad világszerte. Ez remek ok arra, hogy megtanuljunk algoritmust írni: hiszen így alkalmazkodhatunk a jövő társadalmának alakulásához!
A Superprof blogja ebben a cikkben megosztja veled a legjobb matekos tippjeit ahhoz, hogy megtanulj algoritmust kódolni!
Barkácsolnál? Készíts papírkúpot!

Mi az algoritmus a matematikában?
A tanulók már felsős korukban találkoznak algoritmusokkal matematika illetve számítástechnika órán. A szorzótáblák alsóban, az osztás, a hányados kiszámítása stb. mind olyan algoritmusok bemutatása, amikre a tanulóknak későbbi tanulmányaik szükségül lesz.
Az algoritmus definíciója a következő: rendezett utasítások sorozata, amik célja az eredmény megtalálása az ismert információk alapján. Ahhoz, hogy jól működő algoritmusokat hozzunk létre, három előzetes kérdést kell megválaszolnunk:
• Mi az a változó?
• Melyek a lehetséges változótípusok?
• Milyen utasítások alapján rendezhetem a műveleteket?
A matematika órán az algoritmus célja gyakran az, hogy ciklusban ismételje az utasításokat addig, amíg az ismert és ismeretlen információkból megtaláljuk a végeredményt . Ehhez meg kell tudnunk határozni az ismeretlen változókat. A változó egy doboz formában tárolt információ (angolul data), amit a program a neve segítségével azonosít.
A változók numerikusak (szám), szövegesek (karakterlánc) vagy logikai típusúak (a doboz „igaz” vagy „hamis” értéket tartalmaz) lehetnek.
Vegyük például egy étel recept alapján való elkészítésének példáját: a szakács egyenként hajtja végre a lépéseket, hogy elérkezzen a végeredményhez, ami egy több hozzávalóból összeállított étel. Sematikusan a főzés során azt mondjuk: „ha adunk hozzá sót”, „akkor az étel túl sós”, „ezért adjunk hozzá kevesebb sót.” Cseréld ki a fűszereket háromszögre, a zöldségeket téglalapra, mindezt fűszerezd meg szószvektorokkal, egyenletjegyekkel és egyszerű főzéssel, és máris te leszel az aritmetika főszakácsa!
Térjünk vissza a számításunkhoz: Az utasításokat a program számára érthető nyelven kell megfogalmaznunk, hogy az algoritmus rá tudjon jönni a végeredményre. Az ember tehát természetes nyelvet fog használni, legtöbb esetben az anyanyelvét vagy az angolt. Egy gép azonban csak egy adott programozási nyelvet fog megérteni (C nyelv, C++, Java, Javascript, Python kód, PHP stb.). Az algoritmusokhoz használt nyelveket "pszeudokódnak" nevezik, mivel az emberek természetes nyelve és a programozási nyelv között vannak. Így tudsz algoritmusokat írni anélkül, hogy feltétlenül számítógépes programozást kéne tanulnod. Az algoritmus célja, hogy leírja, mi történik egy ilyen vagy olyan utasítás végrehajtása során. Például egy gyalogátkelőhelyen való átkeléskor az agy a következő algoritmust hajtja végre:
• Balra nézek, jobbra nézek,
• Ha nincs autó,
• Akkor átkelek,
• Ellenkező esetben (ha van autó) nem kelek át, hanem várok. Ezért matematikai értelemben le kell írni, mi történik az egyik vagy az ellenkező esetben. Ehhez azonban szükséged lesz az úgynevezett iteratív és feltételes változókra. Egy algoritmus tehát három lépésből áll:
Minden, amit a matekról tudni akarsz
• Az algoritmus használatához szükséges adatok,
• az elvégzendő műveletek sorrendje,
• a végeredmény.

Egy algoritmus kódolása mindenekelőtt sok logikát igényel! Változók meghatározása egy algoritmus írásához. A változó definíciója a következő: egy ismeretlen adat, ami az algoritmus feldolgozása során átalakul, ingadozik, és megváltozik. Például amikor bejegyzést írsz a Twitteren: a Twitter algoritmusok esetében az üzenet változónak számít. Kezdetben üres, az üzenet fokozatosan megtelik betűkkel, amíg el nem éri a maximális 280-karakteres méretét. Ebben az esetben a változó az „üzenet a Twitternek”, és az információ ebben a változóban lesz tárolva. A memóriában változóként megőrizhető szöveget karakterláncnak nevezzük. De tizedes számok alapján is képezhető változó: 0,1; 0,011; 0,12; ...; 0,999 stb. Ehhez tudnod kell, hogy a számítógépes programok és a matematikai programok csak egész számokat (0, 1, 2, 3, 4, 5 stb.), valós és összetett számokat képesek tárolni, és nem ismerik fel a betűket.
Amikor algoritmust tervezel, minden változóhoz meg kell tudnod adni, hogy egész, valós vagy komplex számról van-e szó. A cél egy olyan helyzet leírása, ami adott számú alkalommal ismétlődik. Például amikor egy telefon ébresztőjét programozzuk, azt állítjuk be, hogy hétfőtől péntekig minden reggel 6 órakor csörögjön. Ahelyett, hogy egyenként felsorolnád az egyes műveleteket (ébredés:6:00) és kizárnád a listából a szombatot és vasárnapot, úgy kell megfogalmaznod az utasítást, hogy „hétfőtől péntekig minden nap reggel 6-kor csörögjön az ébresztő.” A változók kezeléséhez operátorokat kell használni:
• Numerikus változók esetén: a +, -, x, ÷ jelek és a hatványjel,
• Karakterláncok esetén: a & vagy a + jelek (két karakterlánc összefűzéséhez),
• Logikai változók esetén: „és”, „vagy” és „nem” elemek.Az algoritmus tehát lehetővé teszi, hogy a változókon alapulva az utasítást egy ciklusban ismételjük meg számos iteráción keresztül.
A nevezetes azonosságok és szorzattá bontás praktikái
Iteratív és feltételes ciklusok az algoritmusokban
Iteratív ciklusnak, vagy iterációnak nevezzük azt, amikor egy utasítás vagy utasításcsoport adott számú ismétlését rendeljük el. Az online matematika órádon a végeredmény eléréséhez az algoritmus egy ciklust egy adott mennyiségben fog lefuttatni, és ugyanazt a műveletet alkalmazza ennek a ciklusnak minden iterációjára, ezt angolul a „for” szóval jelöljük. Ha nem tudod, hány iterációra van szükség, addig kell folytatnod, amíg az iteratív struktúra el nem éri a végeredményt. Innen származik az angol „while” (amíg) utasítás használata. Például amíg valaki nem érti a programozási gyakorlatokat, addig a hét minden estéjén megismétli a gyakorlatokat. Ha sikerül hibátlanul megcsinálni a feladatot, akkor továbbléphetünk. Ha nem, kezdjük elölről. A végén ne felejtsd el megadni a ciklus leállításának feltételét, hogy a program leállítsa a műveletet, így elkerülheted a végtelen ciklus létrehozásának veszélyét! Az „EndIf” (VégeHa) vagy az „IfEnd” (HaVége) vagy akár az „End” (Vége) feliratot látjuk az egyszerű algoritmusok szintaktikai halmazának végén.
Hogyan számold ki a meridiánt?
Milyen eszközöket használjunk az algoritmus elkészítéséhez?
Előfordulhat, hogy a diákoknak már felső tagozatban algoritmusokat kell írniuk. A programozási nyelvekkel foglalkozó kurzusok egyre korábban jelennek meg az iskolai tantervekben.A felsősök a következő eszközöket tudják használni a matematika órán:
- Algoblocs,
- Robotprog,
- Scratch.
Középiskolai szinten a következő megoldások vannak az algoritmusokkal való ismerkedéshez:
- Algobox,
- BlocksCAD,
- Beetle Blocks,
- Python,
- Scilab,
- Xcas.
A szoftver, amit leggyakrabban használnak arra, hogy segítségével a tinik felfedezhessék a programozás világát a Scratch. Ez a szoftver lehetővé teszi, hogy a tanuló szórakoztató és kreatív kezdő kurzusok során algoritmusokat próbáljon ki. Az algoritmusok és a programozás összekapcsolása révén a felhasználó saját interaktív történeteket, játékokat és animációkat programozhat. A Scratch ingyenesen elérhető online. Középiskolai szinten az algoritmus gyakorlás csúcsa a python programozási nyelv. Ezt a programozási nyelvet, amiről úgy tartják, hogy intuitív és viszonylag könnyen megtanulható, a középiskolai informatikai órán is megismerheted. Ahhoz, hogy a Python nyelven algoritmust hozz létre a neten is rengeteg ingyenes forrást találsz.

Algoritmikus feladatok gyakorláshoz
Gyakorlat teszi a mestert, ez az algoritmusoknál sincs másképp. Itt van például két kis gyakorlat az induláshoz és az alapvető algoritmusok felépítéséhez.
Első Feladat:
Tegyük fel, hogy van egy 100 kockából álló halmazunk. Egy gyerek tornyokat épít a kockáival.
• 1. lépés: 1 kocka,
• 2. lépés: 3 egymásra rakott kocka (2 kocka az alján és egy a 2. sorban),
• 3. szakasz: 6 egymásra helyezett kocka (3 kocka az alján, 2 a 2. sorban és egy a 3. sorban). Milyen magas tornyot építhet, és hány kocka marad? Először is határozd meg a 4. lépésben, majd az 5. lépésben egymásra rakott kockák számát. Hány kockára van szükség ahhoz, hogy a 3. lépésből a 4. lépésbe, majd a 4. lépésből az 5. lépésbe, majd az (n-1) lépésből az n lépésbe érkezz?
Végezd el a következő algoritmust, aminek célja, hogy megjelenítsd a 100 kockával végrehajtható lépések N számát és a fennmaradó kockák R számát.
Hogyan hozz létre lenyűgöző geometriai mintákat?
Második feladat:
Tervezz egy algoritmust, ami magában foglalja egy 1 és 5 közötti szám kiválasztását, amíg a megfelelő választ meg nem találjuk. Íme egy kis segítség az utasítások írásával: Az N változó egy egész szám Kezdjük az N ← 0.val Írd be, hogy: „Írj be egy számot 1 és 5 között”,Amíg N < 1 vagy N > 5 Olvasd be az N-tHa N < 1 vagy N > 5, majd írd be: „Helytelen bejegyzés . Kezdd elölről.”Vége, ha vége. Elveszettnek érzed magad? A Superprof azért van, hogy segítsen jobban megérteni az algoritmikus matematikai függvényeket! Ne habozz, csekkold a közeledben lévő programozás és matematika tanárok profilját! Szívesen segítenek megérteni a programozást, sok személyre szabott gyakorlat és hasznos tanács segítségével!Szóval készen állsz arra, hogy programozóvá válj?
Ismerkedj meg az osztás rejtelmeivel!
A platform , amely összeköti a magántanárokat és a tanulni vágyókat