Exponent einer Potenzzahl bestimmen
-
hustbaer schrieb:
... kann der Compiler nicht wissen welche Version gemeint ist.
Mein Compiler weiss das und meckert nicht einmal.
-
ich sollte lernen euch zuverstehen ^^
#include <iostream> #include <cmath> int main() { std::cout<<"zahl:" << std::endl; double zahl = 0.0; std::cin >> zahl; std::cout<<"exponent:" << std::endl; double exp = 0.0; std::cin >> exp; std::cout << pow(zahl, exp) << std::endl; getch(); return 1; }
GEHT nicht.
ach und dabei is auch noch nen fehler."Kein Bezeichner für 'getch'."
-
Jo ... kann es sein das du da einiges nicht verstehst?
#include <iostream> #include <cmath> // Funktionen aus math.h im std namespace. int main() { std::cout << "Zahl: " << std::flush; // std::endl; ist hier falsch, da du damit auch direkt ein Newline in den Stream packst. double zahl = 0.0; // sollte mit einem Standardwert initialisiert werden, um bei falscher Eingabe keinen Fehler zu bekommen std::cin >> zahl; std::cout << "Exponent:" << std::flush; // std::endl; s.o. double exp = 0.0; // s.o. std::cin >> exp; std::cout << std::pow(zahl, exp) << std::endl; // pow liegt im namespace std. ... cmath! std::cin.get(); // getch(); das ist Windows-Müll // return 1; Warum? Ist ein Fehler aufgetreten? Muss wenn dann 0 zurückgeben. Bei main aber nicht notwendig! }
...
-
danke funzt alles soweit bis auf das auf keinen buchstaben gewartet wird bzw. eine eingabe.
-
Geht nicht UND auch noch nen Fehler ? Kaum zu glauben !
Vielleicht so?
#include "Beine.h";
-
Summernoon schrieb:
danke funzt alles soweit bis auf das auf keinen buchstaben gewartet wird bzw. eine eingabe.
AAaaah supi, na dann:
// #include "Beine.h";
-
Datei(include)kann nicht geöffnet werden:"Beine.h" no such file or dictory
-
Ok, lass weg, war nur ein kleiner Scherz
-
wie wärs dann mal mit was sinnvollem ?
witze kannst behalten.
-
Summernoon schrieb:
wie wärs dann mal mit was sinnvollem ?
witze kannst behalten.Ähhhhh seit 3 Seiten beschäftigst Du einen Haufen Experten (die nichts davon haben) mit kruden Beschreibungen und geballter Lernresistenz und nun zeigst DU Dich ungeduldig ??
Starke Strategie !
Gruß,
Simon2.
-
ich habs hier reingeschrieben damit mir jemand hilft.witze brauch ich net und wenn du hier nur sowas schreiben willst ist das vollig unnötig
-
wenn du keine witze ernten willst, dann lern dich genauer auszudrücken, und sinnvolle (und vor allem verständliche) problembeschreibungen zu schreiben.
-
In dem Programm wird nicht auf einen Buchstaben gewartet.
#include <iostream> #include <cmath> // Funktionen aus math.h im std namespace. int main() { std::cout << "Zahl: " << std::flush; // std::endl; ist hier falsch, da du damit auch direkt ein Newline in den Stream packst. double zahl = 0.0; // sollte mit einem Standardwert initialisiert werden, um bei falscher Eingabe keinen Fehler zu bekommen std::cin >> zahl; std::cout << "Exponent:" << std::flush; // std::endl; s.o. double exp = 0.0; // s.o. std::cin >> exp; std::cout << std::pow(zahl, exp) << std::endl; // pow liegt im namespace std. ... cmath! std::cin.get(); // getch(); das ist Windows-Müll // return 1; Warum? Ist ein Fehler aufgetreten? Muss wenn dann 0 zurückgeben. Bei main aber nicht notwendig! }
-
Summernoon schrieb:
In dem Programm wird nicht auf einen Buchstaben gewartet.
-
Summernoon schrieb:
// getch(); das ist Windows-Müll
das heisst ja auch getchar() oder getc(stdin)
OP: nächstes mal stellste solche fragen im ansi-C forum, da hätteste keine 4 seiten gebraucht
-
Wartet leider immernoch nicht auf eine Taste.
#include <iostream> #include <cmath> int main() { std::cout << "Zahl: " << std::flush; double zahl = 0.0; std::cin >> zahl; std::cout << "Exponent:" << std::flush; double exp = 0.0; std::cin >> exp; std::cout << std::pow(zahl, exp) << std::endl; getchar(); }
-
ersetz mal dein einzelnes getchar() durch:
while (getchar() != '\n'); // reste im inputbuffer entfernen getchar(); // auf taste warten
-
danke ! geht wunderbar! ist das mit dem inputbuffer leeren optimal ?
-
wo sind wir denn hier gelandet
int main() { // blabla std::cin.clear(); std::cin.ignore(std::cin.rdbuf()->in_avail()); std::cin.get(); return 0; }
-
Checker&Murckser schrieb:
int main() { // blabla std::cin.clear(); std::cin.ignore(std::cin.rdbuf()->in_avail()); std::cin.get(); return 0; }
Naja, diesen Code habe ich nie sonderlich gemocht. Bei vielen Leuten tut der Code nicht das was er tun soll.
Die bessere Alternative ist die hier:
cin.clear(); cin.ignore ( std::numeric_limits<std::streamsize>::max(), '\n'); cin.get();
Habe ich auch schon desöfteren hier gesehen.
Darf ich eigentlich jetzt einfach in die betroffene FAQ anworten/reinschreiben?