Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 03. 07. 2012 19:51

LRJ1
Příspěvky: 156
Škola: TUL - FM - obor: EIŘS - 2.ročník
Pozice: student - kombinované studium
Reputace:   
 

Borland Delphi - vygenerování čísel

Dobrý den, chtěl jsem se zeptat a poprosit o pomoc, jak vygeneruji čísla. Příklad: Napište program, který vygeneruje 1000 trojic čísel - souřadnic (x,y,z) náhodných bodů, které leží v krychli se středem v bodě (0,0,0) s hranou o velikosti 10. Poté program zjistí, kolik z těchto bodů leží uvnitř koule se středem v bodě (0,0,0) s poloměrem 5. Prosím o pomoc a radu. Vím, že body jsou od -5 do +5 po všech souřadnicích. Vím, že 1000 kombinací čísel x,y,z jsou vlastně všechny možnosti souřadnic pro danou krychli. Vím, jak spočítat objem jak krichle, tak koule. Ale toto všechno pouze matematicky. Mnohokrát děkuji za jakoukoliv pomoc.

Offline

 

#2 04. 07. 2012 08:11 — Editoval Honzc (04. 07. 2012 08:15)

Honzc
Příspěvky: 4641
Reputace:   248 
 

Re: Borland Delphi - vygenerování čísel

↑ LRJ1:
Zdravím,

Offline

 

#3 17. 07. 2012 11:07

LRJ1
Příspěvky: 156
Škola: TUL - FM - obor: EIŘS - 2.ročník
Pozice: student - kombinované studium
Reputace:   
 

Re: Borland Delphi - vygenerování čísel

↑ Honzc: Díky. já to mám napsat na papír formou:
program generovani_cisel
var x,y,z,i,p:integer;
begin
.                                        použít umím writeln, readln, if .. then .. else
.
.
.
.
end.

Myslel jsem, že body nacpu do objemu krychle. Vypočítám "obecně" objem koule a odečtu od objemu krychle. Body, co budou v objemu koule, tak tam jsou. Ale jak na to? Možná na to jdu špatně. Z toho co jsi mi napsal nejsem moc moudrý. Ta odmocnina sqrt(x*x+..... //podmínka pro kouli   Jak jsi přišel na tu odmocninu? Díky moc za všechny rady.

Offline

 

#4 17. 07. 2012 17:30

Honzc
Příspěvky: 4641
Reputace:   248 
 

Re: Borland Delphi - vygenerování čísel

↑ LRJ1:
Rovnice kulové plochy se středem v bodě $[0,0,0]$ a poloměrem $r$ je:
$x^{2}+y^{2}+z^{2}=r^{2}$
A ta podmínka z ní vychází. Všechny body jejichž vzdálenost od počátku s.s. je menší nebo rovna 5 totiž leží uvnitř té koule. Můžeš ji samozřejmě napsat i takto:
If $x^{2}+y^{2}+z^{2}\le 25$ pak připočti další bod (takový bod leží uvnitř nebo na povrchu koule)

To generování náhodných bodů je hned nad tím. Samostatně generuješ vždy x-ovou, y-ovou a z-vou souřadnici bodu. for i := 1 to 1000 do značí, že takových bodů (náhodných) vygeneruješ právě tisíc.
A to poslední Edit1.Text := IntToStr(p); jenom zobrazuje kolik jich z těch tisíve vygenerovaných leží uvnitř koule.
Jestli to máš dělat v Pascalu pak
ten řádek přepiš jednoduše na  WriteLn(p);
Jinak to všechno zůstane stejné.

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson