brauche hilfe



  • ich muß für die uni ein programm schreiben und bin auch soweit fertig nur es hat einen kleinen Fehler es kommen immer die gleichen zahlen heraus egal was ich eingebe.

    #include<stdio.h>
    #include<math.h>
    #include<stdlib.h>

    void xy_to_rphi()
    {
    /*Eine Komplexe Zahl ist gegeben durch ihren Realteil x und durch ihren Imaginärteil*/
    /*y. Diese Darstellung ist umzuwandeln in die Darstellung durch Betrag r und Winkel */
    /*phi.*/

    double xreal,yimaginaer,z,kosinusphi,phi;

    fflush(stdin);
    printf("Bitte geben Sie den Realteil x ein!:\n");
    scanf("%f",&xreal);
    printf("Bitte geben Sie den Imaginaerteil y ein!:\n");
    scanf("%f",&yimaginaer);

    /*Beginn der Umrechnung*/

    z=(sqrt((xreal*xreal)+(yimaginaer*yimaginaer)));
    kosinusphi=(xreal/z);
    phi=cosh(kosinusphi);

    /*Ende der Umrechnung*/

    printf("Der Betrag r betraegt:\t\t %3.4Ef\n",z);
    printf("Der Winkel Phi betraegt:\t %3.4Ef\n",phi);

    }

    void main ()
    {
    xy_to_rphi();
    }



  • Hmm ich habe mir dein Programm erstmal nicht wirklich angeschaut. Aber füge erstmal Codetags hinzu beim Posten und dann wäre es auch noch gut zu wissen was das Programm überhaupt machen soll!!! Hast du schon mal den Debugger benutzt?
    MfG schirrmie



  • Das Problem sind die Formatangaben in dem sscanf.
    Du hast dort f stehen, möchtest aber keine flaot sondern double einlesen.
    Also schreibt man "%lf".



  • ja danke das war der fehler es funktioniert.
    Danke noch mal vielmals!!!!


Anmelden zum Antworten