Inhalt char-Array



  • Hi!

    Du meinst die 4. Ziffer (index 3), oder?
    Außerdem würde ich das char-Array auf 5 erweitern, da noch die terminierende 0 in das Array passen sollte.

    Grüße
    Richie



  • Das hatte ich eben übersehen. GPC hat auf jeden fall Recht!



  • Alles klar...

    der fehler waren die zwei '...' strichels in der if-bedingung!

    Klappt einwandfrei

    Mille Grazie

    EOF



  • Hab noch ein problem betreffend der if-Abfrage!

    Ich will z.B. von ner 4-stelligen zahl die letzte ziffer abfragen ob diese gerade ist (0,2,4,6,8) oder ungerade ist (1,3,5,7,9).

    Kann ich diese Bed. alle in eine If-Anweisung reinstecken, also

    if ((i[3] == '0') || (i[3] == '2') || usw.)
    {zahl ist gerade}
    
    if ((i[3] == '1') || usw.)
    {zahl ist ungerade}
    .
    ..
    ...
    

    schreiben?

    Thanks



  • Warum in Char Array einlesen und nicht in eine Zahl?

    int zahl;
    cin >> zahl;
    if(zahl % 2) {
        cout << zahl << " ist nicht gerade.";
    }
    else {
        cout << zahl << " ist gerade.";
    }
    

    Gruß



  • ich finde in ne zahl is es problematischer einzulesen, aber gut, ich mach es für gewöhnlich mit

    char eingabe[20];
    int zahl;
    cin>>eingabe;
    zahl = atoi(eingabe);
    

    weil es irgendwie sicherer is damit Benutzereingaben abzufangen



  • Wie wärs denn mal mit Initialisierung des Arrays. 🙄

    Ansonsten werden da zwängsläufig ziemlich zufällige
    Werte drin stehen. 😉



  • Hmm...sorry...mein fehler...muss wohl bissle konkreter werden...

    Ich hab am anfang ein char (zahl) in das ich ne zahl einlese (z.B. 9902).
    Ferner hab ich ein char (titel) in das ich über

    strcmp(titel,"Diagramm 1 ");
    

    einen Text reinkopier. Hintendran kleb ich über

    strcat(titel,zahl);
    

    die eingebene Zahl.
    Nun will ich die zahl auf ihre letzte ziffer hin überprüfen, ob diese gerade od. ungerade ist.

    wenn sie gerade ist, soll

    strcat(titel," ohne Pulser");
    

    durchgeführt werden

    wenn ungerade, dann

    strcat(titel," mit Pulser");
    

    Irgendiwe hängt er mir aber immer beides nacheinander dran,
    also "Diagramm 1 9902 ohne Pulser mit Pulser"

    Ich hab keinen Plan wieso 😕

    Thx



  • Ok habs gelöst...

    es warn die verdammtem == anstatt = in der if-Bed.

    SChande über mich...aber es iss ja auch montag 😉

    Sorry

    EOF



  • Machs halt einfach so, dass du, wie ich es beschrieben habe:

    char i[4];
    int x
    cin>>i;
    x = atoi(i);
    strcat(titel,i);
    if(x%2==0) strcat(titel," ohne Pulser");
    else strcat(titel," mit Pulser");
    

    Damit sollte es gehen, denk ich ma


Anmelden zum Antworten