- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 2 von 2

Thema: Keil C51: atan() liefert falschen rückgabewert??

  1. #1

    Keil C51: atan() liefert falschen rückgabewert??

    Anzeige

    Powerstation Test
    Hallo!
    Ich programmiere gerade einen Infinion 80C509 mit Keil µVision Umgebung(C51-Compiler).
    Habe die atan()-funktion verwendet und bei den ersten Tests auch die richtigen Ergebisse erhalten. Jedoch stimmen die Ergebnisse nur in wenigen Fällen. Die falschen Ergebnisse liegen komplett ausserhalb des Wertebereichs des atan(). (pi/2 .. -pi/2)

    Frage: Sind da irgendwelche Probleme bekannt?
    Muss man den Wert vor Verwendung des atan() umrechnen?

    Über eure Hilfe würde ich micht sehr freuen.
    Bin mit meinem Latein am Ende.


    P.s. hier der verwendete Code:

    #include <math.h>
    #include <stdio.h> /* for sprintf */

    void tst_atan (void) {
    float x;
    float y;
    char str[20];

    for (x = -10.0; x <= 10.0; x += 0.1) {
    y = atan (x);
    sprintf (str,"ATAN(%f) = %f", x, y);
    LCD(1,1,str); // display ausgabe
    }
    }

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Wenn jemand den gleichen Compiler verwendet, kann er dir vielleicht besser helfen.
    Ich tät mal prüfen:
    Sind die Werte steigend /fallend oder springt das Ergebnis rum
    Mag er keine negativen Zahlen

    FAQ beim Keil schauen, restriktionen nochmals nachlesen etc.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests