Computerhilfen.de Logo
Forum
Tipps
News
Frage stellen

Suche einen passenden Datenty der Operatoren speichern kann

Hallo :)

Folgendes:

Zitat

"DATENTYP" a;

.....
scanf("%d", &a);
......

If(a==+)

,,,
Rest ist glaube nicht wichtig :)
Also ich suche einen Datentyp der z. B. ein + speichern kann. Bisher habe ich eigentlich immer nur mit dem Datenty "int" zu tun gehabt(der aber leider nur Zahlen speichern kann ) Aber jetzt will ich in kleines Proramm schreiben wozu ich  verschiedene Operatoren in eine variable einspeichern muss, aber ich habe keinen Datentyp in C gefunde der das kann. In dem Tutorial womit ich mich beschäftige werde ich auch nicht schlau  :-\
kann mir einer Helfen ? :)      
« Letzte Änderung: 27.04.10, 08:57:52 von HUSd »

Antworten zu Suche einen passenden Datenty der Operatoren speichern kann:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Kleine Anmerkung:
Auch Zeichen sind Zahlen also wär's durchaus vorstellbar ein + als Zahl zu speichern (passiert am ende ja eh, ob das ding nu char oder käsebrot oder so heisst ist egal.)

Vergleich wäre in deinem fall:
if(cA == '+') // Auch hier vergleichst du auf ein Zeichen nicht auf den Operator. 

Danke :)

Mein Quelltext ist zwar noch nicht fertig, aber bis jetzt sieht er wie folgt aus:

Zitat
#include <stdio.h>
int main()
{
int Zahl1;
int Zahl2;
char Operator;

int a=Zahl1+Zahl2;



    printf("Berechnung zweier Zahlen\n\n");
    printf("Zahl_1:");
    scanf("%d",&Zahl1);

    printf("\n");

    printf("Operator:");
    scanf("%s", &Operator);

    printf("\n");
    printf("Zahl_2:");
    scanf("%d",&Zahl2);

    if (Operator=='+')
    {
        printf("%d", a);
    }



}

Nur leider ist das Ergebnis am ende immer falsch  :-\
Wenn ich z. B. 1 mit 1 addiere kommt eine 11-Stellige negative Zahl heraus  ??? Hmm...

Achja..und ich habe jetzt bei der zweite scanf funktion "%s" und nicht "%c" verwendet, dass sollte aber auch gehen, oder ? (Habe jetzt eine Tabelle gefunden wo verschiedene Formatelemente aufgelistet sind! Als ich nemlich das alles mit "%c" versucht habe, wirde die zweite scanf funktion im Programm irgendwie garnicht benutzt , also es kamm keine Eingabeaufforderung hinter "Operator:"  :-\  
« Letzte Änderung: 27.04.10, 16:36:13 von HUSd »

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Das kommt daher, weil du die Zahlen addierst, bevor du sie einliest. Da nimmt er dann halt irgendwas und addiert das.
Also oben die Variable nur deklarieren:

int a;
und unten an der richtigen Stelle* die Rechnung ausführen
a = Zahl1 + Zahl2;

*) Die findest du sicher allein

Perfekt! :)
Dank dir ;)


« Anfänger Programmieren!!!Script: Textdokumente uploaden »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Alphanumerische Zeichen
Alphanumerische Zeichen: Damit sind bestimmte Zeichenkombinationen gemeint, die aus Zahlen und einigen Buchstaben bestehen können. Während die Zeichenfolge "123...

Internet-Zugriffsprogramm
Ein Internet-Zugriffsprogramm, auch Browser genannt, stellt Internetseiten für den Benutzer dar. Am bekanntesten ist der Microsoft Internet Explorer, gefolgt vom kos...

Programm
Siehe Software...