Trobles mit Kommazahlen ;(



  • Hallihallo!
    Ich hab wieder mal ein problem mit kommazahlen! ;P
    und zwar will ich eine kommazahl einlesen (mit scanf) aber irgendwie nimmt das prog meine eingaben nicht an!?
    außerdem wollte ich wissen wie ich diese float überprüfen kann ob man % (modulo) machen kann oder nicht.

    THX!

    hier der code:

    double eingabe(char *s)
    {
    	double z;
    	printf("%s",s);
    	scanf("%f",&z);
    	printf("\n");
    	return z;
    }
    
    void main()
    {
    	double z1, z2;
    
    	z1 = eingabe("1. Zahl eingeben: ");
    	z2 = eingabe("2. Zahl eingeben: ");
    }
    


  • float a;
    double b;
    scanf("%f", &a);
    scanf("%lf", &b);
    

    Modulo macht keinen Sinn und geht darum auch nicht.



  • Sinn würde modulo auch bei Fließkommazahlen machen. Knuth schlägt zum Beispiel r%s = r - s * floor(r/s) als Verallgemeinerung vor. Trotzdem kann man in C den %-operator nicht auf Fließkommazahlen anwenden, was wohl damit zusammenhängt, dass derzeit kein Prozessor das ohne Trap ausrechnen kann.


Anmelden zum Antworten