Brauche dringend Hilfe



  • N´Abend Leute,
    ich sitze echt seit richtig vielen Stunden an meinem Programm. Ich komme einfach an einem Punkt nicht weiter:

    #include <iostream>
    #include <string.h>
    using namespace std;
    
    int english(void);
    int deutsch(void);
    char name;
    int main()
    {
       char befehl;
        char ergebnis;
        cout << "In welcher Sprache moechten Sie verfahren? [E]nglish oder [D]eutsch?";
        cin >> befehl;
        cout << endl;
    
        befehl=tolower(befehl);
    
        switch (befehl)
        {
    
            case 'e': english(); break;
            case 'd': deutsch(); break;
            default: cout<< "Ungueltige Eingabe! Programm wird beendet!" << endl;
        }
    
        ergebnis=english();
        cout << "Hello Mrs./Mr.: "<< name << endl;
    
       }
    
    int english()
    
    {
        char name;
    
        cout << "Please enter your name: "<< endl;
        cin>>name;
    
        return name;
    
    }
    
    int deutsch(void)
    
    {
        char name;
    
        cout << "Bitte geben Sie Ihren Namen ein: "<< endl;
        cin>>name;
    
        cout<< "Hallo Frau/Herr: " << name <<endl;
    
    }
    

    Ich möchte, dass er in der main nach der Sprache fragt, dann in der jeweiligen Funktion den Namen ermittelt, diese zurück in die Main schickt, wo es dann noch in der jeweiligen Sprache mit einem Zusatz wie etwas: "Hallo Herr (dann das was aus der Funktion zurückkommt) und das wars auch schon...
    jmd ne idee??


  • Mod

    char = Buchstabe
    string = Zeichenkette

    string.h ist ein Relikt aus alten Tagen, was gar nichts mit Strings in C++ zu tun hat. Den Header string brauchst du.

    Da ist auch noch viel sonstiges falsch. Warum ist name global? Nutze Rückgabewerte! Wozu ist ergebnis gut? Denke über den Programmverlauf nach! Warum geben die Funktionen int zurück? Nutze Rückgabewerte korrekt!

    Falls du noch nie etwas von strings in C++ gehört hast (Hast string.h aus dem Internet abgeschrieben?) dann solltest du an dieser Stelle erst einmal mit deinem Lehrbuch weiter arbeiten, bis das Thema dran kommt. Zeichenketten sind in C++ zwar weit weniger anfängerfeindlich als in C (wo string.h her kommt), aber bloß das Stichwort "string" ist wahrscheinlich trotzdem zu wenig, als dass du damit eigenständig ein korrektes Programm schreiben kannst. Ich kann hier im Rahmen des Forums aber auch keine komplette Einleitung in das Thema verfassen.


Log in to reply