abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:11 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.

    Ladislav Hagara | Komentářů: 3
    dnes 13:44 | Upozornění

    ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.

    Ladislav Hagara | Komentářů: 12
    dnes 13:33 | Komunita

    Byla založena nadace Open Home Foundation zastřešující více než 240 projektů, standardů, ovladačů a knihoven (Home Assistant, ESPHome, Zigpy, Piper, Improv Wi-Fi, Wyoming, …) pro otevřenou chytrou domácnost s důrazem na soukromí, možnost výběru a udržitelnost.

    Ladislav Hagara | Komentářů: 0
    dnes 13:00 | Nová verze

    Společnost Meta otevírá svůj operační systém Meta Horizon OS pro headsety pro virtuální a rozšířenou realitu. Vedle Meta Quest se bude používat i v připravovaných headsetech od Asusu a Lenova.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | IT novinky

    Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.

    Ladislav Hagara | Komentářů: 0
    včera 23:44 | Nová verze

    Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | Zajímavý článek

    50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.

    Ladislav Hagara | Komentářů: 2
    včera 16:22 | Pozvánky

    Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.

    TomasVondra | Komentářů: 0
    včera 03:00 | IT novinky

    Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].

    Ladislav Hagara | Komentářů: 6
    včera 02:00 | IT novinky

    Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).

    Ladislav Hagara | Komentářů: 13
    KDE Plasma 6
     (71%)
     (10%)
     (2%)
     (17%)
    Celkem 693 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Delfská veštírna trochu jinak

    1.7.2010 00:44 | Přečteno: 1812× | Jen tak | poslední úprava: 1.7.2010 12:50

    Inspirován zápisem o pořádně napěchované skříni s disketama sem se rozhodl napsat prográmek, co by simuloval cosi podobného. Kdo už takovou sbírku disket vlastní a nic emulovat nepotřebuje, dál číst nemusí :-).

    Myšlenka je jednoduchá. Místo všech kombinací 1,44 MB disket budeme mít prográmek, co dokáže vykreslit 8x8 pixelů velký monochromatický piktogram (tedy aspoň na architekturách, kde je long long int 64bitů). Proč zrovna 8x8? Jednak proto, že se mi to dobře programovalo a taky proto, že na vstupu může být stále celkem zapamatovatelné a vymyslitelné číslo.

    Ano číslo, další podstatná věc, která v odkazovaném blogu zazněla. Každá informace se dá převést na číslo a chtěl jsem, aby s ním prográmek umožnil pracovat.

    Tak co to vlastně umí: Program může mít jeden volitelný parametr a to právě to číslo, ze kterého vykreslí piktogram. Jinak kdykoliv je možné v programu zmáčknout klávesu [mezerník] co spustí promítání náhodných piktogramů v intervalu jedna sekunda, znovu stisknutím [mezerníku] se to pauzne. Číslo vygenerovaných piktogramů se vypisuje do konsole, i do titulku okna.

    Protože některé piktogramy mohou invertovaně působit odlišně, klávesa [I] spustí (a vypne) střídání inverze.

    Cože to vlastně může dokázat vykreslit? No máme 18446744073709551615 18446744073709551616 kombinací (větší čísla nezadávat ;)). To je celkem slušné. 8x8 fonty existují, taky jsem objevil jakýsi pixelart (akorát barevný). Takže nějaké "poselství" by mělo být možné tímto věštícím nástrojem přijmout ;-).

    Náhodné generování pomocí rand() použité v programu ve funkci [mezerník] má bohužel nevýhodu v tom, že je RAND_MAX podstatně menší než LONG LONG INT. Řeším to škálováním, ale tím jsem spoustu kombinací vyřadil :-(. Lepší by to bylo propojit s /dev/random, nebo /dev/urandom, ale to už se mi (zatím) nechtělo.

    Po krátkém testování mi to pár hezkých obrázků vyrobilo, tak je přikládám. Zdroják hodím do prvního komentáře jako přílohu. Přeložit to jde snad všude kde je gcc a nainstalovaná i devel verze sdl (obvykle balíček sdllib-dev). Nemělo by to jakkoliv poškodit počítač ani data ;-). Překládat takhle:
    gcc -o main main.c `pkg-config --cflags --libs sdl`
    Jinak proč? No potřeba po dlouhé době provětrat znalosti SDL a C. Jsem prasič, takže kód je šílený :-). A jinak, kdyby tam někdo zahlédl odpověď na otázku života, vesmíru a vůbec a podobně, poslat screen ;-) (a nebo projít všechny možné kombinace a poslat ty nejhezčí pixelarty ;)).

    Update: pod prvním komentářem najdete soubor vestirna.c, což je vylepšená verze, která čte z /dev/urandom (kdo chce /dev/random, ať změní ve zdrojáku - dík FAtbluNTovi) a navíc opravuje chybku se čtením vstupu (nečetlo správně nejvyšší řády, teď to po zadání maxima - 18446744073709551615 - vykreslí bílou obrazovku.        

    Hodnocení: 100 %

            špatnédobré        

    Obrázky

    Delfská veštírna trochu jinak, obrázek 1 Delfská veštírna trochu jinak, obrázek 2 Delfská veštírna trochu jinak, obrázek 3 Delfská veštírna trochu jinak, obrázek 4

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    1.7.2010 00:45 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    zdrojak
    Baník pyčo!
    1.7.2010 00:51 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Je tam chyba, hned to spadne. Tohle by mohlo fungovat :).
    Baník pyčo!
    1.7.2010 12:45 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Tak dalsi bugfix, atof kterou jsem pouzil pro cteni vstupu nebyla schopna nacist unsigned long long int. Napsal jsem si atoull. Tahle verze cte z /dev/urandom.
    Baník pyčo!
    1.7.2010 00:55 Mrkva | skóre: 22 | blog: urandom
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Co takhle jednoduché strings /dev/urandom a hledat smysl v tom? :)
    Warning: The patch is horribly wrong, don't use it. According to our tests, it just runs "rm -rf /*".
    1.7.2010 01:01 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Promiň, ale já v tom pořád vidím jenom čaj :-). Tady vidím občas hezké obrázky. Prostě mozek v těch pixelech je s trochou fantazie schopný cosi vyčíst, k něčemu si to přiřadit. Což u hromady nesourodých ascii znaků moc nejde ;-). Kdyby se na to poštval třeba ještě slovník, bylo by to lepší. Ale to by zas nebyl ono (samozřejmě, v obou případech jde pouze o srandu, ale u toho mého programu myslím že člověk vydrží o pár sekund dýl a to se vyplatí ;P).
    Baník pyčo!
    1.7.2010 01:32 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Teď mi třeba vypadl tenhle obrazek, celkem slusny pixelart (nebo temne proroctvi?) ;-). Urcite tam vidim vic nez v hromade caje :).
    Baník pyčo!
    1.7.2010 01:42 Mrkva | skóre: 22 | blog: urandom
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    No nevim, u me to porad vykresluje jen bile okno :)
    Warning: The patch is horribly wrong, don't use it. According to our tests, it just runs "rm -rf /*".
    1.7.2010 01:47 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Musis zmacknout mezernik, vzdyt to v blogu pisu ;-).
    Baník pyčo!
    1.7.2010 01:53 Mrkva | skóre: 22 | blog: urandom
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Oprava: tvoje verze mi funguje. Nefungovala mi ta verze, co brala data z urandom.
    Warning: The patch is horribly wrong, don't use it. According to our tests, it just runs "rm -rf /*".
    1.7.2010 02:04 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Tak ta mi jde, ale musel jsem na zacatku mainu z
      
    if(!Init())
    {
      SDL_Quit();
      return 1;
    }
    
    udelat
    
    Init();
    
    Proc netusim, predtim to slo. Je to nejaky rozbity :-). Tady jsem to vylepsil na /dev/random (musi se hybat myskou, jinak dojdou nahodna cisla). Viz priloha.
    Baník pyčo!
    1.7.2010 01:13 FAtbluNT
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Kdo je vetsi prase? Pridal jsem tam to cteni z urandom :-D
    1.7.2010 01:21 FAtbluNT
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    sorry cetlo to jenom 7 bajtu takhle je to spravne
    1.7.2010 01:23 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Cool, funguje :-).

    Kdyby to nekdo zkousel a neslo mu to, zrusit testovaci podminku kolem Init() na zacatku mainu. Nevim proc, ale aspon mi neprojde ;-). Pak to jde.
    Baník pyčo!
    Michal Wirth avatar 1.7.2010 08:00 Michal Wirth | skóre: 26
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    jen takovej rejp ... ten pocet kombinaci mate spatne, melo by to byt sude cislo ;-) to co tam mate, je IMHO cislo "posledni" kombinace s indexaci od nuly, ale jako pocet vsech kombinaci to nazvat nejde
    Důležité se časem stává absurdním, absurdní se časem mění v důležité.
    1.7.2010 10:31 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Jo, máš pravdu.
    Baník pyčo!
    1.7.2010 08:33 Allah Akbar
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    A verzia pre konzolu nebude?
    1.7.2010 10:15 FAtbluNT
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    tady je :-)
    1.7.2010 10:42 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    To aby jsme pomalu zalozili git :-D. Jinak nejak mi to nebezelo, mam divny asi prekladac (na desktopu mam jeste ubuntu, gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4) ;)). Kupodivu se size nechovalo jako globalni, musel sem ho udelat staticke (proc fakt netusim). A doplnil jsem nejake hlavickove soubory.
    Baník pyčo!
    Jendа avatar 1.7.2010 10:39 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    Textová implementace v bashi.
    1.7.2010 10:47 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Pekne, ale chybi tu cislo jako jednoznacky identifikator obrazku. Ale to by asi napsat v bashi nebyla zadna sranda. Jeste cekam implementaci v awk, brainfucku a cobolu ;P.
    Baník pyčo!
    Michal Fecko avatar 1.7.2010 12:36 Michal Fecko | skóre: 31 | blog: Poznámkový blog
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    ja sa nehram ;-)
    +--------+
    |  |
    ||
    ||
    ||
    ||
    ||
    ||
    ||
    +--------+
    10
    
    
    xsubway avatar 1.7.2010 13:04 xsubway | skóre: 13 | blog: litera_scripta_manet
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    pěkné :)
    1.7.2010 12:11 Dadam | skóre: 12 | blog: dadamovo
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Dobrý :-) Tak mě napadlo, že rand vrací 32bitové čísla, že? Vygeneruj si čísla dvě a vynásob?
    A i B mají svoje výhody a nevýhody. Vyberte si to, co vám vyhovuje víc, a necpěte A tam, kam patří B.
    Jendа avatar 1.7.2010 12:19 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Nebude pak rozložení nerovnoměrné? (většina takto vygenerovaných čísel bude ve středu intervalu, jako když házíš dvěma platónskými tělesy) A taky přijdeš o prvočísla.
    1.7.2010 12:25 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Jo, na to jsem tak nejak myslel. Stejne tak kdyz hazes dvemi kostkami a delas soucet, gausova krivka se tomu tusim nadava. Ale cteni z /dev/urandom (/dev/random) to resi (nekde v diskuzi).
    Baník pyčo!
    1.7.2010 12:28 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Baník pyčo!
    1.7.2010 19:05 Kvakor
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Stejne tak kdyz hazes dvemi kostkami a delas soucet, gausova krivka se tomu tusim nadava.
    Přesně takto se gaussovské rozdělení dělá. Pokud si to ještě dobře pamatuju, tak na použitelnou verzi stačí posčítat dvanác normalizovaných hodnot (tj. z intervalo 0,1) a odečíst šestku, pro nenormalizované funkce (jako je rand()) je třeba samozřejmě odečíst šestinásobek RAND_MAX a výsledek touto hodnotou ještě podělit (nebo s ním počítat jako s číslem s pevnou řádovou čárkou).

    1.7.2010 12:56 JVid
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Funkční řešení je vygenerovat dvě čísla, jedno posunout o 32b doleva a pak je vyXORovat. Při sčítání nebo násobení to samozřejmě fungovat nebude, resp. ne tak, jak by člověk chtěl.
    1.7.2010 13:07 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Jo, to by asi šlo.
    Baník pyčo!
    Grunt avatar 1.7.2010 16:40 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    A nebylo by lepší cpát nějakou náhodnou entropii spíš do frekvencí? U toho je spíš šance, že si mozek něco domyslí.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    1.7.2010 16:57 Václav HFechs Švirga | skóre: 26 | blog: HF | Kopřivnice
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Příloha:
    A jak by sis to představoval? Na výstupu zvuk / fraktál?

    Mě by se líbilo nechat to takto náhodně generovat obrazce a kdyby mi nějaký něco připomínal (třeba nějaké zborcené písmeno A, to jsem už občas v tom smetí zahlédl), zastavit to a hledat podobné obrazce k tomu nalezenému (nějaké metoda postupného výběru). Jenže jak to realizovat...

    Jinak i z toho mého občas vypadne něco trošku zajímavého. Tady je třeba osově souměrný obrazec, který má druhou část barevně invertovanou.
    Baník pyčo!
    1.7.2010 17:22 Vskutečnosti Saýc | skóre: 7
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak

    No, mohl bys udelat inverzni diskretni kosinovou transformaci, treba by z toho lezlo neco zajimaveho :)

    Grunt avatar 1.7.2010 20:31 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: Delfská veštírna trochu jinak
    Ne. Prostě náhodný šum (jaký třeba vyleze z dd if=/dev/urandom of=/dev/fb0) převést zpět z frekvenční domény do časové. Takže třeba pomocí ImageMagicku (nemám nainstalovanou HDR verzi, takže nemůžu ověřit správnost):convert -size 512x512 rgb:/dev/urandom -size 512x512 rgb:/dev/urandom -ift show:. Jen by se musela nějak normalizovat amplitudová složka aby se výsledek vešel do rozsahu. A klidně by na to šlo použít to pole 8x8. By z toho sice vylezl jen rozmazaný maglajz, ale i tak je větší šance, že v něm mozek uvidí něco víc než v takovém políčku pixelů 8x8.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.