Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
Jsem zakladatelem tohoto portálu. Linux jsem používal spousty let, nějaký čas jsem se aktivně podílel na jeho propagaci v Česku (CZLUG, časopisy ComputerWorld, Network Magazine atd). Se současným Abíčkem už nemám nic společného.
Aspoň mám ten pocit. Chci napsat dcerce na tablet aplikaci na procvičování matematiky. Udělal jsem si poměrně jasnou představu o designu i funkčnosti a začal jsem ji realizovat. Před večeří jsem dopsal komplexní datový model, co vše se dá parametrizovat pro generování rovnic. Zadavatel bude mít obrovské možnosti. Problém nastal, když jsem začal psát generátor.
Sepsání myšlenek mi možná pomůže odrazit se dál, pokud ne, třeba mi někdo ze čtenářů konstruktivně poradí.
Pro oba operandy rovnice i výsledek je možné nadefinovat buď minimální nebo maximální či obě hodnoty, případně rozsah hodnot (v tom případě jsou min a max zakázány). Pro jednoduchost zapomeňme na možné omezení vzdálenosti operandů. Triviální příklad se všemi možnostmi zadání je na prvním řádku, jedno řešení je na druhém řádku
min: 1, max: 10 | + | min: 10 | = | výčet: 12, 13, 14, 18 |
2 | + | 11 | = | 13 |
Problém je, jak napsat obecný generátor? Nejspíše bych měl začít od výčtu hodnot, ze kterého si náhodně vyberu jedno číslo. A pak náhodně vybrat druhé číslo a dopočítat zbývající číslo. Například u uvedeného příkladu si k náhodnému výsledku (13) náhodně vygeneruju první operand (2) a vypočtu druhý (11). Bohužel je ale až příliš snadné zvolit číslo, se kterým rovnice nikdy nebude sedět; ke kterému nenajdu vhodné operandy. Můžu si pomoci chytristikou pro konkrétní situace. Zde u odečítání je lepší si vybrat vyšší číslo, takže začnu druhým operandem (11) a odečtem získám první (2). Ale stejně mi hodnota nemusí vyjít v rozsahu povolených hodnot. Takže pak musí následovat hledání správné kombinace brutální silou s pojistkou proti uváznutí (když zadání nemá řešení nebo mám smůlu na blbě vylosovaná čísla).
Během psaní jsem nic nového nevymyslel. Napadá něco vás?
Tiskni
Sdílej:
Pamatuju na přednášku na UPOL od Drdy...Toto je stezi uveritelna historka, ... protoze Dr.Dla na prednasky zasadne nechodil.
Reálné výsledky na Nexus 4: během jedné milisekundy zvládne 5 cyklů nalezení jedné rovnice (obsahující 2x generování náhodného čísla, dvě matematické operace, pár porovnání a hlavně několik volání funkcí).
Parametry:
FormulaDefinition{unknowns=[RESULT], operators=[+], result=Values{minValue=null, maxValue=null, listing=[10, 11, 12]}, operandDifference=null, rightOperand=Values{minValue=3, maxValue=60, listing=null}, leftOperand=Values{minValue=0, maxValue=90, listing=null}}Moje optimalizovaná verze najde v 10 případech řešení do 3 pokusů 6x, do 5 pokusů 1x, do 9 pokusů 2x a jednou potřebovala 35 pokusů (což zabralo 7 ms). To je docela slušné
Například u uvedeného příkladu si k náhodnému výsledku (13) náhodně vygeneruju první operand (2) a vypočtu druhý (11).Já jsem na to šel opačně, vždy jsem vygeneroval operandy, z nich jsem vypočítal výsledek. Pokud byly příklady sčítání a násobení, vypsaly se operandy, pokud byly odčítání a dělení, vypsal se výsledek a první operand, bez ohledu na to jestli je větší nebo menší. Tak jsem se vždycky vešel do zadaného limitu. Nedělaly se před třiceti lety takovéhle věci v BASICu na dvacet řádků?
I. a >= 2 II. a <= 9 III. b >= 11 IV. c >= 12 ---> a + b >= 12 V. c <= 14 ---> a + b <= 14 ------------------------------------ b <= 12 V. - I. a <= 3 V. - III. ------------------------------------ 2 <= a <= 3 11 <= b <= 12Nyni postupuji tak, ze si postupne volim promenne z intervalu a dopocitam ostatni. Pro a = 2 a dosazeni do zbytku mi zadna omezujici podminka nepribude, takze mam reseni [2; 11], [2; 12]. Pro a 3 mi pribude b <= 11 (z V.), takze tam je jedno reseni [3; 11]. Pote dopocitam c a opakuji pro c = 18. Dalsi moznost je resit to graficky a reseni generovat nahodnym vzorkovanim pres obdelnikovou obalku vysledneho utvaru.