Helft mir bitte
-
so:
std::string eingabe; do { std::cout << "Nochmal (Ja) ?: "; // Frage stellen std::cin >> eingabe; // Eingabe abwarten } while(eingabe != "Ja"); // wenn nicht mit Ja beantwrotet, dann zum Schleifenbeginn
-
So
#include <iostream> using namespace std; int main() { char x=0, y=0,z=0; std::string eingabe; cout << "Gebe den 1. Punkt ein: "; cin >> x; cout << "Gebe den 2. Punkt ein: "; cin >> y; cout << "Gebe den 3. Punkt ein: "; cin >> z; do { std::cout << "Nochmal (Ja) ?: "; // Frage stellen std::cin >> eingabe; // Eingabe abwarten } while(eingabe != "Ja"); // wenn nicht mit Ja beantwrotet, dann zum SchleifenbeginnDas geht leider nicht

Schade
-
Geht nicht ist keine Fehlerbeschreibung
-
Das geht leider nicht

SchadeOh mann, mach es doch uns und dir nicht unnötig schwer. WAS geht nicht?
-
------ Erstellen gestartet: Projekt: HU1, Konfiguration: Debug Win32 ------
Kompilieren...
HU1.cpp
.\HU1.cpp(18) : error C2679: Binärer Operator '>>': Es konnte kein Operator gefunden werden, der einen rechtsseitigen Operanden vom Typ 'std::string' akzeptiert (oder keine geeignete Konvertierung möglich)
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(1137): kann 'std::basic_istream<_Elem,_Traits> &std::operator >><std::char_traits<char>>(std::basic_istream<_Elem,_Traits> &,signed char *)' sein
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(1139): oder "std::basic_istream<_Elem,_Traits> &std::operator >><std::char_traits<char>>(std::basic_istream<_Elem,_Traits> &,signed char &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(1141): oder "std::basic_istream<_Elem,_Traits> &std::operator >><std::char_traits<char>>(std::basic_istream<_Elem,_Traits> &,unsigned char *)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(1143): oder "std::basic_istream<_Elem,_Traits> &std::operator >><std::char_traits<char>>(std::basic_istream<_Elem,_Traits> &,unsigned char &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(155): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(std::basic_istream<_Elem,_Traits> &(__cdecl *)(std::basic_istream<_Elem,_Traits> &))"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(161): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(std::basic_ios<_Elem,_Traits> &(__cdecl *)(std::basic_ios<_Elem,_Traits> &))"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(168): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(std::ios_base &(__cdecl *)(std::ios_base &))"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(175): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(std::_Bool &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(194): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(short &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(228): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(unsigned short &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(247): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(int &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(273): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(unsigned int &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(291): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(long &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(309): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(__w64 unsigned long &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(329): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(__int64 &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(348): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(unsigned __int64 &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(367): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(float &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(386): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(double &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(404): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(long double &)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(422): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(void *&)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
D:\Programme\Microsoft Visual Studio 8\VC\include\istream(441): oder "std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::operator >>(std::basic_streambuf<_Elem,_Traits> *)"
with
[
_Elem=char,
_Traits=std::char_traits<char>
]
bei Anpassung der Argumentliste '(std::istream, std::string)'
.\HU1.cpp(20) : error C2678: Binärer Operator '!=': Es konnte kein Operator gefunden werden, der einen linksseitigen Operanden vom Typ 'std::string' akzeptiert (oder keine geeignete Konvertierung möglich)
kann 'eingebauter C++ Operator!=(const char [3], const char [3])' sein
bei Anpassung der Argumentliste '(std::string, const char [3])'
.\HU1.cpp(21) : fatal error C1075: Dateiende erreicht, bevor das zugehörige Element für das linke Element Klammer "{" in ".\HU1.cpp(4)" gefunden wurde
Das Buildprotokoll wurde unter "file://c:\Dokumente und Einstellungen\David\Desktop\Aufgabe\HU1\HU1\Debug\BuildLog.htm" gespeichert.
HU1 - 3 Fehler, 0 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
-
#include <string>
fehlt
-
Und wie kann ich über eine schleife die Länge eines n.ten Polygons errechnen
also 3 punkte dann kommt die frage noch ein punkt dann ja usw.
dann soll er aus 4 punkten die Länge berechnen
-
std::vecotr nutzen und darüber iterieren,
ein Array verwenden (nehme an das dies so sein soll wegen fester max. länge) , zähler mitlaufen lassen , der dann weiß wieviele Punkte eingegeben wurden.
-
Das habe ich verstanden mit do...
aber wieso kann ich das nicht so umschreiben
do { std::cout << "Nochmal (Ja) ?: "; // Frage stellen std::cin >> eingabe; // Eingabe abwarten } while(eingabe != "J" || eingabe != "j" || eingabe != "N" || eingabe != "n" ); // wenn nicht mit Ja beantwrotet, dann zum Schleifenbeginn }wenn ich dann j oder J eingebe macht er immer weiter. Seltsam
-
Gib Dir wenigstens die Mühe und schau Dir mal an was Du da machst
-
Bitte genauer lesen! Ein Punkt ist ein Paar, kein einzelner Wert und ganz sicher kein char. Das steht sowohl in der Aufgabenstellung als auch hier im Thread.
Eigentlich mach ich ja nicht für andere Leute die Aufgaben, aber ausnahmsweise hier mal ein Grundgerüst.
#include <iostream> #include <string> int main() { int Anzahl; std::cout << "Anzahl der Punkte: ": std::cin >> Anzahl; if (Anzahl<3) Anzahl = 3; double Laenge = 0; double x0, y0; // erster Punkt (für Längenberechnung geschlossenes Poly benötigt) double x1, y1; // vorheriger Punkt for (int i=0; i<Anzahl; ++i) { double x, y; // ToDO: hier einen Punkt in (x, y) einlesen if (i==0) { // Ersten Punkt merken x0 = x; y0 = y; } else { // ToDo: Distanz zwischen den beiden Punkten (x, y) und (x1, y1) berechnen (Pythagoras) // ToDo: Ergebnis zu Laenge hinzuaddieren } // Punkt merken x1 = x; y1 = y; if (i>=2) { char weiter; // ToDo: In einer while-Schleife Eingabe abfragen, bis 'j', 'n', 'j' oder 'N' eingegeben wird (einlesen erfolgt in die Variable weiter if (weiter=='n' || weiter=='N') break; } } // ToDo: Ausgabe: Länge für offenes Poly steht in Länge // ToDo: Ausgabe: Länge für geschlossenes Poly ist gleich Länge offenes Poly plus Entfernung zwischen (x0, y0) und (x1, y1) }
-
Habe ich wirklich wenn Eingabe ungleich Ja ist dann bricht er ab aber die kann ich doch durch || miteinander verbinden
-
@Knuddlbaer: Es gibt eigentlich keinen Grund sich die Punkte zu merken. Mach braucht immer nur den aktuellen, den davor und für geschlossene Polygone noch den allerersten.
-
Vielen herzlichen ddank dafür
-
dns schrieb:
Habe ich wirklich wenn Eingabe ungleich Ja ist dann bricht er ab aber die kann ich doch durch || miteinander verbinden
Nein, || ist ein logisches ODER, das logische UND schreibt sich &&
-
Wenn ich 5 oder eine var. Zahl bei deinem Progrmm eingebe errechnet er nix
-
Hallo
dns86 schrieb:
Wenn ich 5 oder eine var. Zahl bei deinem Progrmm eingebe errechnet er nix
Hast du dich neu registriert?
chrische
-
Ja wieso?
-
dns schrieb:
Ja wieso?
Weil es sehr irritierend und auch "bad style" ist, mit mehreren Usern im selben Forum zu arbeiten (gilt generell)....
Gruß,
Simon2.
-
Intressant ich heisse nur dns und habe mich gestern hier angemeldet, natürlich bin ich auch bei anderen foren angemeldet aber hier nur einmal
