Ĺadny brzuch
Witam serdecznie i pozdrawiam Wszystkich użytkowników Forum... Dwoma słowami mogę tę stronę określić jako FULL WYPAS :D
To mój pierwszy post i od razu pojawił się problem :)
Robię projekt w Delphi 5.0 Pro na temat "Rozwiązywanie układu dwu równań" i mam parę pytań, na które (mam nadzieję) znajdę tutaj odpowiedzi:
1. Forma projektu ma rozmiar 562x627 (height x width). Mam na razie układ równań liniowych i obliczenie wyznaczników z rozwiązaniem: nieskończona ilość oraz brak rozwiązań. Układ równań to 2 równania prostych... chciałbym stworzyć niewielki wykres, gdzie program narysuje mi 2 proste wraz z rozwiązaniem układu równań wg podanych przez użytkownika parametrów (a,b,c przy funkcjach ax+by=c). Proszę o pomoc z wykresem (ew. jakieś rady).
2. Układ dwu równań może posiadać także jedno rozwiązanie (parę x i y), kiedy wyznacznik W<>0, jednakże zmienne a,b i c są zadeklarowane jako REAL. W jaki sposób mogę zamienić zmienne REAL tak, aby w wyniku końcowym wyświetlało mi się rozwiązanie przy x i y po obliczeniu wszystkich wyznaczników (pola przy rozwiązaniu x/y to komponenty EDIT - wiem że trzeba zrobić konwersję...)
urywek kodu programu -->
if a1*b2-a2*b1<>0 then
begin
edit10.text:=strtofloat((c1*b2-c2*b1) div (a1*b2-a2*b1));
//wyznaczenie x poprzez działanie Wx:W, jeżeli W<>0
(podobnie jest z y)
komunikat -->
[Error] Unit3.pas(179): Operator not applicable to this operand type).
3. W jaki sposób mam wykonać układ dwu równań stopnia wyższego ???
Dzięki za wszelkie uwagi i pomoc.
Pozdro dla Wszystkich...
Ciesz się dzisiejszym dniem, nie wiadomo co będzie jutro...
Czy ta konwersja z linii:
edit10.text:=StrToFloat ........
jest aby napewno odpowiednia. Nie powinno być czasem odwrotnie, czy nie powinno być ....ToStr ???
Niestety kiedy wpisuję zamiast strtofloat komendę floattostr, to pojawia się ten sam komunikat :(
Qrcze... nie wiem co może być nie tak.
Dzięki za zainteresowanie tematem i pozdrawiam.
Czekam na inne propozycje. :)
Edit10.text := FloatToStr((c1*b2-c2*b1) / (a1*b2-a2*b1));
Na rzeczywistych musisz używać operatora '/' a nie 'div'.
'div' uzywasz dla calkowitych.
http://www.planeta-delphi.com
Dzięki serdecznie... wreszcie zadziałało :)
Teraz mam taki problemik...
Są 2 równania: a1x+b1y=c1 i a2x+b2y=c2 (a1,a2,b1,b2,c1,c2 to zmienne typu real - edity). Na image1 mam zrobiony układ współrzędnych. Jak można zrobić, aby po podaniu przez usera liczb w editach i naciśnięciu buttona Rozwiąż, na image1 narysował się wykres dwu funkcji z rozwiązaniem ??? (chodzi mi o samą procedurę narysowania funkcji). :(
Dzięki za uwagę i pozdrawiam
Bakalaureus
Wydaje mi sie ze lepiej jak bys skorzystal z komponentu TChart.
Do funkcji liniowych najlepiej uzyj MoveTo(x,y) i LineTo(x,y)
przyklad uzycia masz w helpie.
I jeszcze jedno pamietaj ze rysuje sie na Canvie tego Imaga:)
pozdro
GG: 4596137
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
To mój pierwszy post i od razu pojawił się problem :)
Robię projekt w Delphi 5.0 Pro na temat "Rozwiązywanie układu dwu równań" i mam parę pytań, na które (mam nadzieję) znajdę tutaj odpowiedzi:
1. Forma projektu ma rozmiar 562x627 (height x width). Mam na razie układ równań liniowych i obliczenie wyznaczników z rozwiązaniem: nieskończona ilość oraz brak rozwiązań. Układ równań to 2 równania prostych... chciałbym stworzyć niewielki wykres, gdzie program narysuje mi 2 proste wraz z rozwiązaniem układu równań wg podanych przez użytkownika parametrów (a,b,c przy funkcjach ax+by=c). Proszę o pomoc z wykresem (ew. jakieś rady).
2. Układ dwu równań może posiadać także jedno rozwiązanie (parę x i y), kiedy wyznacznik W<>0, jednakże zmienne a,b i c są zadeklarowane jako REAL. W jaki sposób mogę zamienić zmienne REAL tak, aby w wyniku końcowym wyświetlało mi się rozwiązanie przy x i y po obliczeniu wszystkich wyznaczników (pola przy rozwiązaniu x/y to komponenty EDIT - wiem że trzeba zrobić konwersję...)
urywek kodu programu -->
if a1*b2-a2*b1<>0 then
begin
edit10.text:=strtofloat((c1*b2-c2*b1) div (a1*b2-a2*b1));
//wyznaczenie x poprzez działanie Wx:W, jeżeli W<>0
(podobnie jest z y)
komunikat -->
[Error] Unit3.pas(179): Operator not applicable to this operand type).
3. W jaki sposób mam wykonać układ dwu równań stopnia wyższego ???
Dzięki za wszelkie uwagi i pomoc.
Pozdro dla Wszystkich...
Ciesz się dzisiejszym dniem, nie wiadomo co będzie jutro...
Czy ta konwersja z linii:
edit10.text:=StrToFloat ........
jest aby napewno odpowiednia. Nie powinno być czasem odwrotnie, czy nie powinno być ....ToStr ???
Niestety kiedy wpisuję zamiast strtofloat komendę floattostr, to pojawia się ten sam komunikat :(
Qrcze... nie wiem co może być nie tak.
Dzięki za zainteresowanie tematem i pozdrawiam.
Czekam na inne propozycje. :)
Edit10.text := FloatToStr((c1*b2-c2*b1) / (a1*b2-a2*b1));
Na rzeczywistych musisz używać operatora '/' a nie 'div'.
'div' uzywasz dla calkowitych.
http://www.planeta-delphi.com
Dzięki serdecznie... wreszcie zadziałało :)
Teraz mam taki problemik...
Są 2 równania: a1x+b1y=c1 i a2x+b2y=c2 (a1,a2,b1,b2,c1,c2 to zmienne typu real - edity). Na image1 mam zrobiony układ współrzędnych. Jak można zrobić, aby po podaniu przez usera liczb w editach i naciśnięciu buttona Rozwiąż, na image1 narysował się wykres dwu funkcji z rozwiązaniem ??? (chodzi mi o samą procedurę narysowania funkcji). :(
Dzięki za uwagę i pozdrawiam
Bakalaureus
Wydaje mi sie ze lepiej jak bys skorzystal z komponentu TChart.
Do funkcji liniowych najlepiej uzyj MoveTo(x,y) i LineTo(x,y)
przyklad uzycia masz w helpie.
I jeszcze jedno pamietaj ze rysuje sie na Canvie tego Imaga:)
pozdro
GG: 4596137