Forum: PC-Programmierung Mathe klasse/Sinus berechnen


von Steve (Gast)


Lesenswert?

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
von Detlef K. (adenin)


Lesenswert?


von мальеикий тролл (Gast)


Lesenswert?

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.

von Emmix (Gast)


Lesenswert?

Steve schrieb:
> ... intervalle von 0-360° mit dem taschenrechner berechnet...

Schon mal die Symmetrie des Sinus bemerkt?

von Bernie (Gast)


Lesenswert?

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

von Steve (Gast)


Lesenswert?

@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 ?

von Rene H. (Gast)


Lesenswert?

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é

von Detlef K. (adenin)


Lesenswert?

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. :)

von Rene H. (Gast)


Lesenswert?

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é

von Michael G. (mjgraf)


Lesenswert?

Nö, bestimmt nicht. Es kommt eine Zahl in der Nähe von, aber ungleich, 
null raus.

von Rene H. (Gast)


Lesenswert?

Michael Graf schrieb:
> Nö, bestimmt nicht. Es kommt eine Zahl in der Nähe von, aber
> ungleich,
> null raus.

Ja, auf dem Taschenrechner auch.

von Dennis H. (c-logic) Benutzerseite


Lesenswert?

Wo ist in C die DEG  RAD  GRAD - Taste ?

von Detlef K. (adenin)


Lesenswert?

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
von Konrad D. (Gast)


Lesenswert?

Detlef Kunz schrieb:
> fehlertolleranter

Erst kürzlich hatte hier jemand Toleranz mit zwei l geschrieben -- 
scheint sich wohl durchzusetzen.

von Detlef K. (adenin)


Lesenswert?

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
Noch kein Account? Hier anmelden.