Egyszerű QuickBasic programok

Ezeket gimnáziumi és egyetemi éveim alatt ütöttem össze, és noha ezt a nyelvet ma már nemigen tanítják, mégis közzéteszem ezeket a programokat tömörítve (42k) és szövegformátumban. Ez utóbbiak használatához egy DOS vagy Windows alatt futó QuickBasic-re van szükség. (A szöveges állományokat át kell nevezni BAS kiterjesztésűre, és egyszerűen bemásolni abba a könyvtárba, ahol a QB.EXE program van.) Kényelmi okokból egy MKEY.COM nevű magyar billentyűzet- és képernyővezérlőt is mellékelek, ezt DOS alatt a QB.EXE indítása előtt illik lefuttatni, és ekkor a Scroll Lock gombbal lehet ékezetes illetve anélküli üzemmódot váltani.

A programok neve és rövid leírása az alábbiakban következik:

  • Amőba – Nem amőbaprogram, hanem az elemzést segítő interaktív tábla, amelyen lehet elágazásokat kijelölni és visszalépni. A képernyőre kiírja az állásig vezető lépéssort, de az összes változatot nem tárolja.

  • Atomok – Képernyőkímélő, ahol Thomson-atommodellek pattognak, időnként elektronokat leadva ill. felvéve

  • Araszolás – Képernyőfárasztó vagy -kímélő program, ahol részegen tántorgó színes pontok mászkálnak. A + illetve – gombok lenyomásával beállítható, hogy ezek végleg otthagyják a nyomukat a képernyőn, vagy az felszáradjon utánuk.

  • Bolygók – Bolygók gravitációs terében mozgó űrhajót lehet innen oda vezérelni kurzorral, adott idő alatt, korlátozott üzemanyaggal, ügyelve a leszállásra. Fizikaórai segédanyag, elmélyítheti a gravitációról alkotott képet.

  • Fázisdiagram – A kerékpáros szakdolgozathoz tartozó kis program, amely többfajta lejtőt ábrázolhat, s azon néhány egérkattintással kijelölt útvonalválasztásra nézve kiszámolja a legkisebb és a legnagyobb biztonságos gyorsulást. Ezt út-sebesség fázisdiagramon ábrázolja, s igény szerint adatfájlba is kiírja. Ezekhez a GRAPHER vagy hasonló program szükséges, a pontokat pedig csak a pozitív tartományon kell ábrázolni, összekötéssel.

  • Felbontás – Elkészíti nem túl nagy számok prímtényezős felbontását. Egyszerűen továbbfejleszthető.

  • Franciasakk – Franciasakk-elemző program. Az AMOBA.TXT-hz hasonlóan tud lépni és visszalépni, az ütéskényszereket is számontartja (egyidejűleg max. 20-at, de ez emelhető), és kiírja az ábraálláshoz vezető lépéssorrendet. Tetszőleges kiindulóállás beadható, de szabványtáblát is fel tud rakni, így megnyitási csapdák kipróbálásához igen hasznos.

  • Görbe – Néhány egérkattintással beadott pontokra két eljárással viszonylag "sima" görbét illeszt, ezt azonban nem tárolja, így csak esztétikai értéke van.

  • Hatvány – 2k modulo m értékét írja ki.

  • Hinta – A folyópartokon gyakori tarzanozó-hinták működését modellezi. Szüksége van a HINTMAX.DAT adatállományra.

  • Kártya – Ideálisan kevert kártyapakli lapjainak mozgását modellezi

  • Kötél – Rugalmas kötélen himbálózó testek mozgását szimulálja

  • Közepek – Beadott számok középértékeit adja meg (könnyen fejleszthető)

  • Labdák – Képernyőkímélő: labdák pattognak

  • LNKO – Euklideszi algoritmussal legnagyobb közös osztót számol

  • Lóugrás – Négyzetes vagy egyedi alakú sakktáblát huszárral bejár (egyszerű tapasztalati stratégiával), és a legsikeresebb kísérletét adatállományban tárolja

  • Napló – Osztályozónaplót kezel havi egy jeggyel, háromféle bontásban, átlagokkal, átírási lehetőséggel, a változások mentésével.

  • Nyúl – A "Vadászok és a nyúl" játékot igyekszik elemezni, adatállományba írva a pillanatnyi eredményt. Csak arra jó, hogy megállapítsa, melyik fél nyer, de nyerő stratégiát nem ad. (Futási ideje is irreálisan hosszú a 8x8-as táblán.) Szüksége van az ALLAS.DAT állományra, amelyet minden megszakításkor frissít, és legközelebb innen kezdi az elemzést.

  • Osztály – Mekkora az esélye, hogy egy n fős osztályban van két ember, akinek ugyanazon a napon van születésnapja? A képletszerű eredményt véletlengenerátorral "igazolja."

  • Osztás – Nem túl nagy számokat "gyalog" eloszt

  • Polárdiagram – Polárdiagramon ábrázol többféle függvényt

  • Pörgő gömb – Forgó gömbről leváló sárdarabok életútját modellezi

  • Prímek – Kiírja a prímeket az ezredikig

  • 2 rendje – Mi 2 rendje modulo (páratlan szám)? A kártyakeverés egyik problémájával analóg feladat.

  • Sárhányó – Sárhányó nélküli kerékpár hátsó kerekéről leváló sárdarabok röppályáját rajzolja meg, és ábrázolja a legsárosabb tartományokat a kerék mögött

  • Sejt – Az ismert sejtszaporodásos "életjátékot" játssza, két versengő populációval

  • Súlyzók – Képernyőkímélő program: súlyzók pattognak

  • Szorzás – Nagy számokat "gyalog" összeszoroz

  • Tekergő – Lissajous-görbéket rajzol

  • Teknő – Különféle alakú teknőket rajzol polárdiagramon

  • Zene – Dúr, moll vagy egyenlő hangközű skálát játszik.

  • Újabb programok:

  • Ellipszisrajzoló és -díszítő.

  • Kotta – Kottát lehet vele írni (kurzorral), amit igen nyomorult minőségben lejátszik, és adatállományban is tárol. (A régen beírt zenét felülírja!)

  • Fraktálnézegető és -gyártó Hozzá tartozik húsz átlagos fraktál is egy külön állományban.

  • Síkillesztő. Előtanulmány a négydimenziós (kvaterniós) fraktálok ábrázolására szolgáló animációkat készítő programhoz.