Přímý přenos (YouTube) z konference LinuxDays 2026, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.
Byla vydána nová verze 0.17.0 programovacího jazyka Zig (Codeberg, Wikipedie). Přispělo 206 vývojářů. Přehled novinek v poznámkách k vydání.
Open-source projekt OpenDLSS-NR je 'bitově přesná reimplementace' neuronové rendrovací sítě DLSS 5 od společnosti NVIDIA, jenže pro grafické API Vulkan (DLSS slouží k vylepšování klasickým způsobem vyrendrovaných snímků pomocí lokálních modelů umělé inteligence, a to v reálném čase). Projekt není nijak spojen se společností NVIDIA, je pouze pro OS Windows a natrénované váhy modelu si uživatelé musí obstarat sami. Zdrojový kód je k dispozici na GitHubu, pod licencí MIT s výjimkou pro komponenty třetích stran.
Společnost Cloudflare představila Clef a Clef-Flash, open-source rozhodovací modely určené pro rychlou a konzistentní klasifikaci vstupů. Na rozdíl od klasických LLM vracejí tyto modely deterministické striktně typované strukturované odpovědi s exaktními pravděpodobnostmi, tedy odpovědi ve stylu přelomového modelu Jev.
… více »Byla vydána beta verze Ubuntu 26.10 s kódovým názvem Stonking Stingray. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 26.10 mělo vyjít 15. října 2026.
Byla vydána verze 1.99.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Od 13. do 15. října proběhne v Praze OpenSSL Conference 2026. Na YouTube lze zhlédnout videozáznamy přednášek z loňského roku.
Eben Upton oznámil další zdražení jednodeskových počítačů Raspberry Pi. Tentokrát 2 GB varianty o 12,50 dolarů. Nově 2 GB Raspberry Pi 4 stojí 67,50 dolarů a 2 GB Raspberry Pi 5 stojí 77,50 dolarů.
OpenMandriva ROME, tj. průběžně aktualizovaná (rolling) edice linuxové distribuce OpenMandriva, byla vydána ve verzi 26.09. Vedle Flatpaku také s podporou Snapu.
Edison Design Group po více než 30 letech zveřejnil zdrojový kód svého EDG C/C++ front-endu. Ten proslul širokou podporou standardů C++ a kompatibilitou s dialekty kompilátorů od Microsoftu, GNU, Clangu, Sunu a dokonce i s prehistorickým cfrontem. EDG byl použit například v kompilátoru Intel C++ Classic, kompilátoru NVCC od firmy NVIDIA pro platformu CUDA nebo v našeptávači kódu IntelliSense v produktech společnosti Microsoft. Projekt nyní spravuje organizace The C++ Alliance a kód je dostupný pod licencí Apache 2.0, doplněnou o výjimky projektu LLVM.
1) Kdyz A = 10, tak B = 2 2) Kdyz A = 20, tak B = 0.3Kolik bude B, kdyz A bude nekde mezi temi 10 a 20? B klesa linearne, mezi 2 a 0.3 je primka. Takze napr. GnuPlot mi vykresli graf, ale neukaze vzorec vypoctu. Nevedeli byste nekdo, co je toto za vypocet? Kdyztak predem diky za pripadne tipy.
Řešení dotazu:
if A1/B1=5 && A2/B2=9 then An/Bn=?
B = -0,17 * A + 3,7
if A1/B1=5 && A2/B2=9 then An/Bn=?
if 10/2 && 20/0.3 then 13.7/?dava to nejaky smysl? Myslim jako vypocet, ne jako programovani, to je jen pseudokod.
2 = 10x + y ? = 13.8x + y 0,3 = 20x + y
7 = 5000x + y ? = 5850x + y 0,01 = 6700x + y
1) Kdyz A = 10, tak B = 2 2) Kdyz A = 20, tak B = 0,3prepiseme
1) Kdyz X = 10, tak Y = 2 2) Kdyz X = 20, tak Y = 0,3Zavislost nech je linearna (priamka), Ale daj obrazok grafu, z neho sa da urcit, aka je to funkcia (linerarna, exponencionalna, …) Ak priamka:
Y = A * X + Btak pre dve zavisle hodnoty rovnakej funkcie bude vseobecne:
Y1 = A * X1 + B Y2 = A * X2 + BDosadime hodnoty:
2=A*10+B 0,3=A*20+BA riesime sustavu rovnic s dvoma neznamymi (matematika),
2=10*A+B 0,3=20*A+BPouzijeme scitaciu metodu
2 = 10 * A + B 0,3 = 20 * A + B / *(-1) --------------------------- 2 = 10 * A + B -0,3 = (-20) * A + B (scitame riadky) -0,7 = (-10) * A + B / *(-1) 0,7 = 10 * A A = 0,07 A dosadime do 1, rovnice zo zadanie: 2 = 10 * A + B 2 = 0,07 * 10 + B 2 = 0,7 + B / -0,7 B = 2 - 0,7 B = 1,3Dostali sme:
A = 0,07 B = 1,3Vysledna zavislost je:
Y = 0,7 * X + 1,3
// y = K1 * x + K2 - rovnica priamky float x1,x2,x3,y1,y2,y3,K1,K2; x1 = 10; // x-ova suradnica bodu 1 y1 = 2; // y-ova suradnica bodu 1 x2 = 20; // x-ova suradnica bodu 2 y2 = 0.3; // y-ova suradnica bodu 2 // Vypocet K1 a K2: K1 = (y2-y1)/(x2-x1); K2 = y1 - K1 * x1; x3 = 14.5; // x-ova suradnica bodu 3 // Neznama suradnica y bodu 3: y3 = K1 * x3 + K2;
2.000000 = -0.170000 * 10.000000 + 3.700000 3.649000 = -0.170000 * 0.300000 + 3.700000Kod overaci:
#include <stdio.h>
int main()
{
float x1,x2,x3,y1,y2,y3,K1,K2;
x1 = 10; // x-ova suradnica bodu 1
y1 = 2; // y-ova suradnica bodu 1
x2 = 20; // x-ova suradnica bodu 2
y2 = 0.3; // y-ova suradnica bodu 2
// Vypocet K1 a K2:
K1 = (y2-y1)/(x2-x1);
K2 = y1 - K1 * x1;
x3 = 14.5; // x-ova suradnica bodu 3
// Neznama suradnica y bodu 3:
y3 = K1 * x3 + K2;
x3=10;
y3= K1 * x3 + K2;
printf("%f = %f * %f + %f\n", y3, K1, x3, K2);
x3=0.3;
y3= K1 * x3 + K2;
printf("%f = %f * %f + %f\n", y3, K1, x3, K2);
return 0;
}
#include <stdio.h>
int main()
{
float x1,x2,x3,y1,y2,y3,K1,K2;
x1 = 10; // x-ova suradnica bodu 1
y1 = 2; // y-ova suradnica bodu 1
x2 = 20; // x-ova suradnica bodu 2
y2 = 0.3; // y-ova suradnica bodu 2
// Vypocet K1 a K2:
K1 = (y2-y1)/(x2-x1);
K2 = y1 - K1 * x1;
x3 = 14.5; // x-ova suradnica bodu 3
// Neznama suradnica y bodu 3:
y3 = K1 * x3 + K2;
x3=10;
y3= K1 * x3 + K2;
printf("%f = %f * %f + %f\n", y3, K1, x3, K2);
x3=20;
y3= K1 * x3 + K2;
printf("%f = %f * %f + %f\n", y3, K1, x3, K2);
return 0;
}
linsolve([10*x + b - 2, 20*x + b - 0.3], (x, b)), kde x, b jsou importované symboly. Takže pak prostě
def fce(x): return -0.17*x + 3.7A odkud plyne předpoklad lineární závislosti? Je jasné, že Gnuplot propojí dva body přímkou. Čím jiným? Nekonečným počtem křivek? Má ta úloha opravdu lineární vztah ve svém základu?
Načež soused mě poučil, že kdyby tu ty hory nebyly, tak Slunce nemá kam zapadnout a je pořád světlo.Ale vždyť to je pravda, kdyby tady nebyla ta [neprůhledná] země pod tebou, tak vidíme Slunce i v noci -- zespodu.
10*x_1 +x_2 = 2 20*x_2 + x_2 = 0,3,což zobecníme (to chceš, jak jsem pochopil) a přepíšeme to do tvaru
a_11*x_1 + a_12*x_2 = b_1 a_21*x_1 + a_22*x_2 = b_2.Ve tvém případě je
a_11 = 10, a_12 = 1, a_21 = 20, a_22 = 1, že ano. Nyní se zachováme jako dospělí lidé a tuto soustavu zapíšeme v maticovém tvaru:
| a_11 a_12 | |x_1| |b_1| | | | | = | | | a_21 a_22 | |x_2| |b_2|Přesuneme se někdy do roku 1750 ;) a použijeme tzv. Cramerovo pravidlo, které říká, že pro naši hledanou
x_i platí
det A_i
x_i = ---------,
det A
kde det A je determinant matice soustavy a det A_i je determinant téže matice, ovšem nahradíme-li i-tý sloupec maticí pravých stran, tj. například
| b_1 a_12 |
det A_1 = det | |.
| b_2 a_22 |
Determinant matice "2x2" vypočteš jako det A = a_11*a_22 - a_21*a_12, takže jde o rozdíl součinů diagonál v naznačeném směru. Samozřejmě platí, že determinant soustavy nesmí být nulový (matice soustavy musí být regulární).
Zcela stejně pak pro det A_1 a též det A_2 máš
| b_1 a_12 |
det A_1 = det | | = b_1*a_22 - b_2*a_12,
| b_2 a_22 |
| a_11 b_1 |
det A_2 = det | | = a_11*b_2 - a_21*b_1.
| a_21 b_2 |
No a teď už můžeš spočítat x_1, x_2, takže
det A_1 b_1*a_22 - b_2*a_12
x_1 = --------- = -----------------------
det A a_11*a_22 - a_21*a_12
det A_2 a_11*b_2 - a_21*b_1
x_2 = --------- = -----------------------
det A a_11*a_22 - a_21*a_12
A to je celý algoritmus, který potřebuješ.
Můžeme si zkusit dosadit tvé konkrétní numerické vstupy, pak
2*1 - 0,3*1 1,7
x_ 1 = ----------- = --- = -0,17,
10*1 - 20*1 -10
10*0,3 - 20*2 3 - 40 -37
x_2 = --------------- = ------ = ----- = 3,7
-10 -10 -10
Takže máme řešení y(x) = a*x + b = -0,17 + 3,7.
Pro tvůj konkrétní problém, kdy máš pořád a_12 = a_22 = 1, řešení zdegeneruje na jednodušší formu
det A_1 b_1 - b_2
x_1 = --------- = -------------
det A a_11 - a_21
det A_2 a_11*b_2 - a_21*b_1
x_2 = --------- = --------------------
det A a_11 - a_21
A výsledný kód by byl zhruba něco jako
def najdi_rovnici(a_1, a_2, b_1, b_2):
det_A = float(a_1 - a_2)
det_A_1 = b_1 - b_2
det_A_2 = a_1*b_2 - a_2*b_1
x_1 = det_A_1/det_A
x_2 = det_A_2/det_A
print 'y(x) := %s*x + %s' % (x_1, x_2)
return None
# nebo třeba
# return x_1, x_2
Když v Pythonu takový kód spustím pro tvé zadání, dostanu
>>> najdi_rovnici(10, 20, 2, 0.3) y(x) := -0.17*x + 3.7Jestli jsem někde udělal chybu, sorráč, nejsem účetní. Ale princip bys měl z toho pochopit.
from numpy import linalg # Matice A, matice B ma = [[10, 1], [20, 1]] mb = [2, 0.3] res = linalg.solve(ma, mb) print(res) # Vrací [ -0.17 3.7 ] # Výpočet trvá pár mikrosekund.Analytická metoda se spočte v řádu nanosekund. Ale podobně rychle to jde i v Julii:
A = [10 1; 20 1]
b = [2; 0.3]
A \ b
# Vrací
# 2-element Vector{Float64}:
# -0.17
# 3.7
Tiskni
Sdílej: