000
22.03.2004, 16:02 Uhr
Cebinem
|
Hallo! Ich habe ein Problem bei meinem Programm. Also, ich will, dass das Programm eine eingebene Zahl verdoppelt und dann das Ergebnis ausgibt. Das ganze soll mit der Funktion ("int Verdopplung(int);") und mit dem "return 2 * Eingabe" funktionieren, weil ich bisher nur mit int main() gearbeitet hab und ich will es aber mal anders probieren. Der nachfolgende Quellcode zeigt keine Fehler oder Warnungen beim kompilieren an, aber wenn ich z. B. die Zahl 12 eingebe erscheint nichts und gebe ich nochmal 12 ein beendet sich das Programm.
Nun meine Fragen: 1. Hab ich irgendwo vergessen die Funktion int Verdopplung(int Eingabe) in int main() aufzurufen? 2. Hab ich irgendwo was vergessen oder an der falschen Stelle geschrieben? 3. Funktioniert return 2 * Eingabe; überhaupt oder ist das überhaupt gültig? 4. Ist Eingabe = Verdopplung(Eingabe); ein Funktionsaufruf für die Funktion int Verdopplung(int Eingabe)?
Hier der gesamte Quellcode:
C++: |
#include <iostream> using namespace std; int Verdopplung(int); int main() { int Eingabe; cout << "Dieses Programm verdoppelt eine Zahl.\n\n"; cout << "Bitte geben sie eine Zahl ein: " << endl; cin >> Eingabe; cout << "" << endl; Eingabe = Verdopplung(Eingabe); cout << "Das Ergebnis lautet: " << Eingabe << endl; return 0; }
int Verdopplung(int Eingabe) { cin.ignore(); cin.get(); return 2 * Eingabe; }
|
Wenn es geht, sollte das Programm mit zwei Funktionen (int main() und int Verdopplung(int) und dem return 2 * Eingabe; funktionieren. Aber wenn ihr so den Fehler nicht beheben könnt und der Quellcode vielleicht ohne die zwei Funktionen geschrieben werden muss, dann ist das zwar schade aber auch ok.
Hier noch ein paar Daten von mir: Betriebssystem: Windows XP Professional Compiler: DEV-C++ 4.9.8.0
Ich wäre sehr dankbar für eure Hilfe!!!!!!!!!!!!!!!!!!!!!!!
MFG Cebinem -- Jetzt sind wir hier, was jetzt geschieht, geschieht uns. - Anna Seghers |