Kirjoittaja: sooda
Kirjoitettu: 23.09.2004 – 23.09.2004
Tagit: matematiikka, koodi näytille, vinkki
Jostai vaan tuli idea tehdä jakokulmalasku... Elikkäs, tällä voi laskea niin isoja jakolaskuja kun haluaa. Olisin tehny myös kerto-, vähennys- ja pluslaskut mutta innostus lopahti :P
Palauttaa stringin jossa on ensin tulos, sitten tyhjä välilyönti ja sitte jakojäännös.
Ite hommeli
Function jaa(jaettava As String, jakaja As Long) 'kelataan jaettavan joka numero läpi For i = 1 To Len(jaettava) luku = Val(jjäännös & Mid(jaettava, i, 1)) tulos = luku \ jakaja '\ heittää desimaalit mäkeen ulos = ulos & tulos jjäännös = luku - tulos * jakaja 'homman melkein jopa ydin Next While Left(ulos, 1) = "0" And ulos <> "0": ulos = Mid(ulos, 2): Wend 'ylimääräset nollat mäkeen jaa = ulos & " " & jjäännös 'jännä tapa palauttaa kaks eri arvoa. End Function
käyttöesimerkki
Sub form_load() ':o onpas iso luku jako = jaa("487345734658394568934568934658964856926895028456834605435385464567667567690567590756756797887785654534567867866675675676576748642", 4) 'jakohomma 'tulos ja jj irti vastauksesta tulos = Left(jako, InStr(jako, " ") - 1) jakojäännös = Mid(jako, InStr(jako, " ") + 1) If jakojäännös <> "0" Then 'jos desimaalit = jakojäännös / 4 'tästä pitäis tulla < 0 tulos = tulos & "," & Mid(desimaalit, 3) 'koko tulos End If MsgBox tulos End End Sub
:o aika iso luku
Toimii muuten hyvin, mutta toi desimaali pilkku vois kylla jäädä
Esim:
MsgBox jaa("10,707", "5") '20141
Ha! Minulta se idea tuli ^^
Mikäs tossa on suurin desimaalimäärä?
TM: taitaa olla doublen desimaalimäärä. Voihan tota soveltaa ja laskea jakokulmassa noi desimaalitki :)