Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Programmierung 2 » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Seiten (13): « vorherige 1 2 [3] 4 5 nächste » ... letzte » Neues Thema erstellen Thema ist geschlossen
Zum Ende der Seite springen Programmierung 2
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Auch fillChar in Anführungszeichen ist Quatsch. Du willst das Füllzeichen doch ausgeben, nicht den String " fillChar". Wie kommst Du an das Füllzeichen ran?
Und die eckige Klammer zu fehlt auch immer noch, wie auch die Ausgabe der einfachen Hochkommata um das Füllzeichen rum.
07.09.2017 21:56 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe die Aufgabe nochmal gelesen. Mein Text über die Ausgabe des Rechtecke war falsch.
Die meinen mit "Ausgabe des Rechtecks" einfach Verwendung des operator <<, den wir ja dann implementiert haben.
Du sollst also eine main() schreiben, die Objekte der Klasse CRectangle anlegt und diese mit cout << ... ausgibt.
Und ein paar Vergleiche soll man auch noch machen.

Gruß
Marco
07.09.2017 22:03 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
Victor
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Meinst du es irgendwie so ?

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:


// GIT-Labor
// main.h

////////////////////////////////////////////////////////////////////////////////
// Header-Dateien
#include <iostream>		// Header f&#65533;r die Standard-IO-Objekte (z.B. cout, cin)
#include <stdlib.h>
// TODO: F&#65533;gen Sie hier weitere ben&#65533;tigte Header-Dateien der
// Standard-Bibliothek ein z.B.
// #include <string>

using namespace std;	// Erspart den scope vor Objekte der
						// C++-Standard-Bibliothek zu schreiben
						// z.B. statt "std::cout" kann man "cout" schreiben

// Inkludieren Sie hier die Header-Files Ihrer Klassen, z.B.
// #include "CFraction.h"
#include "CPoint.h"
#include "CRectangle.h"
#include "CScreen.h"


// Hauptprogramm
// Dient als Testrahmen, von hier aus werden die Klassen aufgerufen
int main (void)
{
    // TODO: Tragen Sie hier Ihren Namen, die Matrikelnummer und die Rechnernummer ein
	cout << "Name:, Matrikelnummer: <Matrikelnummer>" << endl << endl;

	CRectangle rectangle1.getBottomLeftCorner().getX(5).getY(5);
	CRectangle rectangle2.getTopRightCorner().getX(25).getY(15);
	CRectangle rectangle3.getFillChar();
	
	cout <<  rectangle1 <<  " , " <<  rectangle2 << "," << rectangle3 
	

	return 0;
}


Ich verstehe nicht warum eclipse dauern meckert Mist?

Description Resource Path Location Type
make: *** [main.o] Fehler 1 CRectangle C/C++ Problem
expected initializer before ‘.’ token main.cpp /CRectangle line 30 C/C++ Problem
expected initializer before ‘.’ token main.cpp /CRectangle line 31 C/C++ Problem
stray ‘\302’ in program main.cpp /CRectangle line 32 C/C++ Problem
stray ‘\264’ in program main.cpp /CRectangle line 32 C/C++ Problem
die Regel für Ziel „main.o“ scheiterte subdir.mk /CRectangle/Debug line 27 C/C++ Problem
expected initializer before ‘.’ token main.cpp /CRectangle line 32 C/C++ Problem
07.09.2017 22:34
Victor
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ist das auch völliger Quatsch ?


code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:

int main (void)
{
    // TODO: Tragen Sie hier Ihren Namen, die Matrikelnummer und die Rechnernummer ein
	cout << "Name:, Matrikelnummer: <Matrikelnummer>" << endl << endl;
	CRectangle rectangle1;

	cout << "CRectangle1[(" << rectangle1.getBottomLeftCorner().getX(5) << "," << " " << rectangle1.getBottomLeftCorner().getY(5) << ")" << "," << "(" << rectangle1.getTopRightCorner().getX(25) << " , "<< rectangle1.getTopRightCorner().getY(15)<< " )"<< ","<<  "fillChar";


	return 0;
}
07.09.2017 23:33
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich weiß nicht, ob das so irgendeine Zukunft hat.
Was soll das hier z. B.:
code:
1:
rectangle1.getBottomLeftCorner().getX(5)

Die Methode getX() ist deklariert, dass es keine Argumente annimmt:
code:
1:
2:
3:
4:
5:
  /**
   * Liefert den Wert der x-Koordinate.
   */
  int getX() const;

Die Klammer in der Deklaration ist leer!

Aber was willst Du überhaupt damit erreichen? Wenn Du ein neues Objekt machen willst, dann machst Du das mit new und rufst damit einen Konstruktor auf.

Ich denke, es wäre viel sinnvoller, wenn Du erst Grundlagen der Programmierung mit C++ lernst. Das hilft Dir doch sonst auch alles nicht weiter, oder?

Gruß
Marco
07.09.2017 23:42 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
Victor
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ah ok .

Ich dachte durch die 5 würde eine 5 als X Koordinate ausgegeben werden großes Grinsen

Aber hier hatte ich es doch so gemacht :

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
int main (void)
{
    // TODO: Tragen Sie hier Ihren Namen, die Matrikelnummer und die Rechnernummer ein
	cout << "Name:, Matrikelnummer: <Matrikelnummer>" << endl << endl;
	
	CRectangle rectangle1.getBottomLeftCorner().getX(5).getY(5);
	CRectangle rectangle1.getTopRightCorner().getX(25).getY(15);
	CRectangle rectangle.getFillChar(fillChar);

	return 0;
}



Ist das nicht richtig?
07.09.2017 23:46
Victor
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Der Konstruktor hat ja nur eine Koordinate , nicht x und y?
07.09.2017 23:47
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Nein, wenn Du ein neues Rechteck anlegen willst, musst Du den Konstruktor mit "new" aufrufen.
Dafür musst Du aber auch neue Eckpunkte machen, die auch mit new angelegt werden müssen.
07.09.2017 23:48 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

welcher Konstruktor hat eine Koordinate?
07.09.2017 23:50 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Du willst ein Rechteck mit den beiden Eckpunkten anlegen. Da gibt es einen Konstruktor dafür, dem Du zwei CPoint-Objekte übergeben musst.
Du kannst dann so was schreiben:
code:
1:
CRectangle rectangle1 = new CRectangle(new CPoint(5, 5), new CPoint(25, 15));
07.09.2017 23:52 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
Victor
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Keiner .

Ich habe vielleicht eine Idee .

Zuerst objekt anlegen :

code:
1:
CRectangle rectangle1;


jetzt koordinaten mit rectangle1.setCorner(.....);?
07.09.2017 23:53
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hab gerade nochmal geschaut: CPoint hat einen Konstruktor mit zwei Koordinaten.
CRectangle hat verschiedene Konstruktoren, einer davon mit zwei Eckpunkten, einer mit zwei Eckpunkten und Füllzeichen und dann noch einen nur mit Füllzeichen.

Also welcher Konstruktor soll denn eine Koordinate haben??? Das weißt schon, was ein Konstruktor ist, oder?
07.09.2017 23:54 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Nimm doch einfach den Konstruktor, wie ich es geschrieben hatte.
07.09.2017 23:55 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
Victor
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von as_string
Du willst ein Rechteck mit den beiden Eckpunkten anlegen. Da gibt es einen Konstruktor dafür, dem Du zwei CPoint-Objekte übergeben musst.
Du kannst dann so was schreiben:
code:
1:
CRectangle rectangle1 = new CRectangle(new CPoint(5, 5), new CPoint(25, 15));


Woher weiss ich das dieser neue Cpoint 2 Koordinaten hat ?

Das verstehe ich nicht ?

Wo wurde das erstellt? verwirrt
07.09.2017 23:56
as_string as_string ist männlich
Haudegen


Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Sorry, hab kacke geschrieben...
Du brauchst kein new, einfach CRectangle rectangle1(...)
07.09.2017 23:57 as_string ist offline E-Mail an as_string senden Beiträge von as_string suchen Nehmen Sie as_string in Ihre Freundesliste auf
Seiten (13): « vorherige 1 2 [3] 4 5 nächste » ... letzte » Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Thema ist geschlossen
Informatiker Board » Themengebiete » Praktische Informatik » Programmierung 2