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

Byla vydána nová verze 2019-06-20 linuxové distribuce Raspbian určené především pro jednodeskové miniaturní počítače Raspberry Pi. Přehled novinek v poznámkách k vydání. Společně s Raspbianem byl aktualizován také instalační nástroj NOOBS (New Out Of the Box Software). Nejnovější verze Raspbianu vychází z Debianu 10 s kódovým názvem Buster a přináší především podporu Raspberry Pi 4 Model B.

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

Vývojáři postmarketOS (GitLab) hodnotí dva roky vývoje tohoto v květnu 2017 představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky [reddit, Hacker News].

Ladislav Hagara | Komentářů: 0
včera 10:11 | IT novinky

Nadace Raspberry Pi na svém blogu oficiálně představila (YouTube) jednodeskový počítač Raspberry Pi 4 Model B. K dispozici je ve třech verzích: 1 GB, 2 GB a 4 GB RAM. Cena začíná na 35 dolarech za verzi s 1 GB RAM. Nejnovější Raspberry Pi podporuje 2 monitory a rozlišení 4K.

Ladislav Hagara | Komentářů: 28
23.6. 18:22 | Komunita

Oznámení, že Ubuntu od vydání 19.10 nebude distribuovat 32bitové balíčky (ani multilib) a uživatelé mohou použít virtualizaci či kontejnery LXD, se setkalo s vlnou nevole, mj. protože i řada 64bitových aplikací využívá 32bitový instalátor. Vývojáři Wine a Steamu oznámili, že zřejmě přestanou Ubuntu od vydání 19.10 podporovat. Diskuze na Redditu: [Wine], [Steam].

Fluttershy, yay! | Komentářů: 55
22.6. 16:11 | IT novinky

Nový open source Windows Terminal představený na vývojářské konferenci Microsoft Build 2019 lze již instalovat z Microsoft Store. Podrobnosti v příspěvku na blogu Microsoftu.

Ladislav Hagara | Komentářů: 10
21.6. 13:11 | Zajímavý projekt

Článek na OMG! Ubuntu! představuje projekt Wayfire, jehož cílem je vývoj kompozitního správce oken inspirovaného Compizem běžícího nad Waylandem. Videoukázky na YouTube. Zdrojové kódy na GitHubu.

Ladislav Hagara | Komentářů: 4
21.6. 09:11 | Zajímavý projekt

Vzdělávací a veřejné instituce mohou získat open source router Turris Omnia formou bezplatné výpůjčky. Router Turris Omnia je poskytován v rámci projektu "Vybudování a ověřovací provoz systému Cyber Threat Intelligence (CTI)" podpořeného Ministerstvem vnitra ČR v rámci programu Bezpečnostního výzkumu pro potřeby státu v letech 2016 - 2021. Podrobnosti na stránkách projektu.

Ladislav Hagara | Komentářů: 1
20.6. 17:00 | Nová verze

Vývojáři Ubuntu informují, že od snapd verze 2.36 lze paralelně instalovat různé verze daného snap balíčku. Lze tak mít nainstalovaný například multimediální přehrávač VLC současně ve verzích stable, candidate, beta i edge.

Ladislav Hagara | Komentářů: 9
20.6. 16:11 | Nová verze

Byla vydána nová stabilní verze 2.6 (2.6.1566.40) webového prohlížeče Vivaldi (Wikipedie). Z novinek vývojáři zdůrazňují možnost blokování reklam s obtěžujícím chováním, vylepšenou podporu uživatelských profilů nebo zobrazení počtu nepřečtených listů na postranní liště. Nejnovější Vivaldi je postaveno na Chromiu 75.0.3770.94.

Ladislav Hagara | Komentářů: 0
20.6. 14:22 | Nová verze

Byla vydána nová verze 1.0.0 open source virtuálního modulárního syntezátoru VCV Rack. Přehled novinek v oznámení o vydání a na GitHubu. K dispozici jsou také open source pluginy. Ukázka práce s VCV Rack na YouTube.

Ladislav Hagara | Komentářů: 0
Jakou verzi jádra Linux typicky používáte na osobním počítači?
 (17%)
 (20%)
 (55%)
 (3%)
 (5%)
Celkem 353 hlasů
 Komentářů: 9, poslední 21.6. 14:42
Rozcestník

Delfská veštírna trochu jinak

1.7.2010 00:44 | Přečteno: 1711× | 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: 75 | blog: Výlevníček | 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: 75 | blog: Výlevníček | 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.