Open source reimplementace počítačových her Tomb Raider I a Tomb Raider II spolu s dalšími vylepšeními a opravami chyb TRX byla vydána ve verzi 1.0. Jedná se o sloučení projektů / enginů TR1X a TR2X do jednoho TRX. Videoukázka na YouTube.
Společnost Seznam.cz spouští konverzační nástroj založený na umělé inteligenci Seznam Asistent. Asistent využívá vlastní jazykový model SeLLMa a dočasně i komerční modely od OpenAI provozované v evropských datacentrech prostřednictvím Microsoft Azure. Dlouhodobým cílem Seznamu je provozovat Asistenta výhradně na interních jazykových modelech a ve vlastních datových centrech.
Software LibrePods osvobozuje bezdrátová sluchátka AirPods z ekosystému Applu. Exkluzivní funkce AirPods umožňuje využívat na Androidu a Linuxu. Díky zdokumentování proprietárního protokolu AAP (Apple Accessory Protocol).
Byl vydán AlmaLinux OS 10.1 s kódovým názvem Heliotrope Lion. S podporou Btrfs. Podrobnosti v poznámkách k vydání.
Placená služba prohledávání zprostředkovatelů dat a automatického odstraňování uniklých osobních údajů Mozilla Monitor Plus bude 17. prosince ukončena. Bezplatná monitorovací služba Mozilla Monitor bude i nadále poskytovat okamžitá upozornění a podrobné pokyny k omezení rizik úniku dat. Služba Mozilla Monitor Plus byla představena v únoru loňského roku.
Waydroid (Wikipedie, GitHub) byl vydán v nové verzi 1.6.0. Waydroid umožňuje spouštět aplikace pro Android na běžných linuxových distribucích. Běhové prostředí vychází z LineageOS.
Příspěvek na blogu Raspberry Pi představuje novou kompletně přepracovanou verzi 2.0 aplikace Raspberry Pi Imager (YouTube) pro stažení, nakonfigurování a zapsání obrazu operačního systému pro Raspberry Pi na SD kartu. Z novinek lze vypíchnout volitelnou konfiguraci Raspberry Pi Connect.
Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 8.00. Přináší podporu nejnovějších procesorů Intel a AMD nebo také tmavý režim.
Programovací jazyk Racket (Wikipedie), tj. jazyk z rodiny jazyků Lisp a potomek jazyka Scheme, byl vydán v nové major verzi 9.0. Hlavní novinku jsou paralelní vlákna (Parallel Threads).
Před šesti týdny bylo oznámeno, že Qualcomm kupuje Arduino. Minulý týden byly na stránkách Arduina aktualizovány podmínky používání a zásady ochrany osobních údajů. Objevily se obavy, že by otevřená povaha Arduina mohla být ohrožena. Arduino ubezpečuje, že se nic nemění a například omezení reverzního inženýrství v podmínkách používání se týká pouze SaaS cloudové aplikace.
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: