You are not logged in.

  • Login

1

Monday, December 4th 2006, 5:16pm

Eingabe auf Binärzahlen beschränken

Hallo alle miteinander!

Ich habe ein kleines Problem. Soll ein Programm in C schreiben, dass ganze Zahlen von Dual in Dezimal umrechnet. Die Rechenoperation ist nicht das Problem, wie beschränke ich aber die Eingabe der Dualzahl auf "Einsen" und "Nullen"?

Für hilfreiche Ansätze wäre ich sehr dankbar.

PS: Ich dachte mir, dass ich jedes einzelne Zeichen der Eingabe überprüf und anschliesend in einen string schreib. Aber ich steh momentan irgendwie auf dem Schlauch :)

2

Monday, December 4th 2006, 6:47pm

C Quellcode

1
while (cin.get(c) && ( c == ’0’ || c == ’1))

3

Monday, December 4th 2006, 7:27pm

Danke für die Antwort, aber was ist
cin.get(c)

Muss ich da noch eine Schnittstellendatei mit einbinden und wenn ja, welche?

4

Monday, December 4th 2006, 7:43pm

Dafür musst Du die iostream includen (#include <iostream>).

Aufrufen tust Du cin.get entweder mittels std::cin.get(c) oder Du nutzt gleich den Namespace:

C Quellcode

1
2
3
4
5
6
7
8
9
#include <iostream>
 
using namespace std;
 
int main() {
...
while (cin.get(c) && ( c == ’0’ || c == ’1))
..
}

5

Monday, December 4th 2006, 7:48pm

Sorry, aber wenn ich die include, dann steigen meine Fehler beim kopilieren auf über 100 und die liegen dann alle in der stdio.h angeblich.

Gibt es nix einfacheres ohne die iostream?

6

Monday, December 4th 2006, 7:59pm

Achso, da steht ja das Du das in C machst...klar das da jetzt Fehlermeldungen kommen:)

Hm, da musst Du irgendwas mit getchar oder so basteln. Tut mir leid, für C wird Dir jmd. anders auf die Sprünge helfen.

7

Monday, December 4th 2006, 9:10pm

sorry hab C++ gedacht. in C dürfte das aber genauso funktionieren, nur mit den für C üblichen Ausdrücken.

Similar threads

Social bookmarks