Kirjoittaja: sooda
Kirjoitettu: 03.06.2004 – 03.06.2004
Tagit: matematiikka, koodi näytille, vinkki
Yhtälöparin ratkominen. Aika helppo juttu, tätä käsiteltiin mulla koulussa sikakauan sitten ja aattelin nyt että voisi soodata tän :) ne jotka ei ymmärrä voi kysyä mutta parempi odottaa että tämä tulee koulussa, silloin sen tajuaa heti.
Private Sub Form_Load() AutoRedraw = True 'ettei infotekstit pyyhiydy pois FontName = "Courier New" 'hyvä fontti tähän ratko 1, 2, 3, 4, 5, 6, 0 'esimerkkiratkominen End Sub Function ratko(ByVal k1a, ByVal k2a, ByVal a, ByVal k1b, ByVal k2b, ByVal b, kumpi) 'k1a, k2a ym käyttötarkoituksen näkee tosta: Print k1a & "x+" & k2a & "y=" & a Print k1b & "x+" & k2b & "y=" & b Print If (k1a <> k1b) And (k2a <> k2b) Then 'lavennetaan/supistetaan niin että on kivempi laskea t = k2b / k2a k1a = k1a * t k2a = k2a * t a = a * t Print k1a & "x+" & k2a & "y=" & a Print k1b & "x+" & k2b & "y=" & b Print End If If (k1a = k1b) And (k2a = k2b) Then 'ei voi ratkoa, ei ratkaisua... Print "Ei voi ratkoa!!" Exit Function End If 'tästä lähtien laskeskellaan vaan arvot, ihan helppoa. näitä olisi aika hankala kommentoida... t = k1a - k1b t1 = a - b x = t1 / t Print t & "x=" & t1 Print "x=" & x Print Print k1b & "(" & x & ")+" & k2b & "y=" & b t = k1b * x Print t & "+" & k2b & "y=" & b Print k2b & "y=" & b & "-(" & t & ")" t = b - t Print k2b & "y=" & t y = t / k2b Print "y=" & y Print "Tulos: x=" & x & ", y=" & y If kumpi = 0 Then ratko = x Else ratko = y End Function
Ohjelmaan on jäänyt pikku virhe. Rivi
t = k1b / x
täytyy muuttaa muotoon
t = k1b * x
jotta kaikki yhtälöparit ratkeavat oikein. :)
Joo :D mulla oli psionillani tosta kaksi versiota, tein eka sitä toista tähän ja sitten vahingossa lähdin säätään toista, niissä oli eroja ja toi sitten jäi :D nyt korjattu.
Mikset tehnyt samantien n-muuttujan yhtälöryhmän ratkaisijaa :)
Se onnistuu suhteellisen helposti matriisien avulla ja tarkat arvot saa kun tekee sen vielä rationaaliluvuilla, joskin se hidastaa sitä melko paljon, mutta ei puututa pikkuseikkoihin... Tein nimittäin sellaisen joskus javalla, mutta tällä hetkellä sorsat on toisella koneella ja se toinen kone ei toimi :|
No iske kiintolevy toimivaan koneeseen... ;)
sooda kirjoitti:
Joo :D mulla oli psionillani tosta kaksi versiota, tein eka sitä toista tähän ja sitten vahingossa lähdin säätään toista, niissä oli eroja ja toi sitten jäi :D nyt korjattu.
saisko exe: ä ?