Zpráva Justičního výboru Sněmovny reprezentantů upozorňuje na cenzurní kampaň Evropské komise, mířenou proti svobodě projevu na sociálních sítích. V dokumentu se uvádí, že se Evropská komise během posledních šesti let účastnila více než 100 uzavřených jednání, během nichž po platformách požadovala úpravy pravidel moderování obsahu, přičemž toto úsilí Komise zahrnovalo i cenzuru politických názorů a pravdivých informací. Výbor zdůrazňuje, že tento přístup Bruselu ohrožuje ústavou zaručená práva Američanů na svobodu projevu.
Linus Torvalds vydal jádro Linux 6.19. Podrobný výčet změn je ke zhlédnutí na stránce Kernel Newbies, stručné výběry v LWN (část první, druhá).
Do prodeje jde tichá bezdrátová herní myš Logitech PRO X2 SUPERSTRIKE s analogovými spínači s haptickou odezvou (HITS, Haptic Inductive Trigger System). Cena je 4 459 Kč.
Microsoft na GitHubu zveřejnil zdrojový kód projektu LiteBox, jedná se o 'knihovní operační systém' (library OS) zaměřený na bezpečnost, využívající systémovou architekturu LVBS k ochraně jádra před útoky z uživatelského prostoru. LiteBox je napsán v Rustu a uvolněný pod licencí MIT. Projekt je teprve v rané fázi vývoje.
BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.
Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.
Byla představena nová verze modelu Claude Opus 4.6 od společnosti Anthropic. Jako demonstraci možností Anthropic využil 16 agentů Claude Opus 4.6 k vytvoření kompilátoru jazyka C, napsaného v programovacím jazyce Rust. Claude pracoval téměř autonomně, projekt trval zhruba dva týdny a náklady činily přibližně 20 000 dolarů. Výsledkem je fungující kompilátor o 100 000 řádcích kódu, jehož zdrojový kód je volně dostupný na GitHubu pod licencí Creative Commons.
Kultovní britský seriál The IT Crowd (Ajťáci) oslavil dvacáté výročí svého prvního vysílání. Sitcom o dvou sociálně nemotorných pracovnících a jejich nadřízené zaujal diváky svým humorem a ikonickými hláškami. Seriál, který debutoval v roce 2006, si i po dvou dekádách udržuje silnou fanouškovskou základnu a pravidelně se objevuje v seznamech nejlepších komedií své doby. Nedávné zatčení autora seriálu Grahama Linehana za hatecrime však vyvolává otázku, jestli by tento sitcom v současné Velké Británii vůbec vznikl.
Společnost JetBrains oznámila, že počínaje verzí 2026.1 budou IDE založená na IntelliJ ve výchozím nastavení používat Wayland.
Společnost SpaceX amerického miliardáře Elona Muska podala žádost o vypuštění jednoho milionu satelitů na oběžnou dráhu kolem Země, odkud by pomohly zajistit provoz umělé inteligence (AI) a zároveň šetřily pozemské zdroje. Zatím se ale neví, kdy by se tak mělo stát. V žádosti Federální komisi pro spoje (FCC) se píše, že orbitální datová centra jsou nejúspornějším a energeticky nejúčinnějším způsobem, jak uspokojit rostoucí poptávku po
… více »
Tiskni
Sdílej:
> blassic monte_carlo Syntax horror in 70
70 IF X > U THEN 90
GOTO 90 ?
IF X > U THEN GOTO 90
Z Archa jsem vydoloval blassic (a classic interpreter of basic), naťukal source do souboru a hodil mu to.
Možná stojí za úvahu použít skutečný kompilátor - FreeBasic. S různými těmi interprety nemám dobré zkušenosti.
Tady je funční ekvivalent v pythonu:
import random, math
n = 0
print "No. OF THROWS ; PI"
for j in xrange(1,24):
for k in xrange(1,500):
x = random.random()
u = math.sin(math.pi*random.random())
if x < u:
n += 1
t = 500*j
p = 2*float(t)/float(n)
print t, ";", p
dobrá práce, díky moc
real 0m0.053s user 0m0.036s sys 0m0.000s
marek@mantisha:~/pi> time python pi.py 10000 ; 3.11041990669 real 0m0.125s user 0m0.108s sys 0m0.016s marek@mantisha:~/pi> gfortran pi-jehla.f95 marek@mantisha:~/pi> time ./a.out *** 3.122561 real 0m0.009s user 0m0.004s sys 0m0.004s marek@mantisha:~/pi>
PROGRAM PI_JEHLA integer :: i = 1,pocet_iteraci = 10000,vnejsi_citac = 24, splneno = 0, foo = 0 double precision :: pi = 0, random = 0, x = 0, u = 0 double precision,parameter :: const_pi = 3.141592653589793238462643383279 !!print*,"Napiste pocet iteraci" !read(*,*)pocet_iteraci vnitrni: DO call random_number(random) x = random call random_number(random) u = random if(x < sin(u*const_pi)) splneno=splneno+1 i=i+1 ! if(splneno>0) print*,i," -- ",(2*real(i)/real(splneno)) if(i==pocet_iteraci) EXIT vnitrni END DO vnitrni print*,"***",(real(2*pocet_iteraci)/real(splneno)) ENDMístní guruové by to jistě ještě nějak zoptimalizovali.
import random, math
n = 0
for k in xrange(1,10000):
x = random.random()
u = math.sin(math.pi*random.random())
if x < u:
n += 1
t = 10000
p = 2*float(t)/float(n)
print t, ";", p
radovan@PC1:~/basic$ time basic montecarlo.bas No. OF THROWS PI 500 3.125 1000 3.154574 1500 3.144654 2000 3.167063 2500 3.134796 3000 3.176284 3500 3.146067 4000 3.145891 4500 3.144654 5000 3.143666 5500 3.138374 6000 3.138896 6500 3.129514 7000 3.139717 7500 3.127606 8000 3.121342 8500 3.115265 9000 3.119584 9500 3.133245 10000 3.133323 10500 3.124535 11000 3.126332 11500 3.133942 12000 3.136025 real 0m0.041s user 0m0.036s sys 0m0.004s    Jen mě tak napadlo, když se počítá poměr zásahů uvnitř a vně kruhu, nebylo by lepší, než používat umělou "náhodu", prostě udělat mřížku a vzít to bod po bodu? Zkusím na tom po obědě trochu zapracovat.
kyosuke@gondolin:~> ruby <<EOF
> require 'narray'
> def pi(n)
> x, y = Array::new(2){NArray::float(n).random}
> return 4 * ((x**2 + y**2) < 1).mean
> end
> puts " N | Pi \n =================="
> 14.times do |x|
> x = (x%2==0 ? 1 : 3) * 10**(x/2)
> printf " %8d | %f\n", x, pi(x)
> end
> EOF
N | Pi
==================
1 | 4.000000
3 | 4.000000
10 | 2.800000
30 | 2.800000
100 | 3.040000
300 | 3.200000
1000 | 3.056000
3000 | 3.150667
10000 | 3.134400
30000 | 3.150133
100000 | 3.146520
300000 | 3.137933
1000000 | 3.141056
3000000 | 3.141111
kyosuke@gondolin:~>Možná právě proto se to takhle nepočítá...
A hlavně bych nepoužíval tenhle algoritmus...
echo "scale=$kolik_des_cisel; 4*a(1)" | bc -l
Upřímně, kolik lidí kdy v životě použilo z nějakého praktického důvodu více než 20 číslic z desetinného rozvoje čísla pí? :) Myslím, že jich moc nebude to by mělo stačit i pro mezihvězdné vzdálenosti.
Mno jo, kompilátor.)
10 d=54: z=d^2 20 for x=-d to d 30 x2=x^2 40 for y=-d to d 50 if x2+y^2<=z then n=n+1 60 next y 70 next x 80 print n/z 90 exit    Při přibližně stejném počtu pokusů to je dokonce rychlejší, s podobnou přesností:
radovan@PC1:~/basic$ time basic pi_mrizka.bas 3.136145 real 0m0.022s user 0m0.020s sys 0m0.004s    Ale pravda je, že abych z toho dostal správně aspoň pět míst, musel jsem dát d=10000 a počkat si deset minut. On BASIC nikdy nebyl z nejrychlejších, už kvůli tomu počítání s reálnými čísly
V tom Chipmunku jsem ještě nenastudoval jak to přepnout do celých, neznáte někdo obdobu DEFINT A-Z? Pak by ten čas mohl být zajímavější.
(což má smysl jen dokud se vleze jeden řádek do konzole, tzn. pro r do 40):
import sys
r = 10
n = 0
for y in xrange(-r,r+1):
for x in xrange(-r,r+1):
if (x**2 + y**2)**0.5 <= r:
sys.stdout.write(".")
n += 1
else:
sys.stdout.write(" ")
if x == r:
sys.stdout.write("\n")
print "pi =", float(n)/float(r**2)
To mi připomíná jeden pěkný bash skript co jsem někde viděl -- do konzole takhle kreslil Mandelbrotův fraktál
.