kann jemand eine meinung geben?



  • ich habe diese aufgabe und arbeite seit 2 stunden mit aber ich kann es nicht mach glaube
    wäre seht dankbar wenn jemand von euch mir eine meing gibt

    hier eine von meine code:

    #include <cstdlib>
    #include <iostream>

    using namespace std;

    int main(int argc, char *argv[])
    {/Schreiben Sie ein Programm, das ein Zeichen vom Typ char
    einliest und true ausgibt, wenn das Zeichen größer oder gleich
    '0' und kleiner oder gleich '9' ist, und ansonsten false.
    /

    char Zeichen;

    cout << "Geben sie ein Zeichen ein: ";
    cin >>Zeichen;
    cout<< boolalpha
    << Zeichen << " goesser 0 kleiner 9: " << (Zeichen>=0)<<(Zeichen<=9)<<((Zeichen) & (Zeichen))<<endl;

    system("PAUSE");
    return EXIT_SUCCESS;
    }



  • Wie is das gemeint ob das zeichen größer bzw kleiner is?
    der ascii code oder nur für zahlen?
    man kann ja schlecht a mit 2 vergleichen

    €: Ich würde eine Funktion schreiben die als Parameter einen char hat und einen bool zurückgibt



  • die aufgabe genau ist so auch mit hilfe:
    Schreiben Sie ein Programm, das ein Zeichen vom Typ char einliest und true ausgibt, wenn das Zeichen größer oder gleich '0' und kleiner oder gleich '9' ist, und ansonsten false.

    Hier ist ein Beispieldialog:
    Zeilen mit Benutzereingaben beginnen mit dem Zeichen ">". Wenn Sie den Programmablauf reproduzieren möchten, dürfen Sie das Zeichen ">" nicht eingeben. Spezielle Tasten sind in spitze Klammern eingeschlossen, zum Beispiel "<RETURN>". Bei Tastenkombinationen stehen die Präfixe "Shift", "Ctrl", "Fn" oder "Alt" gefolgt von einem "-" vor dem Namen der Taste in spitzen Klammern, zum Beispiel "<Ctrl-Z>".

    Zeichen:
    > X <RETURN>
    X ist eine Ziffer: false

    mehr weiß ich nicht ich habe fast 2 stunde mit diese echt 😕



  • bool foo(char c)
    {
    if(c == '0' ||
       c == '1' ||
       c == '2' ||
       c == '3' ||
       c == '4' ||
       c == '5' ||
       c == '6' ||
       c == '7' ||
       c == '8' ||
       c == '9')
       return true;
    else
       return false;
    }
    

    oder mit cast
    das is aber einfacher länger und sicherer 😃



  • aber diese operator habe ich noch nicht gelernt denn "IF"



  • toni733 schrieb:

    aber diese operator habe ich noch nicht gelernt denn "IF"

    ich weiß nicht was du meinst 😃
    fals du sagen wolltest das du "if" nicht kennst solltest du erst c++ lernen
    das kennt man nämlich mormalerweise schon nach dem ersten kapitel jedes tuts oder buchs



  • aber deine code zeigt fehler und den"if" kenne ich aber wir haben noch nicht gemacht echt
    jetzt habe eine andere code :und wieder nicht

    #include <cstdlib>
    #include <iostream>

    using namespace std;

    int main(int argc, char *argv[])
    {/Schreiben Sie ein Programm, das ein Zeichen vom Typ char
    einliest und true ausgibt, wenn das Zeichen größer oder gleich
    '0' und kleiner oder gleich '9' ist, und ansonsten false.
    /

    char Zeichen;

    cout << "Geben sie ein Zeichen ein: ";
    cin >>Zeichen;
    cout<< boolalpha
    << Zeichen << " goesser 0 kleiner 9: " << ((Zeichen>=0)&(Zeichen<=9))<<endl;

    system("PAUSE");
    return EXIT_SUCCESS;
    }



  • v1vec schrieb:

    toni733 schrieb:

    aber diese operator habe ich noch nicht gelernt denn "IF"

    ich weiß nicht was du meinst 😃
    fals du sagen wolltest das du "if" nicht kennst solltest du erst c++ lernen
    das kennt man nämlich mormalerweise schon nach dem ersten kapitel jedes tuts oder buchs

    es gibt auch gewisse kurse, wo man nichts verwenden darf, was noch nicht offiziell eingeführt wurde.
    und das "if" ist übrigens an dieser stelle absolut überflüssig.

    << Zeichen << " goesser 0 kleiner 9: " << (Zeichen>=0)<<(Zeichen<=9)<<((Zeichen) & (Zeichen))<<endl;
    

    was hast du dir dabei gedacht?
    beachte: O und 'O' sind völlig verschiedene sachen.



  • oder muss ich in diese form schreiben
    ist nur ein bsp:
    #include <iostream>
    using namespace std;

    int main() {
    cout << boolalpha
    << "XOR\tfalse\ttrue\n"
    << "false\t" << ((false || false) && !(false && false)) << '\t'
    << ((false || true) && !(false && true)) << '\n'
    << "true\t" << ((true || false) && !(true && false)) << '\t'
    << ((true || true) && !(true && true)) << endl;
    return 0;
    }



  • ...



  • toni733 schrieb:

    oder muss ich in diese form schreiben
    ist nur ein bsp:
    #include <iostream>
    using namespace std;

    int main() {
    cout << boolalpha
    << "XOR\tfalse\ttrue\n"
    << "false\t" << ((false || false) && !(false && false)) << '\t'
    << ((false || true) && !(false && true)) << '\n'
    << "true\t" << ((true || false) && !(true && false)) << '\t'
    << ((true || true) && !(true && true)) << endl;
    return 0;
    }

    Wie bitte?

    Dein Code war schon richtig, nur du musst noch die 0 durch '0' ersetzen wie userfriendly.org gesagt hat.

    mfg.



  • Die Lösung steht doch schon in der Aufgabe:
    "wenn das Zeichen größer oder gleich
    '0' und kleiner oder gleich '9' ist, und ansonsten false"

    Du vergleichst mit den Zahlen 0 und 9...
    Vergleich mal auf größer '0'...



  • mal ins Bett gehn 😉


Anmelden zum Antworten