Objętość kuli, log x z y
Katte789: EXCEL Czy jet ktoś w stanie w prosty sposób wytłumaczyć mi jak zrobić poniższe zadania ?
1)przy pomocy metody monte carlo oszacuj wartość objętości kuli o promieniu 1 (6666 losowań).
2) losując 11111 punktów (x,y), sporządź wykres zbioru A={(x,y): logxy?>1}.
Z góry dziękuję za odpowiedź
30 lis 22:28
nic niemożliwego: nie wiem spróbuj przeanalizować to mimo ze nie jest objętość kuli i przeniesc to na excel
30 lis 22:41
nic niemożliwego: == Przykład obliczania liczby pi metodą Monte Carlo w języku C++ ==
<source lang="cpp">
#include <iostream>
#include <cmath>
#include <ctime>
#include <cstdlib>
using namespace std;
int main()
{
srand(time(NULL)); //zainicjalizowanie maszyny generujacej liczby losowe
int n;
int nk = 0;
double x,y;
float s;
cout << "Podaj liczbe losowanych pkt:" << endl;
cin >> n;
for(int i = 1; i <= n; i++)
{
x = ((double)rand() / (RAND
MAX))*2 − 1;
y = ((double)rand() / (RAND
MAX))*2 − 1;
if(x*x + y*y <= 1)
{
nk++;
}
}
cout << "Liczba pkt. w kole wynosi: " << nk << endl;
cout << "Liczba pkt. w kwadracie wynosi: " << n << endl;
s = 4. * nk / n;
cout << "Liczba pi wynosi: " << s;
}
</source>
Kategoria:Metody numeryczne
Kategoria:Modelowanie statystyczne
30 lis 22:41
Katte789: nic niemożliwego− to mi nie pomaga
30 lis 22:49
nic niemożliwego: z tego na górze na excel :
W kolumnie A i B są odpowiednie dane losowe, natomiast resztę formułka tablicowa:
Kod:
=4*SUMA(JEŻELI(A1:A44442+B1:B44442<1;1;0))/4444
W kolumnach A, B jest funkcja 2*LOS()−1 dlatego ,ze wystarczy na 1 ćwiartce koła wpisanej w
kwadrat o boku 1 generować losowo x i y z przedziału od 0 do 1 i sprawdzać
czy punkty te mieszczą się w kole o promieniu 1.
Później wystarczy obliczyć % punktów w kole do wszystkich punktów
i pomnożyć przez 4 ćwiartki. I to jest przybliżenie PI. Im więcej
symulacji tym większa dokładność.
30 lis 23:24
nic niemożliwego: Kasiu widzę ,że bardzo Ci zależy

Internet już wie !
30 lis 23:27
nic niemożliwego: Dobra mam już algorytm:
− Użytkownik podaje r [promień kuli o środku w punkcie (0,0,0)] i n (ilość losowań);
− Program losuje n punktów o współrzędnych (x,y,z) zawartych w sześcianie o boku 2r, promieniu
r i środku w punkcie (0,0,0);
− Program podstawia punkty do wzoru x*x + y*y + z*z =< r*r;
− Program wylicza objętość kuli ze wzoru Vk=8*r*r*r*k/n, gdzie Vk − objętość kuli, r − promień,
k − ilość punktów zpełniający poprzedni wzór, n − ilość wszystkich wylosowanych punktów.
30 lis 23:32
nic niemożliwego: ok to da się zrobić ale nie dzisiaj bo teraz idę oglądnąć BB i spać. Napisz jutro jak się z tym
zapoznasz.. To nic niemożliwego.
30 lis 23:34
tom: wpisz w komórki : (numer komórki@wartość do wpisania)
A1−promień kuli
A2−ilość losowań
A3−obliczony promień kuli
B1:1
B2:666
B3'=8*B1
3*SUMA(D

)/B2
w komórki od A11 do C676 wklej formułę:
=LOS()*2*$B$1−$B$1
w kmórki od D11 do D676 wklej formułę:
=JEŻELI(A11*A11+B11*B11+C11*C11<=$B$1*$B$1;1;0)
w komórce A3 powinnaś mieć oszacowaną objętość kuli
30 lis 23:59
tom: jeszcze raz, bo edycja nie wyszła:
wpisz w komórki : (numer komórki@wartość do wpisania)
A1@promień kuli
A2@ilość losowań
A3@obliczony promień kuli
B1@1
B2@666
B3@=8*B1
3*SUMA(D"dwukropek"D)/B2
w B3 zastąp "dwukropek" dwukropkiem

w komórki od A11 do C676 wklej formułę
=LOS()*2*$B$1−$B$1
w kmórki od D11 do D676 wklej formułę
=JEŻELI(A11*A11+B11*B11+C11*C11<=$B$1*$B$1;1;0)
w komórce A3 powinnaś mieć oszacowaną objętość kuli
1 gru 00:04
tom: w komórkach D11 do D676 musisz przeciągnąć formułę aby mieć:
D11@=JEŻELI(A11*A11+B11*B11+C11*C11<=$B$1*$B$1;1;0)
D12@=JEŻELI(A12*A12+B12*B12+C12*C12<=$B$1*$B$1;1;0)
D13@=JEŻELI(A13*A13+B13*B13+C13*C13<=$B$1*$B$1;1;0)
itd
1 gru 00:08
Katte789: Dzięki chłopaki za pomoc... lecz ja wciąż nie jestem w stanie wykonać tych zadań !

nie wiem
jak się do tego zabrać.
Moglibyście jeszcze raz powoli mi to wytłumaczyć? krok po kroku, będę wam za to niezmiernie
wdzięczna
1 gru 16:14
Katte789: TOM : Przeanalizowałam twoją wersję, lecz mam parę pytań. Proszę odezwij się. Potrzebuję
pomocy.
1 gru 16:37
tom: co konkretnie potrzebujesz?
1 gru 16:39
Katte789: 8*B13*SUMA(D)/B2 skąd to jest ?
1 gru 17:57
Katte789: w komórki od A11 do C676 wklej formułę
=LOS()*2*$B$1−$B$1
Są to losowe punkty środka kuli ?
1 gru 18:07
tom: popatrz na następny post w pierwszym edycja nie wyszła.
Jak tu wklejam dwukropek, to wstawiają się

w tej formule powinno być:
=8*B13*SUMA(DD)/B2
przy czym, między dwie litery D dodaj dwukropek
1 gru 18:08
Katte789: Tak, rozumiem.
Nie wiem skąd jest wzór 8*... − co to jest i z czego wyynika ?
Objętość kuli v=4/3 pi r3
1 gru 18:14
tom: Są to losowe punkty środka kuli ?
nie środek kulo to punkt (0,0,0) − tak przyjąłem
=LOS() losuje liczbę w przedziale od 0 do 1
=LOS()*2*$B$1 losuje liczbę od zera do 2r − w komórce B1 mamy r − tutaj środkiem
kuli byłby punkt (1,1,1)
=LOS()*2*$B$1−$B$1 losuje liczbę od −r do r (od wylosowanych do 2r odejmujemy r) tutaj już
środek kuli jest przesunięty do punku (0,0,0)
1 gru 18:17
tom: rozumiesz metodę monte carlo?
jeżeli tak to tłumaczę ostatnie pytanie, jeżeli nie wracamy do podstaw
1 gru 18:18
Katte789: TO co wytłumaczyłeś, rozumiem.

możemy dalej
1 gru 18:30
tom: ok, metodę monte carlo stosujesz bo nie znasz wzoru na Objętość kuli v=4/3 pi r3

,
natomiast znasz wzór funkcyjny na kulę: x
2+x
2+z
2=r
2
więc jedziemy po kolei:
1) aby obliczyć objętość kuli dobieramy sobie sześcian opisany na kuli, którego objętość łatwo
policzymy − my w tym zadaniu przyjmujemy sześcian którego środek będzie w punkcie (0,0,0),
czyli punkty sześcianu w osiach:
x − muszą zawierać się w przedziale (−1,1)
y − muszą zawierać się w przedziale (−1,1)
z − muszą zawierać się w przedziale (−1,1)
automatycznie środek wpisanej w sześcian kuli też będzie w punkcie (0,0,0)
1 gru 18:39
tom: 2) losujemy punkty wewnątrz sześcianu:
w kolumnie A losujemy punty z przedziału (−1,1) − przyjmujemy że to jest na osi x, formuła
wsześniej omawiana: =LOS()*2*$B$1−$B$1
w kolumnie B losujemy punty z przedziału (−1,1) − przyjmujemy że to jest na osi y, formuła
wsześniej omawiana: =LOS()*2*$B$1−$B$1
w kolumnie C losujemy punty z przedziału (−1,1) − przyjmujemy że to jest na osi z, formuła
wsześniej omawiana: =LOS()*2*$B$1−$B$1
w kolumnach A,B,C may współrzędne punktu (x,y,z) znajdujących się wewnątrz naszego sześcianu,
tworzymy 666 takich punktów w wierszach od 11 do 676
1 gru 18:45
tom: 3) Jak już mamy wylosowane punkty to sprawdzamy czy znajdują się wewnątrz kuli:
w kolumnie D mamy formułę sprawdzającą:
=JEŻELI(A11*A11+B11*B11+C11*C11<=$B$1*$B$1;1;0)
możemy ją również zapisać:
=JEŻELI(A112+B112+C112<=$B$12;1;0)
ta formuła sprawdza czy wylosowane punkty znajdują się wewnątrz kuli według wzoru:
x2+x2+z2=r2 , iksy mamy w kolumnie A, igreki mamy w B, zety mamy w C, r mamy w B1
Wynik formuły:
jeżeli sprawdzany punkt znajduje się wewnątrz kuli to w kolumnę D jest wpisywane 1, jeżeli
punkt jest poza kulą to w D wpisywane jest 0
1 gru 18:53
Katte789: tak, rozumiem !
1 gru 18:56
tom: 4) jak już mamy wylosowane i sprawdzone punkty, to liczymy objętość kuli
w komórce B3 mamy formułę:
=8*B13*SUMA(DD)/B2
możemy ją również zapisać jako: (w zasadzie tak powinniśmy ją zapisać aby liczyć inne promienie
kuli)
=(2*B13)3*SUMA(DD)/B2
w tej komórce liczymy:
a) objętość naszego sześcianu:
8*B13 lub (2*B13)3 − dla promienia 1 będzie to samo, dla innego promienia musi być (2*B13)3
b) mnożymy objętość sześcianu razy ilość wylosowanych punktów które były wewnątrz kuli
*SUMA(DD) − czyli sumujemy kolumnę D i mnożymy objętość sześcianu
c) iloczyn objętości sześcianu i sumy punktów wewnątrz kuli dzielimy przez wszystkie wylosowane
punkty
Ostatecznie Objętość sześcianu pomniejszamy proporcjonalnie o punkty które nie trafiły w
wnętrze kuli i otrzymujemy szacunkową objętość kuli
1 gru 19:04
Katte789: Dziękuję bardzo za poświęcony mi czas ! jesteś wielki !
1 gru 19:18
Katte789: Tom ! Powiedz mi jeszcze jak wylosować dowolny punkt ( odnośnie tego logarytmu ).
1 gru 19:29
tom: co oznacza ten pytajnik po logarytmie?
logxy?>1
1 gru 19:40
Katte789: Treść zadania: Losując 22222 punktów (x,y), sporządź wykres zbioru A={(x,y): logxy<2.
Sorry ! błąd w treści

Pomożesz mi ?
1 gru 20:06
Katte789: btw log o podstawie x z y
1 gru 20:07
tom: rozumiem, że chodzi o logarytm dziesiętny
1 gru 20:15
tom: napisz jaka podstawa i z jakiej liczby logarytm ma być mniejszy od 2
1 gru 20:17
Katte789: Nie to nie jest logarytm dziesiętny. Logarytm o podstawie x z y. logx z y
1 gru 20:22
tom: dalej nie wiem jakie jest zadanie.
logarytm:
loga b =c
ma podstawę (a)
jest z jakiejś liczby (b)
i jest równy czemuś (c)
napisz nawet słownie podstawę i z jakiej liczby jest ten logarytm
1 gru 21:33
Katte789: Tom, jeżeli wciąż jesteś w stanie mi pomóc to bardzo proszę
Treść zadania:
Losując 22222 punktów (x,y), sporządź wykres zbioru A={(x,y): logxy<2.
2 gru 17:27