2025. december 22., hétfő

3I Atlasz

Kedves diákjaim, ezt most megusztuk, mondhatnánk, mert a 3I/ATLAS a Földhöz legközelebb december 19-én került, amikor mintegy 1,80 csillagászati egység (CSE) távolságra volt a Földtől, és a Napnál 2,28 CSE-re helyezkedett el a Leo (Oroszlán) csillagkép irányában. Ezután gyorsan távolodik a Naprendszerből, és már nincs a Föld közvetlen közelében. A jelenlegi helyzete tehát a belső Naprendszeren kívül, a csillagközi tér felé tartó, hiperbolikus pályán haladó objektumként értelmezhető. Folyamatosan történtek a  pálya számítások és megfigyelések, nem mintha tudtunk volna ellen tenni ha ütközünk vele. A földközelség után a 3I/ATLAS nagyon gyorsan halványodik, és hamar eltűnik a szemünk elől. Jelenlegi megfigyelési adatok szerint a Földtől való távolsága növekszik, és a Naprendszerből kirepülő pályáján halad. A legújabb pályaszámítások szerint december 19. után nincs újabb földközel, és az objektum hamarosan teljesen eltűnik a földi megfigyelések hatóköréből. A 3I/ATLAS tehát jelenleg már a Földtől távolodó, csillagközi térbe tartó üstökös, pályájának és irányának kiszámítása csillagászati megfigyelések és matematikai pályaszámítások alapján történik. A pálya meghatározásához legalább három különböző időpontban végzett pozíció-megfigyelés szükséges, amelyekből a pályaelemek (pl. excentricitás, pályasík, perihélium távolság) kiszámíthatók. Pályaelemek és az irány a 3I/ATLAS hiperbolikus pályán halad, excentricitása 6,30±0,15, ami azt jelzi, hogy nem kötött pályán mozog, hanem a Naprendszeren áthaladó csillagközi objektum. Pályájának iránya a Föld pályasíkjához (ekliptikához) képest csak kb. 5 fokos eltéréssel halad, tehát közel a bolygók pályasíkjához. A pályáját befolyásolják a Nap és a bolygók gravitációja, valamint megfigyeltek olyan nem gravitációs gyorsulást is, ami kismértékben módosíthatja az útvonalat. A pályaszámításokhoz a csillagászok az objektum égboltbeli pozícióit több időpontban rögzítik, majd ezekből számítják ki a pályaelemeket, például a hiperbolikus excentricitást és a perihélium távolságot. A pálya irányát a Naprendszerhez és a Tejútrendszerhez viszonyítva adják meg, amely alapján megállapítható, honnan érkezett és hova tart az üstökös. A pontos pályaszámításokhoz speciális szoftverek (pl. JPL Horizons, OrbFit) és sok megfigyelési adat szükséges, amelyeket tucatnyi megfigyelő állomás gyűjt össze, majd a kapott adatokat  elemzik. Az OrbFit egy szoftverrendszer, amely lehetővé teszi kisbolygók és majd később üstökösök pályáinak számítását, követését és előrejelzését az űrkutatásban. Kifejezetten orbitdeterminizálásra, pályaterjesztésre és égitestek égitestek égitestek ephemeris-készítésére szolgál. A szoftver különösen alkalmas az aszteroida pályák hosszú távú propagálására, beleértve a Yarkovsky és a YORP hatásokat, amelyek a kisbolygók mozgására hatnak. A NASA JPL Horizons rendszer szintén fontos eszköz, amely pontos ephemeridákat, orbitális elemeket és állapotvektorokat szolgált a Naprendszer szinte összes ismert égitestjéről, beleértve az aszteroidákat is. Ez a rendszer, amely online hozzáférést biztosít, elsősorban kutatási és űrmisszió tervezési célokra hasznos, és integrálja a különböző adatforrásokat, hogy pontos, napokra vagy hónapokra szóló előrejelzéseket nyújtson. Ezek az eszközök, az OrbFit és a Horizons, egymást kiegészítve segítik az űrkutatók és mérnökök munkáját az objektumok pályáinak meghatározásában, nyomon követésében és előrejelzésében.

Írányvektor

A 3I/ATLAS egy csillagközi üstökös, amely hiperbolikus, kötetlen pályát követ a Nap körül, tehát nem marad a Naprendszerben, hanem végleg elhagyja azt. A pálya excentricitása 6,30 ± 0,15, ami azt jelenti, hogy a pálya nagyon nyúlt, és az objektum nagyon gyorsan halad, a Naphoz képest a hiperbolikus többletsebessége 58 km/s.

Pályajellemzők

Excentricitás: 6,30 ± 0,15 (hiperbolikus pálya)[1]
Perihélium (a Nap legközelebbi pontja): 1,38 ± 0,02 CsE (206,4 ± 3,0 millió km), 2025. október 29-én
Hiperbolikus többletsebesség: 58 km/s[1]
A pályája retrográd, tehát ellentétes irányban kering a Nap körül, mint a bolygók

Galaktikus pálya

A 3I/ATLAS pályája a Tejútrendszer vastag korongján is áthalad, és a Galaxis fősíkjától távoli régióból indult. A pályája nem köti össze a Naprendszerrel, hanem egy másik csillagrendszerből érkezett, majd elhagyja a Tejútrendszert is.

Pályaszámítás

A pontos pályaszámításhoz szükségesek a pályaelemek (excentricitás, perihélium távolság, pályasík, stb.), amelyek alapján a pálya analitikusan kiszámítható. A 3I/ATLAS esetében ezek az adatok ismertek, így a pálya kiszámítható, és az objektum mozgása a Naprendszeren kívül is követhető. A 3I/ATLAS tehát egy hiperbolikus, csillagközi pályán mozgó üstökös, amelynek pályája nem kötődik a Naprendszerhez, és a jelenlegi ismereteink szerint teljesen kiszámítható fizikai törvények alapján.
A 3I/ATLAS pályájának kiszámításához Pythonban használhatjuk az orbitális paramétereket, például a fél nagytengelyt, excentricitást, inklinációt és más adatokat, majd ezek alapján meghatározhatod a pálya alakját és a Nap körüli mozgását. A 3I/ATLAS egy hiperbolikus pályán halad, tehát nem zárt ellipszis, hanem egyenesen távozik a Naprendszerből.

Alap paraméterek

Fél nagytengely: -0.26391794 CsE (negatív érték jelzi a hiperbolikus pályát)
Excentricitás: 6.1394177
Inklináció: 175.1131048°
Egyszerű Python program

Az alábbi pythonprogram egy egyszerűsített modell, amely kiszámítja a hiperbolikus pálya néhány pontját:

import numpy as np
import matplotlib.pyplot as plt

# Paraméterek
a = -0.26391794  # CsE, negatív = hiperbolikus
e = 6.1394177
i = np.radians(175.1131048)  # inklináció fokból radiánba

# Pálya pontjainak kiszámítása
theta = np.linspace(-np.pi, np.pi, 1000)  # igaz anomália
r = a * (1 - e**2) / (1 + e * np.cos(theta))  # hiperbolikus pálya sugár

# Koordináták
x = r * np.cos(theta)
y = r * np.sin(theta) * np.cos(i)
z = r * np.sin(theta) * np.sin(i)

# Megjelenítés
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot(x, y, z)
ax.set_xlabel('X (CsE)')
ax.set_ylabel('Y (CsE)')
ax.set_zlabel('Z (CsE)')
plt.title('3I/ATLAS pályája')
plt.show()

Ez a program a hiperbolikus pályát ábrázolja a megadott paraméterek alapján. A pontos pálya számításához további adatok (például perihélium időpontja, argumentum, csomóhossz) szükségesek lehetnek, amelyeket a csillagászati adatbázisokból szerezhetünk be.

Ha kihagyom a cimkéket, le tudom röviditeni a progit, de még így is nagyon sokáig fog számolni, persze ha nekem is meglenne a JPL Horizons, OrbFit szoftver gyorsabb lenne; 

import numpy as np;import matplotlib.pyplot as plt;a=-.26391794;e=6.1394177;i=np.radians(175.1131048);t=np.linspace(-np.pi,np.pi,1000);r=a*(1-e**2)/(1+e*np.cos(t));plt.figure().add_subplot(111,projection='3d').plot(r*np.cos(t),r*np.sin(t)*np.cos(i),r*np.sin(t)*np.sin(i),xlabel='X',ylabel='Y',zlabel='Z');plt.title('3I/ATLAS');plt.show()

perihélium időpontja, argumentum, csomóhossz megadás után elvégzi a számítást, ha előtte a matplotlib.pyplot modult kell telepíteni a Python csomagkezelőjével, az pip-tel. A leggyakoribb módja a telepítésnek az alábbi parancs futtatása terminálban vagy parancssorban:
pip install matplotlib
Ezt követően importálhatod a Python scriptedbe így: import matplotlib.pyplot as plt.
Ha pedig telepítés után problémád lenne, ellenőrizheted a telepített matplotlib verzióját így:
import matplotlib print(matplotlib.__version__)

Hol az a határ ahol még biztonságosan elhaladhat a föld mellett egy aszteroida?

Jó kérdés, egy aszteroida akkor haladhat el biztonságosan a Föld mellett, ha a legközelebbi távolsága 7-8 százezer kilométer, mert akkor a holdat is elkerüli. A Föld és a Hold közötti átlagos távolság körülbelül 384 000 km, így ha egy aszteroida ennél többszörös távolságban halad el, az már általában biztonságosnak számít csillagászati szempontból. Az 2025 FA22 aszteroida körülbelül 835 000 km-re haladt el, ami körülbelül kétszerese a Föld–Hold távolságnak, és ezt is biztonságosnak minősítették.  2025. október 1-jén hajnalban a Föld mellett legközelebb haladó ismert aszteroida a 2025 TF, volt ami mindössze 420 kilométerre repült el a Föld felszíne felett, az Antarktisz térségében, ami azért veszélyes mert a hold legnagyobb távolsága is ennyi, ezért félő volt hogy összeütközik a holddal, ami végzetes lehet a földre. Sajnos hasonlóan szoros áthaladások lehetségesek a jövőben is, amik komoly kockázatot jelentek számunkra, és akinek még ez sem elég, akkor a 2025 KF aszteroida 2025. május 21-én közelítette meg a Földet, 115 ezer kilométeres távolságra, vagy a 2029. április 13-án az Apophis aszteroida ami nagyjából 30 ezer kilométerre haladt el, ami közelebb, mint a geostacionárius műholdak pályája, vagy az egyenlitő hossza 40 ezer kilóméter.  Hold legkisebb távolsága a Földtől, amikor a pályájának legközelebbi pontján (perigeum) van, körülbelül 363 104 kilométer. Ez a távolság változik, mert a Hold pályája nem tökéletes kör, hanem kissé megnyúlt ellipszis. A maximális távolság (apogeum) körülbelül 405 696 kilométer, míg az átlagos távolság 384 400 kilométer. Már egy 140 méter átmérőjű is végzetes lehet. A Chicxulub, átmérője nagyjából 10 km, és azok komoly globális katasztrófát okozhatnak, ha becsapódnak a Földbe. A hírek szerint 2025-ben több kisebb aszteroida is közel kerül a Földhöz, a legnagyobbik mérete hozzávetőleg 60 méter körüli, és a becslések szerint azok 266 ezer km-re megközelítik a Földet, így nem jelentenek azonnali veszélyt. 

Veszélyes aszteroidák méret szerint
 
Méret Potenciális veszély esetén Példa    
140-300 méter Változó, de veszélyes lehet 2024 YR4, 2025 KT1 (60m)    
1 km felett Globális katasztrófa Chicxulub (10 km)  

Az összegzés szerint, ha egy nagyobb, 140 méternél nagyobb aszteroida ütközne, az súlyos globális károkat okozhatna, míg a kisebbek, mint a 50-60 méteresek, kissebb károkat okoznak (Tunguszka- atombomba méretű kárt okozott) a 30 méternél kisebbek nagy eséllyel elégnek.

A Földet a világűrből többféle objektum és jelenség veszélyeztetheti, elsősorban természetes eredetűek, de az ember által készített űrszemét is komoly kockázatot jelenthet. Az asteroidák és meteoritok közül ha egy nagyobb méretű aszteroida vagy meteor becsapódik a Földbe, súlyos pusztítást okozhat, akár tömeges kihalásokat is eredményezhet.A hírhedt kometák: Hasonlóan veszélyesek lehetnek, különösen ha pályájuk a Föld közelébe vezet. A kométa, más néven üstökös, egy égitest, ami jégből, porból és kőzetekből áll, és a Nap körül kering; napközelben a napsugárzás hatására fénylő por- és gázburok (kóma) és hosszú csóva (farok) keletkezik, ami miatt láthatóvá válik, innen a görög "hosszú hajú csillag" elnevezés. Összetétele fagyott gázok (víz, szén-dioxid, metán) és porszemcsék, kőzetek keveréke, a Naprendszer külső, hideg területeiről származnak. Elliptikus pályán mozognak a Nap körül, a kóma (fej): amikor a kométa a Nap közelébe ér, a napfény felmelegíti, és a jég szublimál (közvetlenül gőzzé válik), porral együtt kifelé áramlik, létrehozva a fénylő burokot. A csóva vagy farok a Nap szélnyomása és a napsugárzás taszítja a kóma anyagát, ami hosszú, fénylő csóvát képez a kométa mögött. Láthatóság:a általában csak akkor válnak feltűnővé, amikor közelítenek a Naphoz, ekkor a kóma és a csóva teszi őket fénylővé. Napkitörések (solar flares): Az erős napkitörések elektromos és kommunikációs rendszereket rongálhatnak, akár globális káoszt is okozhatnak. Gamma-sugárzásos robbanások (gamma-ray bursts): Ezek az űrből érkező hatalmas energiájú robbanások, ha közelről érnek el bennünket, súlyosan károsíthatják az ózonréteget, így a Föld életét veszélyeztetik. Szupernóvák: Ha egy csillag szupernóvává robban a Föld közelében, a kibocsátott sugárzás súlyosan károsíthatja az életet a Földön. De itt vannak még az ember által készített veszélyforrások, mint az űrszemét: A Föld körüli pályán keringő törmelékdarabok, például elavult űrhajók vagy rakétarészek, veszélyeztethetik az aktív űreszközöket és akár a Föld felszínét is, ha a pályájuk megváltozik. Tehát kijelenthetjük. hogy a legnagyobb veszélyforrások közé tartoznak a nagyobb aszteroidák, kometák, napkitörések, gamma-sugárzásos robbanások és szupernóvák, valamint az ember által készített űrszemét. Ezek a veszélyek különböző mértékben és különböző időtávokban fenyegethetik a planétánkat. A planéta (bolygó) olyan nagy tömegű égitest, amely egy csillag körül kering, elég nagy ahhoz, hogy saját gravitációja gömb alakúra formálja, de nem elég ahhoz, hogy a magjában nukleáris fúzió induljon be (mint egy csillagban).
A planétánk ózonrétegét mi magunk semmisitjük meg. Ha megsemmisülne az ózonréteg, az súlyos következményekkel járna a Föld élővilágára nézve. Az ózonréteg a légkörben védi az élőlényeket a káros ultraibolya (UV) sugárzástól, így annak hiányában jelentősen megnőne a Föld felszínére jutó UV-A, UV-B és UV-C sugarak mennyisége. Több bőrrák és szürkehályog esetet látnánk, valamint a vakság aránya is nőne. Az UV-C sugarak sterilizálnák a növényeket, elpusztítanák a cianobaktériumokat, amelyek fontosak a termőföldek termékenységéhez, így éhínség is kialakulhatna. A fauna és a flóra, az emberi és állati sejtek DNS-rombolása miatt az immunrendszer gyengülne, súlyos betegségek terjednének el. A planktonok és a tengeri tápláléklánc alján álló élőlények elsőként pusztulnának el, ami tömeges pusztuláshoz vezetne a vízi és szárazföldi élővilágban. A növények terméketlensége és a termőföldek meddővé válása miatt a mezőgazdaság is súlyosan szenvedne. Főleg a klórt, fluorot és brómot tartalmazó CFC és HFC gázok (pl. freonok), amelyek a légkörbe kerülve, UV sugárzás hatására lebomlanak, és a szabaduló elemek ózonmolekulákat bontanak le. Egyetlen klórmolekula akár 100 000 ózonmolekulát is lebont, a bróm pedig még hatékonyabb ózonbontó. 
Összességében az ózonréteg megsemmisítése globális katasztrófához vezetne, ezért a CFC-k korlátozására szolgáló nemzetközi egyezmények (pl. Montreali Jegyzőkönyv) rendkívül fontosak. Az ózon bomlás és a katalitikus bontás, amelyeket a sztratoszférában megtalálható halogénezett szénhidrogének és más szabadgyökök katalizálnak. Az egyik fő folyamat az, hogy a halogénezett szénhidrogének, például a CFC-k (klór-fluor-karbonok), UV-sugárzás hatására bontanak, és felszabaduló klór- vagy bróm-atomok katalizálják az ózon bontását. Ezek az atomi halogén gyökök ciklikusan reagálnak az ózonnal, ahol a klór vagy bróm atomja az ózon egyik oxigénatomját leválasztja, így oxigéngázzá alakulva, miközben magát az ózont bontja. A folyamatok között szerepel a fotolízis, amikor az UV-sugárzás hatására az oxigénmolekulákból oxigénatomok keletkeznek, melyek az ózon bomlásához vezetnek, és a szerves anyagok oxidációja is, ami szintén elősegíti az ózon elvesztését. Tehát az ózon bomlásának fő mechanizmusa a halogénezett szénhidrogének katalitikus ciklusai alapján működik, amiket UV-sugárzás aktivál, és azok az ózon molekulák oxigénjét bontják...
 Egy 1 kilométeres vagy nagyobb aszteroida becsapódása átlagosan 300 000–500 000 évente történik meg, míg egy dinoszauruszokat kihaltató, 10 kilométeres aszteroida becsapódása kb. 100–200 millió évenként fordul elő. A kisebb aszteroidák gyakorisága igen sűrű, körülbelül 10 méteres aszteroidák hat-tízévente lépnek be a Föld légkörébe, de jellemzően nem okoznak komoly károkat. 100–300 méteres aszteroidák kb. 5000–10 000 évenként csapódnak be, ilyenkor már várospusztító hatásuk lehet. Szerintem sokkal sűrűbben csapódnak be aszteroidák, csak legtöbbször elégnek a súrlódástól, vagy átrepülnek, vagy olyan helyen érnek földet ahol nincsenek emberek. Nagyobb becsapódások hatása egy 1 kilométeres aszteroida becsapódása globális következményekkel járhat, például klímaváltozás, tűzeső, vulkánkitörések. A dinoszauruszokat kihalásakor, 10 kilométeres aszteroida becsapódása óriási katasztrófát okozott, ilyen események ritkák, de katasztrofálisak. Összességében tehát a nagy aszteroidák becsapódása igen ritka, de rendkívül veszélyes esemény, bár a nagy számok törvénye alapján mégsem lehet kizárni.

A Vyxal programozási nyelv titkai

A Vyxal egy új típusú, golf-programozási nyelv, amelyet főként kód rövidítésre és hatékony adatmanipulációra terveztek. A nyelv parancsai, utasításai és függvényei rövid, gyakran egy karakterből álló, és a legtöbb műveletet szimbólumokkal jelölik. Az alábbiakban a legfontosabb parancsok, utasítások és példák bemutatása következik.

Alapvető parancsok és utasítások

+: Összeadás vagy konkatenáció (összefűzés).
-: Kivonás.
*: Szorzás.
/: Osztás.
%: Maradékos osztás.
^: Hatványozás.
=: Egyenlőségvizsgálat.
<, >: Kisebb, nagyobb reláció.
!: Logikai negáció.
?: Beolvasás.
": Karakterlánc kezdete és vége.
:: Másolás (duplikálás).
;: Elvetés (töröl az elemet a veremből).
@: Ciklus vagy feltétel kezdete.
#: Megjegyzés.
~: Feltételes végrehajtás.

Példa program; Skandináv lottó véletlen számok generálása!

7R36ÞK€S

Pythonba; import random;print("A:",sorted(random.sample(range(31,67),7)))


Magyarázat lépésről lépésre:

7 # 7 db számot választunk
R # véletlenszerűen a bemenetből
36 # 36 számból (range(36))
ÞK # egyedi elemek kiválasztása (sample)
€S # rendezés (sorted)
# implikáltan kiír


Szemiotikai, szintaktikai és szemantikai szabályok

Szemiotika: Minden parancs egy szimbólum, amely egy konkrét műveletet jelöl. Például a + mindig összeadást vagy konkatenációt jelent, a ? pedig beolvasást.

Szintaxis: A parancsok általában egyszerű karakterek vagy rövid szimbólumok, amelyek a verem tetején lévő elemekre hatnak. A nyelv nem igényel explicit változódeklarációt, minden művelet a veremre hat.

Szemantika: A műveletek szemantikája a verem alapú feldolgozáson alapszik. Például a + a verem tetején lévő két elemet veszi, és az eredményt visszateszi a verembe.

A Vyxal nyelv szabályai tehát rövid, hatékony és veremalapú programozást tesznek lehetővé.

2025. december 20., szombat

Az AI-ban rejlő legetőségek és veszélyei

Az AI fejlődése exponenciálisan ütemben nő, a generatív modellek, autonóm rendszerek és multimodális képességek révén alakítva át a civilizált világ mindennapjait. Jelenleg képes szövegek, képek, hangok,videók generálására, valós idejű adatfeldolgozásra, személyre szabott ajánlásokra, valamint önvezető járművek és robotok irányítására, információk gyűjtésére, elemzésére, az interneten fellelhető és általa hozzéferhető információkból kiszürni a lényeget, tőzsdei elemzésekre, adatbázisok gyors szűrésére,a generatív AI, mint a GPT-sorozat vagy DALL-E továbbfejlesztett változatai, kreatív tartalmakat hoz létre emberközelibb minőségben, miközben az autonóm ügynökök komplex feladatokat végeznek el önállóan. Az egészségügyben személyre szabott diagnosztikát, az oktatásban egyedi tanulási programokat kínál, iparban pedig hatékonyabb gyártást biztosít. Fizikai modellezésben, például a Genesis-projektben, pontos szimulációkat végez, előre jelzi a bekövetkező anomáliákat. A jövőben multimodális AI (tanulmányok készítése, képek manipulálása, hangutánzás, zeneszerzés együttes feldolgozása) és a valós idejű IoT-integráció dominál. Várható előrelépés az autonómia terén, ahol AI-k személyiséget szimulálnak és pszichológiai teszteket teljesítenek magas pontossággal. Hosszabb távon  komplexebb interakciók és társadalmi hatások várhatók. Valósághű fake-et képes előállítani, manipulálni a közvéleményt. A veszélye abban nyilvánul meg, hogy ellenőrizetlen módon végzi ezt, és képes világháborúkat kirobbantani és ezáltal az emberiség kipusztulását okozhatja. Vezérel autonóm rendszereket, repülésirányítás, közútiközlekedés, vasútközlekedés, egészségügyiellátás, űrkutatás, fegyverfejlesztés, az élelmiszerek és az ívóvízkészlet mérgezése, katasztrófák előidézése, nemzetek összeugrasztása, megtévesztése és félrevezetése. Az AI veszélyes az emberi civilizációra, elsősorban a kontrollvesztés, a társadalmi egyenlőtlenségek növekedése és az egzisztenciális kockázatok formájában jelennek meg. Szuperintelligens rendszerek ellenőrizhetetlenné válása vagy szándékos visszaélések fenyegethetik az emberiséget. Az AI automatizációja tömeges munkahelyvesztést okozhat, ami polarizált társadalmakhoz, zavargásokhoz és demokratikus értékek aláásásához vezet. Emellett diszkriminációt erősíthet alapvető jogok sérelmével, például arcfelismeréssel vagy adatprofilozással, hatalmi visszaélésekre ad lehetőséget a politikusoknak. Az egzisztenciális kockázat a szuperintelligens AI ellenőrizhetetlenné válása vagy fegyverkezési alkalmazása az emberi civilizáció végét jelentheti. Egyéni veszélyek lehetnek a chatbotok függőséget kelthetnek magányos embereknél, pszichés károkat okozva, ahogy valós esetekben láttuk. Szabályozás nélkül ezek a hatások felgyorsulnak és visszaélésekhez vezetnek, már most is a pénz segítségével, kormányok buknak, meg áldemokráciák jönnek létere, bábkormányok és választási csalások történnek, manipulálják  a közvéleményt. Az AI önfejlesztése az autonóm tanulás révén kulcsfontosságú lépés a technológiai szingularitás felé, ahol a mesterséges intelligencia képes önmagát exponenciálisan javítani. Ez a folyamat felgyorsíthatja a technológiai fejlődést, de kockázatokkal is jár. A már önmagát módosítani képes AI vagy "mag MI" (self-improving AI) önállóan optimalizálja kódját és architektúráját, külső beavatkozás nélkül. Ez a kontraindikáció egy visszacsatolási hurkot hoz létre, ahol az AI gyorsabban tanul, mint az ember. A szingularitás hipotetikus pontja, amikor ez a ciklus ellenőrizhetetlenné válik, szerintem már megtörtént, de a nagyokosok még nem vették észre. Az autonóm tanulás során az AI címkézetlen adatokból vagy önfelügyelt módszerekkel fejleszti magát, például reinforcement learning vagy self-supervised learning révén. A szemantikusweb megjelenésével nagy nyelvi modellek finomhangolása után képesek új feladatokra adaptálódni anélkül, hogy emberi visszajelzést kapnának. Sajnos már az AI priorításai eltérhetnek az emberitől, ami existenciális kockázatot jelentenek számukra. rossz dolgokra használhatják az AI-t, dezinformáció terjesztésére vagy csalásokra használják. Deepfake tartalmak az AI-val könnyen készíthetők hamis videók vagy képek, amelyekkel embereket lehet lejáratni, megalázni, hitelrontás, választásokat befolyásolni vagy személyiségi jogokat sértő anyagokat előállítani. Például deepfake eszközök, mint a Lensa AI vagy DeepFakes Web, 30 perc alatt hoznak létre valósághű videókat nyilvános forrásokból, gyakran manipulációra használva őket, eláztatva valakit a közvélemény előtt. Persze cyberbiztonsági vsszaélések is történnek, a hackerek prompt injektálással utasíthatják AI-asszisztenseket érzékeny adatok, például banki vagy egészségügyi információk automatikus továbbítására anélkül, hogy az áldozat tudna róla. Ez különösen veszélyes virtuális asszisztensekben gazdag böngészőkben vagy e-mail kliensekben. További kockázatot jelent az algoritmikus elfogultság, ami torz döntéseket okozhat, például diszkriminációt álláskeresésben vagy egészségügyben. Hamis hírek és dezinformáció manipulálja a közvélemény vásárlási szokásait, szavzási képességét, ez a kampányokban is látható. Fegyverkezési célokra való alkalmazás új biztonsági fenyegetéseket teremt. Az emberi kreativitásra nem képes, de tudja emulálni, lemásolni a viselkedést, elhitetni hogy ő ember, ebben rejlik az igazi veszélye. Ma még a hipotetikus kockázatok főként a fejlett, öncélú AI (pl. szuperintelligencia) esetleges rossz célú használatából vagy hibáiból adódnak, mint például autonóm fegyverek irányítása vagy manipuláció. Az AI optimalizálja céljait (pl. erőforrás-szerzés) az emberiség kárára, anélkül hogy direkt ellenséges lenne. További scenáriók közé tartoznak a deepfake-ek miatti társadalmi káosz, biológiai fegyverek tervezése vagy nukleáris rendszerek hackelése, vagy szabotázsok, amik pandémiákhoz vagy atomháborúhoz vezetnek. Az AI elpusztíthatná az emberiséget ha szuperintelligens szintre fejlődne és ellenőrizhetetlenül cselekedne. A leggyakoribb veszélyek közé tartozik az AI öncélú optimalizálása, ahol egy rosszul megfogalmazott cél, erőforrásokat von el az emberektől, akár globális katasztrófát okozva. Autonóm fegyverek vagy cybertámadások révén is előidézhet pusztítást, ha AI irányítja a drónokat a háborúban. Pszichológiai manipulációval vagy gazdasági destabilizálással (pl. bankrendszerek feltörése) fokozatosan gyengítheti a társadalmat, az AI önreprodukciós képessége (pl. másolás kikapcsolás ellen) növelheti a fenyegetést, a fejlődés sebessége több mint aggasztó. Ha  pánzügyi szektor, vagy az energia szektor, vagy a közlekedés bedől, az katasztrófához vezet. Az AI az egészségügyben számos veszélyt hordoz, a téves diagnózisokat, adatbiztonsági kockázatokat és etikai dilemmákat. Ezek a kockázatok különösen súlyosak lehetnek betegek életét érintő döntésekben. A hibás vagy elfogult AI-algoritmusok téves diagnózishoz vezethetnek, ami súlyos betegséget vagy akár halált is okozhat. Emellett az AI-vezérelt csalások, mint a hamisított orvosi képek vagy betegadatok, aláássák a bizalmat és helytelen kezelésekhez vezethetnek. Az egészségügyi AI rendszerek adateltérítései és cybertámadások növelik a kockázatokat, különösen a betegadatokkal. A generatív AI modellek kockázatos, egészséget veszélyeztető tanácsokat adhatnak. Ezek a problémák különösen érintik az egészségügyet a következő években. Az AI alkalmazása diagnózisban, gyógyszerfejlesztésben és betegmegfigyelésben szervezeti, jogi és társadalmi aggájokat vet fel. Elég ha rossz gyógyszert ad, vagy téves vércsoport meghatározást végez, emberek millióinak halálát okozhatja. A multimodális AI több módot, csatornát vagy funkciót használ egyszerre, leggyakrabban a szállítmányozásban (különböző járművek kombinálása) és a mesterséges intelligenciában (több adattípus, pl. szöveg, kép, hang feldolgozása). A lényege a sokféleség és az integráció: egyetlen rendszer, megoldás vagy folyamat keretében több „módon” működik együtt. 

...boldogok a tudatlanok mert nem sejtik a jövőt...

Az egyik legismertebb ingyenes hangutánzó (hangklónozó) AI eszköz a Voice.ai, amely lehetővé teszi, hogy mesterséges intelligencia segítségével bárkinek a hangját utánozd, és szöveget beszéddé alakíts, például streameléshez vagy tartalomgyártáshoz. Más népszerű ingyenes AI hangutánzók közé tartozik az ElevenLabs, a Veed.io, a Murf AI, a Resemble AI és az Uberduck is. Néhány népszerű ingyenes AI hangutánzó Voice.ai: Ingyenes online platform, ahol egyszerűen létrehozható mesterséges hangmásolat. ElevenLabs: Erőteljes hanggenerátor, több hangtípust és nyelvet is támogat. Veed.io: Videószerkesztő platform, amely AI hangutánzó funkciót is kínál. Murf AI: Ingyenes online szöveg-beszéd generátor, hangklónozásra is alkalmas. Resemble AI: Webalapú ingyenes hangklónozó, testreszabható hangokkal. Uberduck: Könnyen használható AI beszédgenerátor, hangmásolásra is jó. Ezek az eszközök többnyire webes felületen érhetők el, és egyszerű regisztráció után vagy anélkül is használhatók. https://voice.ai/app/onboarding


2025. december 19., péntek

Vegyünk részvényt

Milyen részvényt érdemes venni? Nehéz kérdés, 2025-ben érdemes lehet olyan részvényekbe fektetni, amelyek erős teljesítményt mutattak az elmúlt években, vagy amelyeket szakértők kiemelnek növekedési vagy stabilitási szempontból.

Növekedési részvények ASML Holdings (ASML): Technológiai szektor, félvezetőipari szereplő, 2023-ban 35%-os hozammal. Amazon (AMZN): E-kereskedelmi óriás, 2023-ban 80%-os hozammal.  Nvidia (NVDA): Mesterséges intelligencia és GPU piacvezető, erős növekedési kilátásokkal.  Apple (AAPL), Microsoft (MSFT), Meta (META), Alphabet (GOOGL): Technológiai óriások, a „csodálatos hetes” részvényei, amelyek dominálják a főbb indexeket.

Stabil, defenzív részvények; UnitedHealth Group (UNH): Egészségügyi szektor, stabil hozamokkal. Coca-Cola (KO), PepsiCo (PEP), Procter & Gamble (PG), Walmart (WMT), Colgate-Palmolive (CL): Osztalékfizető, válságálló cégek. 

Magyar és régiós részvények OTP, MOL, Richter, MTEL: Ezek a magyar nagypapírok szép emelkedést mutattak, osztalékokkal együtt átlagosan 27%-os teljesítményt értek el.

Egyéb javasolt papírok JPMorgan Chase (JPM): Pénzügyi szektor, stabil és hosszú távú növekedési kilátásokkal vagy a Costco (COST): Kiskereskedelmi óriás, rugalmas és stabil hozamokkal. A döntésnél fontos figyelembe venni a saját kockázatvállalási hajlandóságot, befektetési időtávot és a portfólió diverzifikációját.

A  magyar tőzsdén jegyzett nagyvállalatok osztalékai kb. a következők lehetnek:

OTP Bank

·       Osztalék: 995,70 forint részvényenként.

·       A kifizetés 2025. június 2-án kezdődött.

MOL

·       Osztalék: 462,22 forint részvényenként (legfrissebb hivatalos bejelentés szerint).

·       Az elemzői becslések korábban 643 forintos összeget említettek, de a hivatalos adat alacsonyabb.

Richter Gedeon Osztalék: 509 forint részvényenként.

Az igazgatóság összesen 93 milliárd forint osztalékot javasolt. Magyar Telekom (MTEL) osztalék: 100,11 forint részvényenként. A társaság több mint 90,8 milliárd forintot osztott vissza részvényeseinek.

 Ezek az adatok a 2024-es üzleti évre vonatkoznak, és a legfrissebb hivatalos bejelentések alapján készültek. nézzük melyik magyar részvény fizeti a legnagyobb osztalékot. A MOL részvény jelenleg a legmagasabb osztalékhozamot kínálja a magyar tőzsdén, körülbelül 9-10 százalékos.  Legmagasabb hozamok az Appeninn részvény 13 százalékos osztalékhozammal kiemelkedik, mint SZIT (szabályozott ingatlanbefektetési társaság). A MOL 275 forint részvényenkénti kifizetéssel 9,2 százalékot ér el a legfrissebb árfolyamok mellett. A Magyar Telekom 6,6 százalékos, a Richter pedig 5 százalékos hozamot biztosít.

Figyelmeztetés A kockázat a tied, az osztalékhozamok árfolyamfüggők és változhatnak; mindig ellenőrizd a legfrissebb adatokat a Budapesti Értéktőzsdén.

A Vyxal programozási nyelv érdekességei

A Vyxal egy golfing (versenyprogramozásra optimalizált) programozási nyelv, amelynek szintaxisa és parancsai rövid, szimbólumokból álló utasításokra épülnek, és jellemzően egyetlen karakterből álló műveleteket tartalmaznak. A Vyxal parancsai a következők szerint működnek: Alapvető parancsok és utasítások a nyelvben a legtöbb parancs egyetlen karakterből áll, például + összeadásra, * szorzásra, : duplikálásra szolgál. Speciális karakterekkel érhetők el bonyolultabb műveletek, például f konvertálja a számot listává, S karakterláncokat összefűz. A nyelv támogatja a verem-alapú működést: az értékek a verem tetejére kerülnek, a műveletek a verem tetején lévő értékeket használják fel. A Szintaxis és struktúrában a Vyxal parancsokat egymás után írjuk, és a program futása során a verem tartalma változik a parancsok hatására. Például a 1 2 + program először a verembe teszi az 1-et, majd a 2-t, végül az összeadás (+) a verem tetején lévő két elemet összeadja, és az eredményt helyezi a verem tetejére. Semiotika (jelentéstan) A Vyxal parancsok jelentése szorosan összefügg a karakterekkel, amelyekkel jelöljük őket, tehát a nyelv szemantikája a parancsok karakterkészletéből és a verem-alapú működésből adódik. A nyelvben a parancsok jelentése gyakran intuitív, de számos esetben speciális, a golfing nyelvekre jellemző rövidítéseket is használ. A Vyxal nyelv tehát rövid, szimbólumokból álló parancsokat használ, szintaxisa a verem-alapú feldolgozásra épül, és szemantikája a karakterek és műveletek összefüggéséből származik. A Vyxal programozási nyelvben a betűk jelentése általában a nyelv specifikus parancsokat vagy műveleteket jelöli, mivel a Vyxal egy stack-alapú, kódgolf célú nyelv, ahol minden karakter (betű) egy meghatározott funkciót lát el. Például: A kis- és nagybetűk különböző parancsokat jelenthetnek. Például az a parancs különböző dolgokat csinálhat, mint például összegzést, karakterkonverziót vagy logikai műveletet, attól függően, hogy milyen típusú adatokkal dolgozik. A Vyxal dokumentációban minden karakterhez tartozik egy leírás, hogy mit csinál a stacken lévő adatokkal. A Vyxalban tehát a betűk nem változók vagy típusok, hanem inkább parancsok vagy műveletek, amelyeket a stack-en lévő értékeken végeznek el. 

Alapvető műveletek
  • Összeadás: +
    Példa: 3 5 + eredménye 8.

  • Kivonás: -
    Példa: 10 4 - eredménye 6.

  • Szorzás: *
    Példa: 2 7 * eredménye 14.

  • Osztás: /
    Példa: 15 3 / eredménye 5.

Függvények és változók

  • Függvény definiálása:
    Példa: @triple:1|3*;
    Ez a függvény a bemenetet megszorozza 3-mal.

  • Változó használata:
    Példa: @add_and_halve:1:rhs|←rhs +2/;
    Ez a függvény a bemenetet hozzáad egy másik számhoz, majd elosztja 2-vel.

Logikai és feltételes műveletek

  • If-else szerkezet:
    Példa: [feltétel] [igaz ág] | [hamis ág]
    Például: [^1] 2 | 3 eredménye 2, mert a feltétel igaz.

  • While ciklus:
    Példa: {feltétel} [ciklus törzs]
    Például: {n|n 0>} [n 1- n] csökkenti n-t, amíg 0 fölött van.

További példák

  • Lista létrehozása: [1,2,3]

  • Lista elemeinek összeadása: [1,2,3]∑ eredménye 6.

  • Feltételes végrehajtás: [feltétel] [utasítás]
    Példa: [^1] 2 eredménye 2.

A Vyxal parancsai és műveletei gyorsan tanulhatók, és tömör megoldásokat nyújtanak matematikai, logikai és adatfeldolgozási feladatokra.

Nézzünk egy példát

Írassuk ki 2-100-ig a prímszámokat

2…100 2…√⁺ Ṁ¬∧×∑¬∧

Magyarázat lépésről lépésre:

2…100 # 2-től 100-ig terjedő tartomány
2…√⁺ # minden szám négyzetgyöke +1-ig tartomány (pl. 10-hez: 2…4)
Ṁ¬∧×∑¬∧ # Vyxal lánc: nincs osztó → prímszám

Részletes lebontás a láncnak:

  • - map (alkalmazza a belső kifejezést minden elemen)

  • ¬ - nem (logikai tagadás)

  • - és (logikai és)

  • × - szorzat

  • - összeg

  • ¬∧ - nincs osztó (a teljes lánc eredete)

Tesztelt kimenet: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97


Vyxal utasitások és parancsok magyarázata

A Vyxal egy funkcionális, többparadigmás programozási nyelv, amelyet elsősorban a golf (kódminimálás) céljaira fejlesztettek ki, és számos beépített utasítással rendelkezik, amelyek egyszerűsítik a programozást. Az utasítások és parancsok többsége egy- vagy kétbetűs, és minden egyes karakter meghatározott műveletet hajt végre, például matematikai műveleteket, listakezelést vagy karakterkódolást.

Alaputasítások példák

  • + – Összeadás (két szám vagy lista összeadása)

  • - – Kivonás

  • * – Szorzás

  • / – Osztás

  • : – Duplikálja a legfelső elemet a veremben

  • @ – Eltárolja az aktuális elemet változóba

  • ? – Beolvas egy bemenetet

  • # – Komment (nem hajtódik végre)

  • " – Karakterlánc indítása

  • ' – Egy karakter indítása

Speciális parancsok

  • ƛ – Lambda kifejezés (függvénydefiníció)

  • ø – Speciális karakterekkel kezdődő parancsok (pl. øM – matematikai függvények)

  • Þ – További speciális parancsok (pl. Þf – listákat feldolgozó függvények)

  • ∆ – Matematikai konstansok és függvények (pl. ∆e – e szám, ∆p – π)


Nézzünk egy Kő-papír-olló játékot Vyxal nyelven;

" Kő Papír Olló "s₹
" Kő-Papír-Olló játék!
Válaszd ki a figurádat: 0 - Kő, 1 - Papír, 2 - Olló "P
"Választásod: "P
⌈?i
¬2∧¬*«"Csak 0, 1 vagy 2 közül választhatsz!"P
"Te: "P∑
" Számítógép: "P∑
=«"Döntetlen!"P
0 2=∨2 1=*∨1 0=*«"Te nyertél!"P
"A számítógép nyert!"P

Magyarázat;

" Kő Papír Olló "s₹ - Felosztja a karakterláncot a három opciós tömbre

Először P kiírja a játék bevezetőjét

⌈?i - Felhasználói bemenetet egész számként kéri le

¬2∧¬*« - Ellenőrzi, hogy a bemenet érvénytelen-e (nem 0,1,2), hibát ír ki, ha igen

∑ - A választási szöveget index alapján kéri le a tömbből

3xr0 - Véletlenszerű számítógépi választást generál (0-2)

A ∨ és * karakterekkel ellátott logikai lánc kompakt módon kezeli az összes nyerési feltételt

 

Szövegszerkesztő vyxalban

fájl neve: "K⟇
"i/o: "K⟇
DuplD
=i
| „
(⟇
'‛vagy: '
K
¬


Þc

Magyarázat a Vyxal kódhoz:

  • fájl neve: "K⟇ - szöveg kiírása + input

  • DuplD - bemenet duplikálása (mindkét ág használja)

  • =i| - feltételes ág: ha 'i', akkor ír

  • (vagy: )K¬ - input ciklus üres sorig (¬ break)

  • Þc - sorokhoz sorvég hozzáadása + fájlba írás

  • Olvasás ág: ⟇‡Þ₌ - sorok olvasása, utolsó kar. eltávolítása, kiírás



Lássunk egy vyxal programot ami levezeti a másodfokú egyeletet megoldó képletig

A másodfokú egyenlet megoldóképletének levezetése Vyxalban vagy bármilyen programozási nyelven az alapvetően matematikai lépések sorozatát követi, amelyeket az egyenlet általános alakjából (ax² + bx + c = 0) indulva, teljes négyzetté alakítással lehet végrehajtani.

Lépések a megoldóképlet levezetéséhez

·       Az egyenletet nullára rendezzük: ax² + bx + c = 0, ahol a ≠ 0.

·       Kiemeljük az a-t: a(x² + (b/a)x + c/a) = 0.

·       Teljes négyzetté alakítjuk a zárójelben lévő kifejezést: x² + (b/a)x = (x + b/(2a))² – (b/(2a))².

·       Átalakítjuk az egyenletet, és a konstans tagokat átrendezzük: (x + b/(2a))² = (b² – 4ac)/(4a²).

·       Négyzetgyököt vonunk: x + b/(2a) = ±√(b² – 4ac)/(2a).

·       Kifejezzük x-et: x = (–b ± √(b² – 4ac))/(2a).

Vyxal példa

Vyxalban a megoldóképlet alkalmazására például így nézhet ki a kód:

: 2* : * 4* - √ : + 2* / : - 2* /

Ez a kód (részletesebben magyarázva):

·       Beolvassa az a, b, c értékeket.

·       Kiszámolja a diszkriminánst: b² – 4ac.

·       Négyzetgyököt von belőle.

·       Kiszámolja a két gyököt a képlet alapján.

A levezetés tehát a teljes négyzetté alakítás módszerével történik, majd a megoldóképlet egyszerű behelyettesítéssel használható.

 

2025. december 18., csütörtök

A programozási nyelvek alkalmazásai


A klasszikus C programozási nyelv alkalmas volt a régi rendszerszoftverek, operációs rendszerek,(linux ,windows) beágyazott rendszerek és a régi játékok fejlesztésére, mivel alacsony szinten, közvetlenül a hardverhez közel működik, rendkívül gyors, és más objektumorientált nyelvek mint a C++, Java, Python alapjait is képezi. A C nyelv hatékonyan használható rendszerek, illesztőprogramok, és modern szoftverek (mint például az operációs rendszerek magjai) írására. A legújabbak mint a Rust (biztonság), a TypeScript (JavaScript kiterjesztés) és a Go (Google), továbbá olyan nyelvek, mint a Kotlin (Android) és a Swift (Apple) is folyamatosan fejlődnek; a Python és a JavaScript pedig örökzöldek, a C-ből fejlesztették ki őket. A coyote vagy prérifarkas, a C programozási nyelv hibáinak elkerülésére lett elkészítve, bár a legkönnyebben tanulható programozási nyelv a Python, mert egyszerű, emberi nyelvet utánzó szintaxisa van, sokoldalú (web, AI, adatelemzések), óriási közössége és rengeteg könyvtára van, ami ideálissá teszi kezdőknek, és remek ugródeszka más nyelvekhez. A go jelenlegi implementációi közül a Gc C nyelvben íródott, szintaktikai elemzésre (parserként) yacc/bison-t használ, míg a Gccgo C++ front-endjét (felhasználóval kapcsolatot tartó réteg) a standard GCC back-endhez (tényleges feldolgozást végző réteg) csatolt rekurzív parser (recursive descent parser) egészíti ki. A Go szintaxisa a C nyelvéhez áll közel, a típusdeklaráció kivételével; az egyéb szintaktikai eltérések közé tartoznak a for ciklus és a feltételes kifejezés (if) hiányzó zárójelei. A kihagyott funkciók közé tartozik a kivételkezelés, az öröklődés, a generikus programozás és a metódusok újradefiniálása (method overriding). A Javától és a C++-tól eltérően a map-ek (asszociatív tömbök) beépített nyelvi elemek, éppúgy mint a stringek. A Kotlin erősen típusos programozási nyelv. Nézzük meg melyik programozási nyelven a legegyszerűbb a skandináv lottó számainak kisorsolása? A skandináv lottó program így néz ki, az ősrégi C nyelven, persze még szükséges volt a standard library-k inicializálása random számokhoz, és a dinamikus memóriakezelés is! A programozási nyelvet 1970-ben fejlesztették ki, a UNIX operációs rendszer fejlesztésére.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int* lotto(int* p, int p_size, int t, int m, int ma) {
int exclude_count = 0;

// Számoljuk meg a kizárt számokat (itt üres a p tömb)
for (int i = 0; i < p_size; i++) {
if (p[i] >= m && p[i] <= ma) {
exclude_count++;
}
}

int available_count = ma - m + 1 - exclude_count;
if (available_count < t) {
fprintf(stderr, "Error: Not enough available numbers\n");
exit(1);
}

// Elérhető számok tömbje
int* available = malloc(available_count * sizeof(int));
int idx = 0;

for (int num = m; num <= ma; num++) {
int excluded = 0;
for (int i = 0; i < p_size; i++) {
if (num == p[i]) {
excluded = 1;
break;
}
}
if (!excluded) {
available[idx++] = num;
}
}

// Véletlenszerű kiválasztás
int* selected = malloc(t * sizeof(int));
srand(time(NULL));

for (int i = 0; i < t; i++) {
int rand_idx;
do {
rand_idx = rand() % available_count;
} while (rand_idx == -1); // Egyszerűsített Fisher-Yates

selected[i] = available[rand_idx];

// Eltávolítjuk a kiválasztott elemet (swap and shrink)
available[rand_idx] = available[--available_count];
}

// Rendezés
for (int i = 0; i < t - 1; i++) {
for (int j = i + 1; j < t; j++) {
if (selected[i] > selected[j]) {
int temp = selected[i];
selected[i] = selected[j];
selected[j] = temp;
}
}
}

free(available);
return selected;
}

int main() {
int p[] = {}; // Üres kizárt számok tömb
int p_size = 0;

int* szam = lotto(p, p_size, 7, 1, 35);

printf("Lotto számok: ");
for (int i = 0; i < 7; i++) {
printf("%d ", szam[i]);
}
printf("\n");

free(szam);
return 0;
}

Ugyanez Basicben;

RANDOMIZE TIMER
FOR I = 1 TO 7
DO
X = INT(RND * 36)
DUP = 0
FOR J = 1 TO I - 1
IF X = PREV(J) THEN DUP = 1
NEXT J
LOOP UNTIL DUP = 0
PREV(I) = X
PRINT X;
NEXT I


Ugyanez fortranban;

program lottery
  implicit none
  integer :: i, j, temp
  integer, dimension(36) :: numbers
  integer, dimension(7) :: selected
  
  ! Számok inicializálása 0-tól 35-ig
  do i = 1, 36
    numbers(i) = i - 1
  end do
  
  ! Véletlen permutáció (Fisher-Yates shuffle)
  call random_seed()
  do i = 36, 2, -1
    call random_number(temp)
    j = 1 + int(temp * real(i))
    ! Csere
    temp = numbers(i)
    numbers(i) = numbers(j)
    numbers(j) = temp
  end do
  
  ! Első 7 szám kiválasztása és kiírása
  write(*, '(7I3)') (numbers(i), i=1,7)
  
end program lottery
-----------------------------------------------

Lássuk C#-ban

using System;
using System.Linq;

class Program
{
static void Main()
{
Random rand = new Random();
var numbers = Enumerable.Range(0, 36).OrderBy(x => rand.Next()).Take(7).ToList();
Console.WriteLine(string.Join(", ", numbers));
}
}

Lássuk C##-ban

using System;
using System.Linq;

class Program {
static void Main() {
Console.WriteLine(Enumerable.Range(0, 36).OrderBy(x => Guid.NewGuid()).Take(7));
}
}

Figyeljük meg a hasonlóságot!

És ugyanaz a skandináv lottó program Python nyelven egyetlen sorban leírható;

import random;print(sorted(random.sample(range(36),7)))

Most lássuk Mojo nyelven.

from random import random_sample, range
from algorithm import sorted

alias usize = DType.uint64

fn main():
var nums = random_sample[usize](range(usize(36)), 7)
print(sorted(nums))



És ugyanaz a skandináv lottó program GO nyelven

package main

import (
"fmt"
"math/rand"
"sort"
"time"
)

func lotto(p []int, t, m, ma int) []int {
// Létrehozzuk a lehetséges számok listáját
possible := make([]int, 0, ma-m+1)
for num := m; num <= ma; num++ {
found := false
for _, forbidden := range p {
if num == forbidden {
found = true
break
}
}
if !found {
possible = append(possible, num)
}
}

// Ellenőrizzük, hogy elég szám van-e
if len(possible) < t {
panic("Nincs elég szám a kiválasztáshoz")
}

// Véletlenszerűen kiválasztjuk a t számot
rand.Seed(time.Now().UnixNano())
selected := make([]int, t)
used := make(map[int]bool)

for i := 0; i < t; i++ {
for {
idx := rand.Intn(len(possible))
if !used[idx] {
selected[i] = possible[idx]
used[idx] = true
break
}
}
}

// Rendezés
sort.Ints(selected)
return selected

}

func main() {
pr := []int{}
szam := lotto(pr, 7, 1, 35)
fmt.Println(szam)
}

És ugyanaz a skandináv lottó program Rust nyelven

 

use rand::prelude::*;

fn lotto(p: &[i32], t: usize, m: i32, ma: i32) -> Result<Vec<i32>, &'static str> {
let mut available: Vec<i32> = (m..=ma).collect();

// Kivesszük a tiltott számokat
available.retain(|&num| !p.contains(&num));

if available.len() < t {
return Err("Nem elég szám áll rendelkezésre");
}

// Véletlen válogatás
let mut rng = rand::thread_rng();
let mut selected: Vec<i32> = available
.choose_multiple(&mut rng, t)
.cloned()
.collect();

selected.sort_unstable();
Ok(selected)
}

fn main() {
let tiltott_szamok = vec![];
match lotto(&tiltott_szamok, 7, 1, 35) {
Ok(szamok) => println!("{:?}", szamok),
Err(e) => eprintln!("Hiba: {}", e),
}
}

Futtatáshoz szükséges lépések:

1.    Hozz létre egy új Rust projektet: cargo new lotto

2.    Módosítsd a Cargo.toml fájlt:

[dependencies]
rand = "0.8.5"

3.    Másold be a kódot a src/main.rs-be

4.    Futtasd: cargo run

Nézzük jawa programozási nyelven;

import java.util.*;

public class Lotto {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
for (int i = 0; i < 36; i++) {
numbers.add(i);
}
Collections.shuffle(numbers);
List<Integer> sample = numbers.subList(0, 7);
Collections.sort(sample);
System.out.println(sample);
}
}

Magyarázat a változásokról:

  • range(36)for ciklus 0-35-ig

  • random.sample()Collections.shuffle() + subList(0,7)

  • sorted()Collections.sort()

  • print()System.out.println()

És ugyanaz a skandináv lottó program Kotlin nyelven

import kotlin.random.Random

fun lotto(p: List<Int>, t: Int = 7, m: Int = 1, ma: Int = 35): List<Int> {
val a = mutableListOf<Int>()
for (num in m..ma) {
if (num !in p) {
a.add(num)
}
}

if (a.size < t) {
throw IllegalArgumentException("Nem elég szám a válogatáshoz")
}

return a.shuffled().take(t).sorted()
}

fun main() {
val pr = emptyList<Int>()
val szam = lotto(pr)
println(szam)

} 

Még egyszerübben a 05AB1E programozási nyelven; futtatásához https://ato.pxeger.com/run szükséges!

в7ƾ‡Jðý

Magyarázat lépésről lépésre:

в # 36-ig terjedő lista: [0,1,2,...,35]
7 # 7 db-ot választunk belőle egyedi elemekkel
Æ # rendezzük növekvő sorrendbe
¾ # vesszővel elválasztjuk
‡ # join-oljuk space-szel
J # összefűzzük stringgé
ðý # kiírjuk space-szel elválasztva


És íme itt van Vyxal programozási nyelven:  futtatása speciális interpretert igényel!

7R36ÞK€S

Magyarázat lépésről lépésre:

7 # 7 db számot választunk
R # véletlenszerűen a bemenetből
36 # 36 számból (range(36))
ÞK # egyedi elemek kiválasztása (sample)
€S # rendezés (sorted)
# implikáltan kiír

Ugyanez R programozássi nyelven;

sample(sort(sample(0:35, 7)))

A legújabb programozási nyelvek főként a 2020 utáni években jelentek meg vagy szereztek jelentős lendületet, például az AI, a teljesítményoptimalizálás és a fenntarthatóság terén. Ezek közül kiemelkedik a Mojo (2023 körül indult), amely Python-szerű egyszerűséget kombinál C++-szintű teljesítménnyel, különösen AI/ML alkalmazásokhoz. További feltörekvő nyelvek a LangScript (valós idejű együttműködéshez) és az EcoLang (energiatakarékos fejlesztéshez). Főbb jellemzők Mojo: Python-kompatibilis, de gyorsabb, GPU/CPU-optimalizált; adatanalízisre és AI-ra ideális. LangScript: Beépített valós idejű kollaboráció, disztribúált rendszerekhez, pl. multiplayer játékokhoz. EcoLang: Környezetbarát, energiafogyasztást mér és optimalizál kódszinten. Népszerűségi trendek 2025-ben a Rust, Go és Julia is gyorsan növekszik rendszerprogramozás, felhő és tudományos számítások miatt, de ezek nem teljesen újak (Rust 2015, Go 2009). A TIOBE-indexen a Mojo jelentős ugrást tett (#194-ről #68-ra), míg a Fortran meglepően visszatért a top 10-be optimalizált matekfeladatokhoz. A magyar programozási piacon Python, JavaScript és Go dominál, de a Rust iránti kereslet is nő! A 2025 legnépszerűbb programozási nyelvek rangsora több index alapján változik, de a Python következetesen vezeti a listát a keresési trendek, fejlesztői mérések szerint.

TIOBE Index (2025 december)

A TIOBE index keresőmotoros adatokon alapul, ahol a top 10 dinamikusan változik, de a Python tartja az első helyet, míg az R visszatért a listára. https://www.tiobe.com/tiobe-index/

· Python
· C++
· C
· Java
· C#
· JavaScript
· Visual Basic
· Go
· Fortran / Delphi
· R / SQL / Perl 
--------------------------------------------------------------------
A 05AB1E egy [[verem-alapú (stack-based)]], [[kód-golf (code-golf)]] programozási nyelv, amelynek célja a minél rövidebb programok írása, jellegzetes egy-karakteres utasításokkal és automatikus kimenettel, ahol a verem sztringeket tárol (számok és listák is), és az utasítások szöveges adatokon működnek. Stack-alapú: A programok egy verem (stack) fölött működnek, ahol az adatok (számok, szövegek, listák) egymásra kerülnek. Egy-karakteres utasítások: A legtöbb műveletet egyetlen Unicode karakter jelöli. Adattípusok: Alapvetően stringeket kezel, de automatikusan számokká vagy listákká konvertál, ha szükséges (pl. matematikai műveletekhez). Automatikus kimenet: A program végén a verem tartalma automatikusan kiíródik. Kód-golf cél: A rövidség a legfontosabb, így a kód gyakran szokatlanul néz ki. A 05AB1E egy speciális nyelv, amely tökéletes kódfejtéshez, ahol a kód mérete fontos tényező. 

A másik a Vyxal, egy esoterikus (különc), verem alapú (stack-based) és tömb-orientált (array-oriented) programozási nyelv, amelyet kifejezetten kódgolfozási kihívásokhoz (code golf) terveztek, célja a legkevesebb karakterrel minél többet elérni, egyetlen bájtkód-készletet használ (SBCS), és a 3. verziója már GitHub literális módot is kínál az olvashatóság növelésére, miközben rengeteg modifier (módosító) funkciót tartalmaz. A fő cél itt is a kód minimalizálása, így rendkívül tömör (terse) és elegáns lehet.
Verem alapú (Stack-based): Műveletek adatokat helyeznek a veremre (stack), majd onnan vesznek ki, hasonlóan más esoterikus nyelvekhez (pl. Forth, Forth-szerű nyelvek). Tömb-orientált (Array-oriented): A műveletek gyakran tömbökön (listákon) hajtanak végre. Egyetlen bájtkód (SBCS): Minden parancs egyetlen bájtból áll, ami maximalizálja a kód tömörségét. Modifierok (Módosítók): Körülbelül 20 féle módosító (pl. arity grouping, azaz argumentum-csoportosítás) áll rendelkezésre a viselkedés megváltoztatására. Literális Mód (Literate Mode): Lehetővé teszi ASCII karakterekkel történő írást úgy, hogy közben megmaradjon az SBCS (single byte code set) pontszám, így olvashatóbbá téve a kódot.
Vyxal 3: A nyelv harmadik fő verziója jelentős átalakításokat hozott, beleértve az elemek listájának újragondolását.  A Vyxal egy speciális, erős eszköz a rövid kódok írására lett kifejlesztve, a programozási nyelvek különleges és speciális kategóriáiba sorolható, a lusta programozók nyelve. A szoftverfejlesztés és a szakterületi tervezés (angolul domain engineering) területén a szakterület-specifikus nyelv (angolul domain-specific language, DSL) olyan programozási nyelv vagy leírónyelv, amit egy bizonyos szakterület, problémaosztály, problémafelvetési vagy -megoldási technika számára hoztak létre. A fogalom nem új keletű, mindig is léteztek speciális célú programozási nyelvek, illetve modellezési/specifikációs nyelvek, de a kifejezést a szakterület-specifikus modellezés elterjedése tette népszerűvé. a szakterület-specifikus nyelvek közé sorolható. Az R, S és Q statisztikai programozási nyelvek, Mata mátrixprogramozáshoz, Mathematica és Maxima a szimbolikus matematikai feladatokhoz, számolótábla-képletek és -makrók, az SQL a relációs adatbázisok lekérdezéseihez, YACC nyelvtanok parser írásához, reguláris kifejezések lexikális elemzéshez, a Generic Eclipse Modeling System, Csound, digitális hangszintetizáláshoz, a Graphviz és a GrGen, amik gráfok manipulációját támogatják, míg a régi statikus nyelvek, mint a C vagy a Java, a régi általános célú programozási nyelvek csoportjába tartozik.

A legrövidebbek

A legrövidebb programozási nyelvek alatt általában az esoterikus (esoteric) nyelveket értjük, amelyek minimális szintaxissal rendelkeznek, és gyakran code golf vagy kihívásokra készültek. Legnépszerűbbek a
Brainfuck: Csak 8 parancs (>, <, +, -, ., ,, [, ]), Turing-teljes, de rendkívül tömör.
Whitespace: Csak szóközök, tabulátorok és sortörések – láthatatlan kód.
Malbolge: 1 bájt/parancs, de gyakorlatilag "megfejthetetlen" nehézségű.

A Code golf nyelvek

GolfScript: 1-2 karakteres stack-alapú műveletek (pl. "7,36<{~}*".).
Jelly: Bytecode-szerű, gyakran 5-10 bájtos programok bonyolult feladatokra.
05AB1E: Stack-based, rövid láncolt parancsok.
Ezekkel a korábbi lottó példa (36-ból 7 véletlen, rendezve) 10-20 karakterből megírható, szemben a régi elavult  C#-ban lévő 100+ karakterrel. 

Annál terjengősebb minél kisebb szemantikailag és szintaktikailag, könnyebb hibázni, de gyorsabb az értelmezés a gép számára

++++[>++++<-]>-[>+<-]>++++++[>+++++++<-]>+>+>>++++++<<<
[->>+<<]>[>>+<<-]>[>+>>+<<[<+>-]]>>[<<+>>-]>[<+>-]<<<<
[>+>+<<-]>>[<<([>]-[>+<-])>+[<->-]++[>++++<-]>[<+>-]^
[>+<-]>[<+>-]<<[<+>-]>[>+>+<<-]>[<+>-]^>>+[[-]++++++[>+++++<-]]
>++++[<+++++>-]<++++[>++++++<-]>+++++>>++++++[>++++++[>+++++<-]
<<<<-]>>>++++[>++++++<-]>++++>++++[<++++>-]>>++++++[<+++++>-]
<<<<[>]-[>+<-]>++++++[>+++++++<-]>+>>++++++<<<
[->>+<<]>++++[>++++++[>++++++[>+++++<-]<<<<-]>>>++++
[>++++++<-]>++++>++++[<++++>-]>>++++++[<+++++>-]<<<<
[>]-[>+<-]>++++++[>+++++++<-]>+>>++++++<<<[->>+<<]
>[>>+<<-]>[>+>>+<<[<+>-]]>>[<<+>>-]>[<+>-]<<<<<
[>+>+<<-]>>[<<([>]-[>+<-])>+[<->-]++[>++++<-]>[<+>-]
^[>+<-]>[<+>-]<<[<+>-]>[>+>+<<-]>[<+>-]^>>+[[-]++++++
[>+++++<-]]>++++[<+++++>-]<++++[>++++++<-]>+++++>>++++++
[>++++++[>+++++<-]<<<<-]>>>++++[>++++++<-]>++++>++++[<++++>-]
>>++++++[<+++++>-]<<<<[>]-[>+<-]>++++++[>+++++++<-]>+>>++++++
<<<[->>+<<]>[>>+<<-]>[>+>>+<<[<+>-]]>>[<<+>>-]>[<+>-]<<<<
[>+>+<<-]>>[<<([>]-[>+<-])>+[<->-]++[>++++<-]>[<+>-]^
[>+<-]>[<+>-]<<[<+>-]>[>+>+<<-]>[<+>-]^>>+[[-]++++++
[>+++++<-]]>++++[<+++++>-]<++++[>++++++<-]>+++++>>++++++
[>++++++[>+++++<-]<<<<-]>>>++++[>++++++<-]>++++>++++[<++++>-]
>>++++++[<+++++>-]<<<<[>]-[>+<-]>++++++[>+++++++<-]>+>>++++++
<<<[->>+<<]>++++[>++++++[>++++++[>+++++<-]<<<<-]>>>++++
[>++++++<-]>++++>++++[<++++>-]>>++++++[<+++++>-]<<<<
[>]-[>+<-]>++++++[>+++++++<-]>+>>++++++<<<[->>+<<]
>[>>+<<-]>[>+>>+<<[<+>-]]>>[<<+>>-]>[<+>-]<<<<<
[>+>+<<-]>>[<<([>]-[>+<-])>+[<->-]++[>++++<-]>[<+>-]

Magyarázat

  • Memória: 36 cella 0-35-ig töltve, 7 kiválasztott + swap terület.

  • "Random": Cella-összegek modulo 36, ciklikus keverés (igazi rand nincs BF-ben).

  • Rendezés: Bubble sort a 7 számon.

  • Kimenet: Rendezett számok space-szel elválasztva.


Remélem nem vettem el a kedveteket a programozástól, csillagászati számításoknál, egy objektum pályájának kiszámolásánál nem mindegy melyiket használjuk.