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í
×
dnes 18:55 | Nová verze

Bylo vydáno OpenBSD 6.6. Opět bez oficiální písně. Z novinek lze zmínit například sysupgrade(8).

Ladislav Hagara | Komentářů: 0
dnes 08:36 | Nová verze

Vyšla nová verze monitorovacího řešení Centreon 19.10.0. Novinek je spousta (realtime API, podpora JIRA, vylepšený systém notifikací...), ale těmi nejdůležitějšími je pro mnohé uživatele podpora nové verze rrdtool 1.7.x a php 7.2. Systém tak půjde bez problémů provozovat na jiných distribucích než CentOS 7. Kompletní přehled novinek v seznamu změn. Předpřipravená appliance i samotné části jsou k dispozici na oficiálních stránkách.

Max | Komentářů: 0
dnes 01:00 | Komunita

Dnes vyjde Ubuntu 19.10 s kódovým názvem Eoan Ermine. Přehled novinek v poznámkách k vydání. Ubuntu 20.04 LTS bude Focal Fossa.

Ladislav Hagara | Komentářů: 6
včera 22:11 | Zajímavý projekt

Padesátiny Unixu lze oslavit také hrou The Unix Game aneb na unixové roury pomocí Scratche.

Ladislav Hagara | Komentářů: 1
včera 21:44 | Komunita

Vývojáři svobodného 3D softwaru Blender oznámili, že nejnovějším firemním sponzorem Blenderu je společnost Adidas. Jedná se o úroveň Corporate Silver, tj. 12 tisíc eur ročně.

Ladislav Hagara | Komentářů: 8
včera 18:22 | Komunita

V září proběhla každoroční konference Akademy komunity KDE. Nyní jsou záznamy přednášek dostupné online. Témata se dotýkají aplikací a knihoven KDE, jejich adaptaci pro různá speciální použití (vestavěná zařízení či rozšířená realita) i obecně vývoje a distribuce softwaru.

Fluttershy, yay! | Komentářů: 0
včera 09:11 | Zajímavý článek

Mozilla.cz informuje o vylepšování vlastních about: stránek Firefoxu, konkrétně o odstraňování volání funkce eval() z těchto stránek. Tyto stránky mají přístup k interním součástem Firefoxu, ale protože jsou napsané v HTML a JavaScriptu, mohou být cílem podobných útoků jako webové stránky zobrazované v prohlížeči (např. vložení cizího kódu nebo obsahu), jen s potenciálně závažnějším dopadem. Pokud by se někomu skutečně povedlo kód do

… více »
Ladislav Hagara | Komentářů: 3
včera 08:55 | Zajímavý projekt

Uživatel GitHubu joeycastillo představil The Open Book Project, jehož cílem je vytvořit open-source čtečku elektronických knih. Projekt se zatím nachází v rané fázi vývoje, už nyní ale obsahuje použitelný návrh hardware prototypu „Feather Wing“, jehož cílem má být ověření konceptu na 4,2palcovém displeji. Tento koncept je postaven na kitu Adafruit Feather M4 Express, který ovládá hlavní desku s displeji a tlačítky. Po úspěšném ověření

… více »
Bystroushaak | Komentářů: 41
včera 05:00 | Nová verze

Byla vydána verze 5.0.0 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata (Wikipedie). Přehled novinek v oficiálním oznámení a v aktualizované dokumentaci.

Ladislav Hagara | Komentářů: 0
15.10. 20:33 | Zajímavý projekt

Byly zveřejněny schémata, firmware a instrukce pro sestavení trackballu Ploopy. Ten používá Arduino, senzor PMW3360 a 1,75palcovou kouli. Zdrojové soubory jsou šířeny pod open-hardware licencí CERN a GNU GPLv3. Tvar je inspirovaný klasickým trackballem Microsoft Trackball Explorer, jehož výroba byla ukončena kolem roku 2005 bez náhrady; projekt Ploopy se k tomu ale z právních důvodů nehlásí. Již vyrobené díly je možno objednat za 200 kanadských dolarů. Další podrobnosti v příspěvcích uživatele crop_octagon na Redditu.

Fluttershy, yay! | Komentářů: 28
Kdy jste naposledy viděli počítač s připojeným běžícím CRT monitorem?
 (20%)
 (4%)
 (11%)
 (39%)
 (24%)
 (2%)
Celkem 412 hlasů
 Komentářů: 22, poslední 23.9. 08:36
Rozcestník
Štítky: není přiřazen žádný štítek

.

6.7.2007 20:39 | fake | poslední úprava: 31.12.2010 16:49

.        

Hodnocení: 57 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

Josef Kufner avatar 6.7.2007 20:44 Josef Kufner | skóre: 69
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Což sinus, ale dal bych tam desetinou tečku místo čárky. ;-)
Hello world ! Segmentation fault (core dumped)
6.7.2007 20:45 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Ha! Tak chybu na řádku 60 jsem už vyřešil. Překladatel byl až příliš svědomitý a přeložil desetinou tečku na desetinou čárku. Teď mi straší řádka 70 a její IF.
> blassic monte_carlo 

Syntax horror in 70
Josef Kufner avatar 6.7.2007 20:49 Josef Kufner | skóre: 69
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
70 IF X > U THEN 90
Hello world ! Segmentation fault (core dumped)
6.7.2007 20:50 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
výborně! už to jede! díky!
6.7.2007 23:09 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
nemá tam být GOTO 90 ?
Quando omni flunkus moritati
7.7.2007 10:22 Robo
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Tiez sa mi zda, ze tam ma byt:
IF X > U THEN GOTO 90
michich avatar 7.7.2007 11:36 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
V mnoha dialektech BASICu je možné GOTO za THEN vypustit. V některých za THEN ani nic jiného být nemůže.
6.7.2007 20:55 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
sice to jede ale výstup je dost divný :( místo krásného pí vypadávají nějaké dvojky .. :(
Josef Kufner avatar 6.7.2007 20:58 Josef Kufner | skóre: 69
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Asi to bude rozbitý...
Hello world ! Segmentation fault (core dumped)
6.7.2007 21:02 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Že by proto, že se tam nikde nepřiřazuje do fí?
6.7.2007 21:40 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Tohle jsem teda nepochopil, počítá to pí a pracuje to se sin a pí? WTF? přece rovnoměrně [0-1] střelím x-ovou souřadnici a y-souřadnici a podívám se jestli mi to spadlo do toho jednotkovýho čtvrtkruhu nebo ne, takhle získám aproximaci obsahu toho čtvrkruhu (počet pokusů co se trefily/počet včech pokusů), tohle vydělim 4 a mám pí
6.7.2007 21:43 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
na to "podívání se" mi stačí umocňování, žádnej sin (x^2 + y^2 <= 1)
Mark Stopka avatar 6.7.2007 21:54 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Taky se mi ta implementace zdá nějaká divná :)
Mark Stopka avatar 6.7.2007 22:00 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Mě se mnohem více líbí tento vztah pro výpočet. :)
michich avatar 6.7.2007 22:01 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
No to bude jiný pokus: Buffonova jehla
6.7.2007 22:09 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
jj to je ono
6.7.2007 22:48 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
dokonce je tam parádní javová app http://www.angelfire.com/wa/hurben/buff.html
6.7.2007 22:16 Andrej | skóre: 47 | blog: Republic of Mordor | Zürich
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
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.

ǑǦŹǓǕǙǞǺǨȞȬḔḦḰḾṊṎṸẄẌỖ
6.7.2007 23:42 spang
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Chyba je nejspíš ve funkci RND (resp. její implementaci v blassicu, která není zdokumentovaná). To RND(X) a RND(F) totiž, zdá se, vrací pořád nulu. Kdyby to vracelo náhodný float od 0 do 1, tak to půjde. Zajímavé věci to dělá, pokud RND(X) nahradíš třeba RND(1) a RND(F) nahradíš RND(2), ale správně to pořád nevypadá ;-)

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
7.7.2007 10:43 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
poklona pane :-) dobrá práce, díky moc
7.7.2007 10:48 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Zajímavé. Někdy kolem roku 1970~1980 tento experiment zabral cca 53 sec počítačového času (On the Librascope of the Electr. Engin. Depth, Univ. of Colorado). Ještě dříve to pár nadšenců dělali jako rekreační sport :) A dneska..
real    0m0.053s
user    0m0.036s
sys     0m0.000s
Mark Stopka avatar 7.7.2007 16:05 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Zdá se ti to rychlé? CPU podtaktované na 800MHz.
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))
END
Místní guruové by to jistě ještě nějak zoptimalizovali.
Mark Stopka avatar 7.7.2007 16:10 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Použitý pythoní kód
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
8.7.2007 12:49 rad.ovan@seznam.cz
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
    Předpokládám že ten program je původně psaný v GW-BASICu od Microsoftu, takže chybka by byla skutečně v té funkce RND. Ona se tam totiž chová dost divně, RND nebo RND(cokoliv) vrací následující číslo v posloupnosti, zatímco RND(0) vrací to poslední použité. No, co by člověk chtěl od Gatese, žejo.
    Chvilku jsem si s tím hrál v Chipmunk BASICu, a tam to fungovalo když se v obou případech použilo RND(1), které vrací číslo mezi 0 a 1. Tady je výsledek na 1200MHz P3:
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.

P.S. Syntax horror je fakt pěkné hlášení :-)
8.7.2007 14:19 Radovan Garabík
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
nebylo by lepší, než používat umělou "náhodu", prostě udělat mřížku a vzít to bod po bodu?

- bolo by to v tomto prípade jednoduchšie, ale:
  • v prípade zložitých mnohodimenzionálnych problémov môže byť vytvorenie mriežky väčší problém, než náhodné strieľanie
  • mriežka by spôsobovala systematickú chybu, buď by bol výsledok vždy podhodnotený alebo nadhodnotený, podľa toho, ako by si rátal body po obvode kruhu. Vyrovnať túto chybu si vyžaduje dodatočnú analýzu, napr. ako presne je zakrivená kružnica v danom bode mriežky - a zložitosť takej analýzy je asi porovnateľná s priamym výpočtom π "iným spôsobom" - tak to už rovno môžeme použiť ten "iný spôsob" :-)
8.7.2007 16:08 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Snad jen nedává moc smysl zvyšovat počet lineárně...zákon velkých čísel je neúprosný:
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á... :-)
8.7.2007 16:13 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
jak dlouho to jelo?
8.7.2007 17:37 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Nevím, asi něco pod dvě sekundy? Není to žádný zázrak, kdybych to chtěl rychlý, nepíšu to v Ruby, ne? ;-) A hlavně bych nepoužíval tenhle algoritmus... :-D
Mark Stopka avatar 8.7.2007 19:00 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Kdyby si to chtěl rychlé tak by si to napsal ve fortranu IV?
8.7.2007 20:00 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Ne, použil bych GMP... ;-)
Mark Stopka avatar 8.7.2007 20:07 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Není GMP náhodou knihovna pro práci s velkýma číslama?
8.7.2007 20:17 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Jasně, a chytřejší než její autoři nebudeme. Takže až budu potřebovat hodně dlouhé pí, vezmu ten ukázkový zdroják ke GMP a nebudu si hrát se špendlíkama. :-D
Mark Stopka avatar 8.7.2007 20:41 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Když budu potřebovat hodně dlouhé pí tak napíšu 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.
8.7.2007 21:39 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Já myslím, že je dobré, že pí i é jsou 3, dobře se to pamatuje :-D
Mark Stopka avatar 8.7.2007 22:52 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Jo, jo pí to je něco kolem tří.
8.7.2007 23:22 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Mno, jednak to má pedagogickou hodnotu, jednak tam pořád ještě můžou být schovaný všechny ty MP3ky, co ještě nemám. Jen je najít, no. :-)
8.7.2007 20:47 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Proč GMP? Mrknu do wikipedie a najdu si tam hezký odkaz na první 4 milióny čísel z Pi. To by mělo uspokojit většinu požadavků :-D
When your hammer is C++, everything begins to look like a thumb.
Mark Stopka avatar 8.7.2007 21:13 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Michale, Michale ty mi kazíš celou radost. :-)
8.7.2007 23:21 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Ale to není ono, tam se nic nekompiluje ani nedebuguje, kam zmizela dětinská radost z úspěchu? :-D ;-)
9.7.2007 08:41 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
Inženýrský přístup, hledá se nejjednodušší řešení, které ještě funguje (v překladu, jsem líný jako veš a chci to mí rychle) :-D
When your hammer is C++, everything begins to look like a thumb.
9.7.2007 15:49 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
(Hmm, když jsem to z hnusného Ruby přepsal do ještě hnusnějšího Lispu, prošlo to celé asi za čtvrt sekundy. :-) Mno jo, kompilátor.)
8.7.2007 21:00 rad.ovan@seznam.cz
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
    Matematika není zrovna moje silná stránka, přiznávám. Tu mřížku jsem myslel takhle nějak:
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ší.
9.7.2007 05:42 spang
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
http://en.wikipedia.org/wiki/Computing_pi -- To je dobrý článek. Je tam popsána i tato metoda.

Tady je python verze, jako bonus tu kružnici nakreslí do konzole :-) (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 :-).
9.7.2007 10:23 fakenickname | skóre: 42 | blog: fakeblog
Rozbalit Rozbalit vše Re: BASIC, Házení jehlou
hezké :)

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.