» »

Težava pri spreminjanju radianov v stopinje[python]

Težava pri spreminjanju radianov v stopinje[python]

starc33 ::

Delam program, ki računa različne lastnosti trikotnika, po tem ko vnesemo vanj dolžine treh stranic. Po kosinusnem izreku.
Iz te formule sm izpeljal alfo. In ukaz acos nam preračuna to vse v radianih, zato sm uporabil še ukaz degrees, ki naj nam bi to preračunal v stopinje samo da mi vrne potem vn vrednost števila pi :|

Tako sm napisal kodo:
A=degrees(acos((a^2-b^2-c^2)/(-b*c)))


Prosil bi za pomoč.

starc33 ::

popravek. Napisal sem
A=degrees(acos((a^2-b^2-c^2)/(-2*b*c)))

Isotropic ::

kaj tocno je tu problem? je sama formula (acos) pravilna, si jo preizkusil na kaksnem analiticnem primeru?

metalc ::

1. Celoštevilske potence (še posebej kvadrati) se izračunajo precej hitreje, če jih n-krat zmnožiš.
2. Ali imaš veljaven trikotnik (vsaka stranica krajša od vsote ostalih dveh)?
3. So a, b in c podobnega velikostnega reda? Če niso, se mu rado sfuzla, tudi če je formula 100% pravilna.
4. Sta števec in imenovalec ulomka (ki ga daš acos-u) morebiti zelo blizu 0?
5. So a, b, c cela števila? Če so, bo ulomek lahko delil celoštevilsko (rezultat zaokrožil na celi del) in to podtaknil acos.... Namesto 2 (pri -2*b*c) poskusi z 2.0. (vprašanje za druge: je morda treba še f za enojno natančnost??)
6. Je tisto pod acos po absolutni vrednosti zagotovo manjše ali enako 1? Če ni, boš hitro dobil error ali celo neka kompleksna števila....
7. Je rezultat v radianih pravilen? Kaj če namesto degrees(kot) uporabiš kar kot*180.0/pi, dobiš enako? (glej da bo pi res matematična konstanta in ne spremenljivka s poljubno vrednotjo)
8. če imaš enačbo cos(x)=a, imaš neskončno rešitev. Enačba je namreč ekvivalentna (v radianih, k je katerokoli celo število) cos(x+2*k*pi)=a --> x+2*k*pi=acos(a) ==> x=acos(a)-2*k*pi To pomeni, da moraš preveriti območje rezultata in ga po potrebi spraviti v želeno območje.
9. Saj si prebral dokumentacijo za vse uporabljene funkcije

Zgodovina sprememb…

  • spremenilo: metalc ()

starc33 ::

Hvala!

Problem je bil v decimalnih številih.
Tisto z 2.0 je pomagalo.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Kako je definirana zemljepisna širina/višina: na krogli ali elipsoidu (WGS)?

Oddelek: Znanost in tehnologija
312739 (1975) LuiIII
»

Obračanje formul :P

Oddelek: Šola
2214062 (11673) dottor
»

Matematika - pomoč (strani: 1 2 3 )

Oddelek: Šola
10426778 (23353) daisy22
»

Matematika spl. matura 2011 (strani: 1 2 )

Oddelek: Šola
519478 (8100) hexor
»

DirectX - težavica

Oddelek: Programiranje
141260 (993) Senitel

Več podobnih tem