Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 20

Thema: Calculator: Eingabe von Buchstaben verhindern?

  1. #1
    Youngster
    Registriert seit
    15.01.2010
    Beiträge
    10
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Calculator: Eingabe von Buchstaben verhindern?

    Hallo alle zusammen!

    Bin neu hier und beschäftige mich neuerdings mit C++ habe mir nen Buch über C++ von Martk und Technik gekauft, habe es mir durchgelesen und möchte meine Kenntnisse noch gerne bis zum geht nicht mehr erweitern ^^.
    Aber darum geht es jetzt nicht

    Also um mich ans Coden zu gewöhnen und mit den Strukturen klarzukommen, habe ich erstmal mit etwas kleinem angefangen, und zwar einen Taschenrechner, der die Grundrechenarten + - * / wiedergibt.

    Er funktioniert soweit echt super , nur müsste noch ne Regel festgelegt werden, wie ich die Eingabe von Buchstaben bei std::cin in meinem code verhindere, denn wenn ich nen Buchstabe eintippe, kommt dann immer sowas hier:

    <----Taschenrechner---->
    (0) Addition
    (1) Subtraktion
    (2) Multiplikation
    (3) Division

    Bitte waehlen sie ihre Rechenart und bestätigen sie mit Enter!
    s
    Sie haben Addition gewählt
    Bitte geben sie die erste Zahl ein
    Bitte zweite Zahl eingeben
    5.32943e-3968 + -1.05116e-4095 = nan

    Wenn man schon nen Programm schreibt, dann sollte es auch perfekt sein
    hoffe ihr könnt mir bei dem Problem behilflich sein!?
    Danke schon mal im Voraus!
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    minder
    Gast

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    und wie sieht der source aus?

  3. #3
    Youngster
    Themenstarter

    Registriert seit
    15.01.2010
    Beiträge
    10
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    #include <iostream>

    using namespace std;

    int main()
    {

    int schluss;
    unsigned short int i;
    long double a, b;



    cout << "<----Taschenrechner---->\n";
    cout << "(0) Addition\n";
    cout << "(1) Subtraktion\n";
    cout << "(2) Multiplikation\n";
    cout << "(3) Division\n";
    cout << "\nBitte waehlen sie ihre Rechenart und bestätigen sie mit Enter!\n";
    cin >> i;

    if (i < 0 || i > 3)
    { cout << "Nicht zulässige Eingabe\n\n";



    return main();
    }


    switch (i)
    {
    case 0:
    cout << "Sie haben Addition gewählt\n";
    cout << "Bitte geben sie die erste Zahl ein\n";
    cin >> a;
    cout << "Bitte zweite Zahl eingeben\n";
    cin >> b;
    cout << a << " + " << b << " = " << a + b << endl;
    break;


    case 1:
    cout << "Sie haben Subtraktion gewählt\n";
    cout << "Bitte geben sie die erste Zahl ein\n";
    cin >> a;
    cout << "Bitte zweite Zahl eingeben\n";
    cin >> b;
    cout << a << " - " << b << " = " << a - b << endl;
    break;


    case 2:
    cout << "Sie haben Multiplikation gewählt\n";
    cout << "Bitte geben sie die erste Zahl ein\n";
    cin >> a;
    cout << "Bitte zweite Zahl eingeben\n";
    cin >> b;
    cout << a << " * " << b << " = " << a * b << endl;
    break;


    case 3:
    cout << "Sie haben Division gewählt\n";
    cout << "Bitte geben sie die erste Zahl ein\n";
    cin >> a;
    cout << "Bitte zweite Zahl eingeben\n";
    cin >> b;
    cout << a << " / " << b << " = " << a / b << endl;
    break;
    }

    return 0;

    }

  4. #4
    Jedi Ritter Avatar von Dodo
    Registriert seit
    26.04.2008
    Ort
    Wien
    Alter
    27
    Beiträge
    3.774
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    sieht so aus als würdest du direkt in eine integerzahl einlesen würdest.
    lies lieber in einen string ein und wandel den in eine zahl um.
    Something big is coming. And there will be pirates and ninjas and unicorns...

  5. #5
    Youngster
    Themenstarter

    Registriert seit
    15.01.2010
    Beiträge
    10
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    Bin ja noch ziemlich neu in der Sache, also die ganzen Tricks kenne ich noch nicht so wenn du nen kleines Beispiel geben könntest, wie das so aussehen sollte, dann würdeste mir damit sehr helfen ^^.
    Schlage dann mal mein Buch auf und lese die Stellen noch Mal durch und probiere rum, bis es funktioniert.

    Oder nen paar Referenzen dazu im Internet, kennt ihr nicht irgendwelche Seiten, wo mich sich am besten Infos zur Sprache herholen könnte ?
    Geändert von GetMahony (16.01.2010 um 00:38 Uhr)

  6. #6
    Jedi Ritter Avatar von Dodo
    Registriert seit
    26.04.2008
    Ort
    Wien
    Alter
    27
    Beiträge
    3.774
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    Code:
    #include<string>
    ...
    string eingabe;
    int zahl;
    ...
    cout << "\nBitte waehlen sie ihre Rechenart und bestätigen sie mit Enter!\n";
        cin >> eingabe;
    zahl = eingabe.at(0) - 48;
    switch(zahl)
    ...
    Something big is coming. And there will be pirates and ninjas and unicorns...

  7. #7
    Jedi Ritter Avatar von Dodo
    Registriert seit
    26.04.2008
    Ort
    Wien
    Alter
    27
    Beiträge
    3.774
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    (doppelpost wegen änderung )
    also www.cplusplus.com oder www.tutorials.at
    Something big is coming. And there will be pirates and ninjas and unicorns...

  8. #8
    Youngster
    Themenstarter

    Registriert seit
    15.01.2010
    Beiträge
    10
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    Muss ich da am Anfang #include <string> schreiben, oder geht das auch einfach mit <iostream> ?

    Und ich verstehe diese Zeile nicht so ganz, was bewirkt die ?
    zahl = eingabe.at(0) - 48

  9. #9
    Jedi Ritter Avatar von Dodo
    Registriert seit
    26.04.2008
    Ort
    Wien
    Alter
    27
    Beiträge
    3.774
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    du benötigst beide libraries
    iostream für cin, cout
    string für strings

    also die eingabe steht jetzt in einem string (einer zeichenkette)
    char.at(0) liefert den ersten buchstaben der zeichenkette, also der eingabe
    jedoch ASCII-Codiert. Da 0 als Zahl dem ASCII-Wert 48 entspricht, musst du dies noch abziehen.
    dann bekommst du eine ganze zahl zwischen 0 und 9
    Something big is coming. And there will be pirates and ninjas and unicorns...

  10. #10
    Youngster
    Themenstarter

    Registriert seit
    15.01.2010
    Beiträge
    10
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Calculator: Eingabe von Buchstaben verhindern?

    So klingt das schon viel verständlicher ^^ vielen Dank, ich werde dann mal weiter an meiner Codeperfektion feilen

Ähnliche Themen

  1. Abgeschnittene Buchstaben
    Von Einste1n im Forum HTML & CSS Forum
    Antworten: 6
    Letzter Beitrag: 30.10.2008, 18:01
  2. php sprachdatei Armenische Buchstaben
    Von Edgar im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 10
    Letzter Beitrag: 11.08.2008, 23:38
  3. Buchstaben einlesen?
    Von Dodo im Forum Flash Forum
    Antworten: 1
    Letzter Beitrag: 17.05.2008, 21:19
  4. Buchstaben blättern
    Von im Forum Flash Forum
    Antworten: 1
    Letzter Beitrag: 13.07.2005, 13:09
  5. schleife mit Buchstaben?
    Von im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 29.11.2004, 23:20

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •