Hallo, ich habe eine Potenzfunktion (y=0,2166x^1,0482) und die würde ich gerne in C ausrechnen lassen. Weis einer wie ich das machen kann? Speziell wegen den Kommazahlen. Über eine schnelle antwort würde ich mich freuen. mfg Peter
Peter schrieb: > und wenn ich kein C Buch habe? Geh Zeitungen austragen, dann kannst du dir eins kaufen... ;-) BTW: ich habe das mit Erinnerungsvermögen und Schulwissen gemacht und bin auf die y = 0,2166 * exp(1,0482*log(x)); gekommen...
Dann bleibst du ewig Anfänger. Bei so einem <zensiert> macht das Helfen richtig Spass :-)
Peter schrieb: > Hallo, > > ich habe eine Potenzfunktion (y=0,2166x^1,0482) und die würde ich gerne > in C ausrechnen lassen. Weis einer wie ich das machen kann? Speziell > wegen den Kommazahlen. Über eine schnelle antwort würde ich mich freuen. Vielleicht wäre es einfacher, eine passende Tabelle abzuspeichern... Gruss Harald
>Vielleicht wäre es einfacher, eine passende Tabelle abzuspeichern...
leider sind es aber über 300 mögliche Wert Tabelle wird also schwierig.
Peter schrieb: >>Vielleicht wäre es einfacher, eine passende Tabelle abzuspeichern... > leider sind es aber über 300 mögliche Wert Tabelle wird also schwierig. Wenn es tatsächlich nur ca. 300 Werte sind würde ich schon eine Tabelle nehmen. Kommt wie immer auf den Anwendungsfall an.
Peter schrieb: >>Vielleicht wäre es einfacher, eine passende Tabelle abzuspeichern... > leider sind es aber über 300 mögliche Wert Tabelle wird also schwierig. Wie wäre es mit linearer Interpolation zwischen den Tabellenwerten? Zum Nachschlagen bei Fragen zu C hilft oft http://de.wikibooks.org/wiki/C-Programmierung Gruß
>y = 0,2166 * exp(1,0482*log(x));
also diese Funktion würde funktionieren, wenn keine kommazahl vorhanden
wäre. Was kann ich machen damit ich auch mit komma rechnen kann?
Peter schrieb: >>y = 0,2166 * exp(1,0482*log(x)); > > also diese Funktion würde funktionieren, wenn keine kommazahl vorhanden > wäre. Was kann ich machen damit ich auch mit komma rechnen kann? float oder double oder so? math.h eingebunden? header schon durchgesehen ob es da sowas wie z.B. "pow(a,b);" gibt? mfg mf
Peter schrieb: > Was kann ich machen damit ich auch mit komma rechnen kann?
1 | float x,y; |
2 | |
3 | x = 3.4567; |
4 | y = 0.2166 * exp(1.0482*log(x)); |
http://www.acm.uiuc.edu/webmonkeys/book/c_guide/2.7.html Alle Funktionen in der math.h sind mit double definiert und werden daher als Fließkommazahl ausgeführt. Und pow() sollte es durchaus auch geben... > Was kann ich machen damit ich auch mit komma rechnen kann? > 0,2166 Nimm statt des Kommas einen Punkt... :-/ So etwa: 0.2166 BTW: du könntest dir echt mal ein C-Buch kaufen. Das sind urschleimigste Grundlagen...
Lothar Miller schrieb: > BTW: du könntest dir echt mal ein C-Buch kaufen. > Das sind urschleimigste Grundlagen... Tja habe ich auch schon angemerkt: Also Antwort kam: Peter schrieb: > und wenn ich kein C Buch habe? ...ohne Worte
also nochmal danke an alle die mit helfen wollten. @ Lothar: Danke es lag an dem komma statt Punkt. Das vergess ich immer wieder. Und keine Angst ich werde mir auch bald ein C Buch kaufen. :) U.R. Schmitt schrieb: > Dann bleibst du ewig Anfänger. > Bei so einem <zensiert> macht das Helfen richtig Spass :-) du kannst mich mal... :( mfg Peter
hallo, ich hätte noch eine frage: ich berechne jetzt die Funktion y = 0.2166*exp(1.0482*log(x)); und will das Ergebnis auf einen LCD Display darstellen. Das Problem ist wenn ich das y, was ein float ist mir der Funktion sprintf darstellen will kommt eine Fehlermeldung im AVR Studio. Weis einer was ich da machen kann? mfg Peter
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.