Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Sprung,Rampe->OK ABER wie SINUS?????

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
08.12.2004, 13:28 Uhr
~Funktion()
Gast


Hallo,
ich bin auf folgendes Problem bei einer Erweiterung meines Programmes gestoßen...

Ich berechne bis jetzt mit:

C++:
for (i=0;i<KMAX;i++)
{
    if (Parameter.Auswahl==Sprung)
    {
         (i==0)?(X_EIN[i] = Parameter.Ein):(X_EIN[i] = Parameter.Ein);
    }...

damit klappt die Sprungfunktion für den Eingang, Parameter.Ein ist für die Sprunghöhe zuständig!

mit:

C++:
for (i=0;i<KMAX;i++)
    {
        if (Parameter.Auswahl==Rampe)
    {
         X_EIN[i] = i*Parameter.Ein;
    }...

damit klappt auch die Rampenfunktion für den Eingang, Parameter.Ein ist in diesem Falle für die Anstiegsgeschwindigkeit zuständig!

Aber wie bekomme ich jetzt als Eingangsfunktion ne Sinusfunktion hin????

C++:
for (i=0;i<KMAX;i++)
    {
        if (Parameter.Auswahl==Sinus)
    {
         ? ? ? TOTALE_RATLOSIGKEIT ? ? ?
    }...


kann mir da jemand auf die Sprünge helfen...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
08.12.2004, 14:52 Uhr
typecast
aka loddab
(Operator)


Also erstens:

Ich kann den Sinn hinter dieser Konstruktion nicht erkennen:


C++:
(i==0)?(X_EIN[i] = Parameter.Ein):(X_EIN[i] = Parameter.Ein);



Es wird in jedem Fall X_EIN[i] = Parameter.Ein ausgefuehrt...

Wenn du den Sinus berechnen willst, dann musst du den Header math.h einbinden (aus deiner for Schleife schliesse ich, dass du C und nicht C++ programmierst. Bei C++ solltest du den Header cmath verwenden), und dann die Funktion sin(double x) verwenden.


C++:
X_EIN[i] = sin(Parameter.Ein);



Wichtig sind drei Dinge:

1.) Die Funktion sin() erwartet einen Parameter im Bogenmaß
2.) X_EIN[i] sollte ein double sein
3.) Beim Kompilieren solltest du gegen die Bibliothek math linken. Beim gcc geht das mit der Option -lm oder -lmath.
--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: