Guten Abend ich bin auf der suche nach einer art math class / mathe lib für c. bei google finde ich immer nur mathe klassen für c# und c++. Ich muss nämlich werte mit dem Sinus berechnen. Vorerst habe ich werte für gleichmäßige intervalle von 0-360° mit dem taschenrechner berechnet und in ein array geschieben. das geht wohl aber es braucht zu viel speicher und ich möchte es noch etwas genauer haben. hat jemand von euch schonmal mit so einem problem zu tun gehabt ? gibts es so eine mathe klasse und wenn ja wie wendet man sie an ? danke euch!
:
Verschoben durch Moderator
Welche Genauigkeit sollte es denn sein ? Im Prinzip genuegt es ja von 0 bis 90 Grad zu rechnen. Und in diesem Bereich kann man sich ja zB 10 stuetzstellen speichern, und den Rest interpolieren.
Steve schrieb: > ... intervalle von 0-360° mit dem taschenrechner berechnet... Schon mal die Symmetrie des Sinus bemerkt?
Im Standard-C gibt es keine Klassen, höchstens LIBs. Wenn es auch noch auf einem µC sein soll, lässt sich schon was machen, man muss aber entscheiden, ob das mögliche Optimum aus Speicherbedarf, Rechenzeit undGenauigkeit für den Zweck ausreicht. Schau mal, ob meine kurze GUGEL-Suche schon hilft: http://www.cirsovius.de/CPM/Projekte/Artikel/Mathe/INTEGREAL/INTEGREAL-en.html
@Detlef Kunz erstmal danke für den link! der hilft schonmal weiter ! weißt du vielleicht ob man sin() jetzt wie die sinustaste auf dem taschenrechner benutzen kann. d.h.: wenn man jetzt ergebnis=sin(3,14..); schriebe dass man dann auch 0 herauskäme ?
Das wird hier ja immer besser. #include <math.h> Die Funktion heisst sin. Wenn eine Klasse für c++ gesucht wird, gibt es auch. Fall Dein Compiler das nicht bringt, Formelbuch. Grüsse, René
Steve schrieb: > @Detlef Kunz > erstmal danke für den link! der hilft schonmal weiter ! > weißt du vielleicht ob man sin() jetzt wie die sinustaste auf dem > taschenrechner benutzen kann. d.h.: wenn man jetzt ergebnis=sin(3,14..); > schriebe dass man dann auch 0 herauskäme ?
1 | rad = winkel * PI / 180; // Berechnen des Bogenmaßwinkels |
2 | sinus = sin(rad); // Ermitteln des Sinuswertes |
sieht wohl so aus. :)
Steve schrieb: > @Detlef Kunz > erstmal danke für den link! der hilft schonmal weiter ! > weißt du vielleicht ob man sin() jetzt wie die sinustaste auf dem > taschenrechner benutzen kann. d.h.: wenn man jetzt ergebnis=sin(3,14..); > schriebe dass man dann auch 0 herauskäme ? Versuch es doch einfach. Und Ja, es wird so sein. Grüsse, René
Nö, bestimmt nicht. Es kommt eine Zahl in der Nähe von, aber ungleich, null raus.
Michael Graf schrieb: > Nö, bestimmt nicht. Es kommt eine Zahl in der Nähe von, aber > ungleich, > null raus. Ja, auf dem Taschenrechner auch.
Ich hab leider keinen Taschenrechner, wo ich "3,14.." eingeben kann. :P Konnte daher leider nur auf Grund kontexbezogener, fehlertolleranter Erfahrungswerte antworten ;)
:
Bearbeitet durch User
Detlef Kunz schrieb: > fehlertolleranter Erst kürzlich hatte hier jemand Toleranz mit zwei l geschrieben -- scheint sich wohl durchzusetzen.
Konrad D. schrieb: > Detlef Kunz schrieb: >> fehlertolleranter > > Erst kürzlich hatte hier jemand Toleranz mit zwei l geschrieben -- > scheint sich wohl durchzusetzen. Ich bin begeistert, wieder etwas beitragsbezogenes von Dir lesen zu dürfen. :P Aber ich halte mich eben für ganz besonders toll. :) Grüße an meine Exchefs :P
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.