Problem mit folgendem Quelltext!



  • Hiho! Ich bin neu hier im Forum, und hab folgendes Problem. Wir sollten im Unterricht ein Programm entwickeln, dass folgendes macht:
    Man gibt zwei Strings ein, z.b. Tim und Adelheit. Er soll sie dann so ausgeben:

    TAidmelheit

    So, soweit tat das Programm, jedoch, wenn man Zahlen eingibt kam ein KuddelMuddel herraus. Und keiner wußte warum. Das HauptProblem ist, dass unser Lehrer mir, mit einem etwas komplizierterem Programm eine schlechtere Note gab, als dem der das folgende mit dem Bug gemacht hatte:

    #include <iostream>
    #include <cstring.h>
    #include <stdlib.h>
    
    int main ()
    {
    char string1[50],string2[50],ergebnis[101];
    cout << "\n\tBitte geben sie den ersten Text ein : ";
    cin.getline(string1,50);
    cout << "\n\tBitte geben sie den zweiten Text ein : ";
    cin.getline(string2,50);
    int i=0,i2=0,i3=0;
    cout << "\n\t";
    while (!((string1[i]==0)&&(string2[i2]==0)))
    	{
       if (string1[i]!=0) { ergebnis[i3]=string1[i]; i++; i3++; }
       if (string2[i2]!=0) { ergebnis[i3]=string2[i2]; i2++; i3++; }
       }
    i2=0;
    while (ergebnis[i2]!=0)
    	{
       cout << ergebnis[i2];
       i2++;
       }
    int end;
    cin >> end;
    }
    

    So, und meine Version schaut noch, wie lang der String ist, und gibt dann nichts mehr dort aus. Das funktioniert auch. Mein Lehrer sagte mir, wenn ich Ihm sagen kann, warum er den KuddelMuddel ausgibt, bekomme ich meine Note. Und nun brauche ich die Hilfe von euch, bevor die Zeugnisnote wegen so einem Quatsch in die Tiefen geht.

    Mfg Keenora



  • Dein Programm funktioniert sowohl mit Buchstaben wie mit Zahlen. Am Ende kommt noch ein merkwürdiges Extrazeichen. Das solltest du abstellen. Ansonsten läuft das Programm. Lehrer, Noten, Schule sind mir völlig wurscht. 😃




Anmelden zum Antworten