Fahrenheit-Celsius umrechnen



  • Hallo,

    ich bin ein C Neuling und musste schon ein paar Programme schreiben, die aber meistens nicht funktionieren. 😕
    Leider habe ich niemanden, der mir meine Fehler erklären kann, deshalb wollte ich fragen, ob mir von euch jemand helfen kann und mir sagt, was ich falsch gemacht habe und warum es anders gehört.
    Hier geht es um ein Programm, das Fahrenheit in Celsius umrechnen kann und andersrum. Es funktioniert soweit auch, nur es kommen falsche Ergebnisse heraus. Woran kann es liegen?
    Vielen Dank schonmal im Voraus

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

    /*
    *
    */
    int main() {

    double Tf, Tc1, Tc;
    char FC;

    printf("Bitte geben Sie ein, in welche Temperatur Sie umrechnen möchten (f oder c) \n");
    scanf("%c", &FC);

    if (FC == 'f') {
    printf("Bitte geben Sie die Temperatur ein, die Sie umgerechnet haben möchten. \n");
    scanf("%lf", &Tc);
    Tf=Tc*1,8+32;
    printf("Die Temperatur beträgt %lf Grad Fahrenheit", Tf);
    }

    else {
    printf("Bitte geben Sie die Temperatur ein, die Sie umgerechnet haben möchten. \n");
    scanf("%lf", &Tf);
    Tc1 = Tf-32;
    Tc = Tc1 / 1,8;
    printf("Die Temperatur beträgt %lf Grad Celsius", Tc);
    }

    return 0;
    }



  • Schreib mal 1.8 statt 1,8.


  • Mod

    1,8 ist 8. Computer sprechen Englisch. Du meinst 1.8 .



  • SeppJ schrieb:

    1,8 ist 8. Computer sprechen Englisch. Du meinst 1.8 .

    Kann man dazu aber nicht ein local festlegen? 🤡



  • Man bin ich doof, dass ich das nicht selbst gefunden habe...
    Danke vielmals, jetzt funktionierts. 👍

    Wie funktioniert das mit dem local?



  • SeinEngel schrieb:

    Wie funktioniert das mit dem local?

    Brauchst du gar nicht, lass das lieber gleich 😃
    Es war ein Scherz (auch wenn es, jedenfalls in C++, theoretisch möglich ist).



  • Hacker schrieb:

    (auch wenn es, jedenfalls in C++, theoretisch möglich ist).

    Na dann erzähl mal.



  • Bashar schrieb:

    Hacker schrieb:

    (auch wenn es, jedenfalls in C++, theoretisch möglich ist).

    Na dann erzähl mal.

    Laut Jürgen Wolf (er erklärt falsch und schlecht, aber er lügt zumindest nicht, hoffe ich) isses möglich.
    auch wenn ich es mir schlecht vorstellen kann. Das lässt sich doch nur mit i/ostream s realisieren?



  • Also im Klartext:
    Du weißt es nicht, aber behauptest es aber mal kräftig



  • noergel schrieb:

    Also im Klartext:
    Du weißt es nicht, aber behauptest es aber mal kräftig

    Ja.
    Ich kann gerne die Text-Passage quoten. Der kann doch nicht einfach irgendeine Scheiße darein schreiben.... ⚠ ⚠



  • Hacker schrieb:

    Der kann doch nicht einfach irgendeine Scheiße darein schreiben....

    Tut er aber. Das Zitat würde mich trotzdem interessieren 🙂



  • Du kannst also deinen C/C++ Compiler dazu überreden beim Quelltext (die 1,8 stehen im Code) die locales zu berücksichtigen?



  • Hacker schrieb:

    Ja.
    Ich kann gerne die Text-Passage quoten. Der kann doch nicht einfach irgendeine Scheiße darein schreiben.... ⚠ ⚠

    Wolf derzeit ca ist dreimal glaubwürdiger als Du.
    Du wirst da was verwechselt haben.


  • Mod

    Und ich wollte Hacker als er das geschrieben habe scohn fragen was er meint. Und dann dachte ich mir, er meint bestimmt tolle Konstruktionen mit überladenem Komma-Operator und dass es damit irgendwie möglich ist 👍 . Und dann meint er doch bloß den Wolf 👎 .



  • Gut, volkard, damit du siehst wie glaubwürdig er ist, hier das Foto.
    Hier Vollbild:
    https://thumbs.rapidshare.com/thumbs/600/514/5B82E70FE0EE29CB1C38A1FBE0826.jpg



  • Hacker schrieb:

    Gut, volkard, damit du siehst wie glaubwürdig er ist, hier das Foto.
    Hier Vollbild:
    https://thumbs.rapidshare.com/thumbs/600/514/5B82E70FE0EE29CB1C38A1FBE0826.jpg

    lol.
    In der Tat. Jetzt ist Jürgen Wolf bei 0 gelandet. Danke für das Foto.

    Wobei er formal sogar recht hat, das "laufende Programm" wäre beim Compilieren ja der Compiler und in dessen Code habe ich kein locale-Objekt getan. Aber schlechter platzieren kann man den Kasen sicher nicht.



  • volkard schrieb:

    In der Tat. Jetzt ist Jürgen Wolf bei 0 gelandet. Danke für das Foto.

    Ist er aufgestiegen?
    Ich dachte der wäre schon unterirdisch.

    Wise Guys in 'Neun Live' schrieb:

    Es gab nur einen Trost: Schlechter geht es jetzt nicht mehr.
    Dass die Skala des Niveaus von null bis hundert
    nach unten offen ist, hat mich dann doch gewundert.



  • Er schreib außerdem, wie ich gerade feststellen musste, dass eine Mantisse die mathematische Bezeichnung für Nachkommstellen einer Gleitkommazahl sei. Hmm. Stimmt das jetzt? XD



  • volkard schrieb:

    Wobei er formal sogar recht hat, das "laufende Programm" wäre beim Compilieren ja der Compiler und in dessen Code habe ich kein locale-Objekt getan. Aber schlechter platzieren kann man den Kasen sicher nicht.

    Bei JW hat man immer das Gefühl, dass der Text und die Programm-Beispiele nicht zur selben Zeit und auch nicht von derselben Person verfasst werden. Meistens ist der Text ja irgendwie richtig, aber die Beispiele zeigen dann ein massives fehlendes Verständnis der Materie. Bei den Kästen ist es vielleicht genauso, die werden nachdem das Buch fertig ist irgendwie reingesprengselt, von wem auch immer.


  • Mod

    Hacker schrieb:

    Er schreib außerdem, wie ich gerade feststellen musste, dass eine Mantisse die mathematische Bezeichnung für Nachkommstellen einer Gleitkommazahl sei. Hmm. Stimmt das jetzt? XD

    Kann man so sagen, kommt auf den genauen Wortlaut an. Du weißt ja hoffentlich selber, was eine Mantisse ist oder wie du herausfinden kannst, was die genaue Definition ist.


Anmelden zum Antworten