spenalzo
7.06.2003, 15:04:58
Czytam sobie fragment kursu C++ gdzie jest opisany sposób tworzenia fraktali. Chciałem to przenieść do php, ale mam problem, ponieważ w C++ jest moduł który umożliwa mnożenie punktów - complex (czy jakoś tak). Czy jest w php jakiś sposób aby pomnożyć przez siebie punkt? Chodzi o coś takiego:
Kod
x=x*x+c
gdzie c to jakaś ustalona z góry liczba.
c to z gory ustalona liczba, wiec jesli tak to x tez jest z gory ustalony....
moze chodzi ci o to :
[php:1:c6c1830a7b]$x = 2;
$c = 15;
$x = $x * $x + $c;
echo $x;[/php:1:c6c1830a7b]
zwroci sie 19 czyli tak jak ma byc...
spenalzo
7.06.2003, 15:17:13
Sorry, trochę niejasno napisałem. Chodzi o punkt na płaszczyźnie czyli (x,y), np. (3,-3).
A jaki miałby by być wynik tego działania?
spenalzo
7.06.2003, 22:14:57
Według tego kursu:
(1,1)*(1,1)=(0,2)
(1,2)*(2,-4)=(10,0)
Cytat
W jaki sposób wyliczyć x*x? Co to wógole znaczy pomnożyć przez siebie punkt? (...) Otóż każdy punkt płaszczyzny wyznacza jednocześnie tak zwaną liczbę zespoloną. Dzięki sprytnemu pomysłowui takie punkty można dodawać, odejmować, ale także mnożyć i dzielić przez siebie, a nawet podnosić do potęgi czy wyciągać z nich pierwiastek. Wynikami wszystkich działań są punkty (...)
Prawie wszystko udało mi się przenieść do php, poza właśnie tymi działaniami...
maggot
7.06.2003, 23:06:13
potrajktuj to jako liczby zespolone
(a,

znaczy a+bi, dwie takie liczby mnozysz normalnie, tylko zamieniasz i*i (i² | i do kwadratu) na -1
2 + 5i ≡ (2,5)
(1,1)*(1,1) ≡ (1 + 1i)² = 1 + 2i + i² = 1 +2i -1 = 0 + 2i ≡ (0, 2)
(1,2)*(2,-4)= (1+2i)(2-4i) = 2 - 4i + 4i - 8i² = 2 - 8(-1) = 10 = 10 + 0i ≡ (10,0)
spenalzo
7.06.2003, 23:14:25
Dzięki za odpowiedź, tylko nie jarzę co to jest to i? I skąd się bierze...
maggot
7.06.2003, 23:20:14
no coz: i to jest taka liczba, ktora podniesiona do kwadratu daje -1

, poszukaj sobie informacji o liczbach zespolonych (nie jest to trudne, na studiach zaraz na poczatku to mielismy)
spenalzo
7.06.2003, 23:35:27
Znalazłem coś takiego:
http://wms.mat.agh.edu.pl/~zrr/zespolone/teoria.htm teraz to analizuję :-)
PS. Ja jeszcze na studiach nie jestem...
spenalzo
7.06.2003, 23:47:54
Jezu, jakie to popieprzone... Wam to przynajmniej wytlumaczyli. Ale nie poddam się, będę tak długo czytał dopóki nie zrozumiem.
spenalzo
8.06.2003, 00:18:00
A w jaki sposób uzyskać liczbe zespoloną dla punktu np. (2,1)

?
Ale jak by się dało to na język php prosze :-D
maggot
8.06.2003, 00:24:38
(2,1) ≡ 2 + i;
i ogolnie
(a,

≡ a + bi;
gdzie
a i
b sa liczbami rzeczywistymi
spenalzo
8.06.2003, 00:32:20
W sumię pojąłem trochę o co chodzi z tymi liczbami zespolonymi, ale jak to na język php przełożyć, to już nie wiem... Dam sobie spokój i zajmę się czymś pożytecznym.
Dzięki za wyjaśnienie.
maggot
8.06.2003, 10:42:19
ale to przeciez bardzo proste
(a,

*(c,d) ≡ (a+bi)(c+di) = (ac - bd) + (ad + bc)i ≡
(ac-bd
, ad+bc
)
gdzie a, b, c, d to liczby rzeczywiste
spenalzo
10.06.2003, 10:18:40
Czy o takie coś chodzi?
[php:1:9a5a343ec3]<?php
function mnozenie($a,$b,$c,$d) // a=x1; b=y1; c=x2; d=y2
{
$x=(($a*$c)-($b*$d));
$y=(($a*$d)+($b*$c));
return($x,$y);
}
?>[/php:1:9a5a343ec3]
DeyV
10.06.2003, 13:18:02
Chyba wszystko ok, tylko... od kiedy return obsługuje dwa argumenty?
Co najwyżej może być tak:
return array ($a, $
;
spenalzo
10.06.2003, 20:27:25
Oczywiscie niedopatrzenie, tak to jest jak sie pisze post na szybko.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.