Änfänger probleme



  • ok

    aber wenn ich das programm starten will kommt ein fehler bei

    string



  • valederkleine schrieb:

    ok

    aber wenn ich das programm starten will kommt ein fehler bei

    string

    Welcher Fehler? Poste bitte den Fehlertext.



  • ok mein problem

    wenn ich komblimiere kommt eine fehler meldung bei string

    halt einfach nur so ein x dafor und es lest sich net starten



  • ok wenn ihr so denkt dan lasst das in euren gedanken

    könnte villeicht einer ein programm reinstellen bei dem man ein strich oder punkt odder sowas ist und sich bewegen kann damit ich mal sehe wie ich das machen kann



  • valederkleine schrieb:

    ok mein problem

    wenn ich komblimiere kommt eine fehler meldung bei string

    halt einfach nur so ein x dafor und es lest sich net starten

    Dein Compiler spuckt für jeden Fehler eine Fehlermeldung aus (im Visual Studio ist das im Ausgabe-Fester unten). Diesen Text musst du bitte kopieren und hier posten, damit man dir helfen kann.



  • Es wird nicht besser, meinst du nicht das C++ ungefähr 255 Nummern zu hoch für dich ist? Versuche es doch erst einmal mit einem Basic oder Delphi. Python ist auch sehr einfach zu lernen. Du zeigst hier mit jedem Satz dass du nicht wirklich was von den Grundlagen verstehst und wir sollen dir dann alles von der Pike auf beibringen? Wenn du konkrekte Fragen hast gerne, aber ohne Eigenleistung geht es nunmal nicht.

    Lerne wenigstens ein ganz ganz kleines bisschen Programmieren und Fragen zu stellen, dann wird dir sicherlich gerne geholfen.



  • blue-tec schrieb:

    Es wird nicht besser, meinst du nicht das C++ ungefähr 255 Nummern zu hoch für dich ist? Versuche es doch erst einmal mit einem Basic oder Delphi. Python ist auch sehr einfach zu lernen. Du zeigst hier mit jedem Satz dass du nicht wirklich was von den Grundlagen verstehst und wir sollen dir dann alles von der Pike auf beibringen? Wenn du konkrekte Fragen hast gerne, aber ohne Eigenleistung geht es nunmal nicht.

    Lerne wenigstens ein ganz ganz kleines bisschen Programmieren und Fragen zu stellen, dann wird dir sicherlich gerne geholfen.

    *sign*

    @Topic:
    http://www2.fh-augsburg.de/informatik/vorlesungen/XX/c_cplus/tutorial/henkel/

    Arbeite das mal durch, mindestens bis Tutorial 24, dann können wir weiterreden.
    Und das soll jetzt kein Flame sein oder dergleichen sondern ein guter Ratschlag.



  • valederkleine schrieb:

    könnte villeicht einer ein programm reinstellen bei dem man ein strich oder punkt odder sowas ist und sich bewegen kann damit ich mal sehe wie ich das machen kann

    OK, dann mache ich das mal:

    #include <conio.h>
    #include <iostream>
    #include <windows.h>
    using namespace std;
    
    int main()
    {
        tagPOINT NewPos,OldPos;
        OldPos.x = OldPos.y = 1;
        NewPos = OldPos;
        bool Erase = false;
    
        while(true)
        {
            gotoxy(OldPos.x,OldPos.y);
            OldPos = NewPos;
            if(Erase)cout << " ";
    
            char x = getch();
    
    	        switch(x)
    	        {
        	    	case 'w':
       	    	 case 'W':
    		        if(NewPos.y>1){NewPos.y--;Erase = true;}
    		        break;
    	    	    case 'a':
    	        	case 'A':
    	        	if(NewPos.x>1){NewPos.x--;Erase = true;}
    	        	break;
        	    	case 's':
        	    	case 'S':
        	    	NewPos.y++;
        	    	Erase = true;
        	    	break;
        	    	case 'd':
        	    	case 'D':
        	    	NewPos.x++;
        	    	Erase = true;
        	    	break;
        	    	default: 
        	    	Erase = false;
                }
    
        gotoxy(NewPos.x,NewPos.y);
        printf("X");
        }
    }
    

    Steuerung des Punkts mit W,A,S und D

    MfG, Jochen



  • sorry aber dein programm wird bei meinen dev c++ nich so wirklich angezeigt

    wenn ich kompliemieren möchte passiert nix aber tratzdem danke mal einer der meine fragen beandwortet und mich nicht beleidigt

    leute ich habe schon alle tutorials durchgelesen und angeschaut habe selbst eine art snake programmiert und hab 3 c++ bücher daheim(durchgelesen) mekkert nicht so rum!!!!!!!!!!!!!!!!!!

    ich hab vor nem jahr schonmal angefangen aber dann aufgehört!!!!!!!!!



  • was das programm bringt ist egal!

    #include <cstdlib>
    #include <iostream>
    #include <string>
    #include <cstdio>

    using namespace std;

    int main()
    {
    string start, a, b, c, d, e, f, g, h, i, j, k, l, ziel;

    cout << "w=vor ; s=zuruek ; a=runter ; d=rauf ; e=aktion(wird nicht benoetigt)" << endl;

    cout << "|" << endl;
    cin >> a;
    cout << "
    |
    " << endl;
    cin >> b;
    cout << "|" << endl;
    cin >> c;
    cout << "
    |
    " << endl;
    cin >> d;
    cout << "|___" << endl;
    cin >> e;
    cout << "
    |
    " << endl;
    cin >> f;
    cout << "
    |" << endl;
    cin >> g;
    cout << "
    |
    " << endl;
    cin >> h;
    cout << "
    |" << endl;
    cin >> i;
    cout << "
    |" << endl;
    cin >> j;
    cout << "
    |" << endl;
    cin >> k;
    cout << "
    _________|
    " << endl;
    cin >> l;
    cout << "
    ______|" << endl;
    cin >> ziel;

    if (start == "s")
    {
    cin >> a;
    system("CLS");
    }

    if (a == "w")
    {
    cin >> b;
    system("CLS");
    }

    if (b == "w")
    {
    cin >> c;
    system("CLS");
    }

    if (c == "w")
    {
    cin >> d;
    system("CLS");
    }

    if (d == "w")
    {
    cin >> e;
    system("CLS");
    }

    if (e == "w")
    {
    cin >> f;
    system("CLS");
    }

    if (f == "w")
    {
    cin >> g;
    system("CLS");
    }

    if (g == "w")
    {
    cin >> h;
    system("CLS");
    }

    if (h == "w")
    {
    cin >> i;
    system("CLS");
    }

    if (i == "w")
    {
    cin >> j;
    system("CLS");
    }

    if (j == "w")
    {
    cin >> k;
    system("CLS");
    }

    if (k == "w")
    {
    cin >> l;
    system("CLS");
    }

    if (l == "w")
    {
    cin >> ziel;
    system("CLS");
    }

    system("PAUSE");
    return EXIT_SUCCESS;
    }

    ich wollte mit dem system("CLS"); erreichen damit es ausieht wenn man w drückt also würde kein neues bild sonnder dass selbe erscheinen quasie als würde der strich sich bewegen es geht aber net kann mir bitte einer ohne mekkern und beleidigen helfen???



  • Es tut mir wirklich sehr leid das sagen zu müssen aber wenn du schon soviel Literatur durch hast und immer noch nicht die einfachsten Sachverhalte verinnerlichst hast dann ist Programmieren für dich nix.

    Das ist wie bei den Castingshows, wo die Leute 15 Jahre Gesangsuntericht hatten und von der Jury dann dass erste mal zu hören bekommen dass die quietschende Tür im Garten mehr Töne trifft.

    Das einzige was du mit dem PC machen solltest ist ihn wieder einzupacken und drauf zu schreiben "Ich bin zu blöd zum Programmieren, schickt mir eine Spielkonsole für krasse EgoShooter" und dann zurück zum Hersteller damit.

    Nun resette dein Kopf und dann mach mal Spieletester auf http://www.browsergames.de oder so, aber lass die Finger vom Programmieren in diesem Leben wird das nix mehr Junge. Harte Worte aber Leben ist kein Ponnyhof.



  • junge ich kann solche menschen wie dich net leiden lass solche antworten einfach ich bin ja auch kein so ein noob wie du der nach 2 wochen programmieren gleich alles drauf hat ok also spar dir sowas absofort wirst du von mir ignoriert oder bekommst antworten wie:

    "danke für ihre anfrage ein protokoll wird erstellt"



  • valederkleine schrieb:

    ich wollte mit dem system("CLS"); erreichen damit es ausieht wenn man w drückt also würde kein neues bild sonnder dass selbe erscheinen quasie als würde der strich sich bewegen es geht aber net kann mir bitte einer ohne mekkern und beleidigen helfen???

    Ich sag's noch ein letztes Mal: "geht nicht" ist keine Fehlerbeschreibung! Wenn du ein Fehlverhalten in deinem Programm hast, dann gib uns folgende Informationen:

    - Compiler-Fehler (Programm kann nicht erstellt werden) oder Runtime-Fehler (Programm macht während der Laufzeit nicht, was es soll)?

    - Fehlercode?

    - Fehlertext?

    - Betreffende Zeile(n) in deinem Code?

    ...

    Hier hat einfach keiner Lust, auf "geht nicht" zu antworten, weil dann erstmal das große Ratespiel beginnt. Wenn du Infos lieferst, wird auch geholfen. Wenn du willst, dass wir selbst den Fehler suchen müssen, anstatt dass du ihn uns einfach nennst, wirst du merken (wie schon geschehen), dass eher nicht geholfen wird. Schließlich bezahlst du nicht für diesen Job. Die Leute im Forum opfern ihre (Frei-)zeit, um zu helfen. Da sollte der nach Hilfe Fragende auch ein bisschen beim Helfen mithelfen. Kapiert?



  • Zu meinem Programm: Kann sein, dass du erst eine Taste drücken musst, bevor etwas erscheint. Drück mal auf w,a,s oder d. Das funktioniert so bei mir. Wenn das nicht kompiliert, muss das am Compiler liegen. Dev-C++ ist auch schon etwas veraltet (Ich hab keine Ahnung, warum das immer noch so viele Leute benutzen).

    MfG, Jochen.



  • Vielleicht hilft es dir ja, wenn ich dir sage, was dein Programm macht.
    Also:

    Du hast einige Variablen deklariert und der Text "w=vor ; s=zuruek ; a=runter ; d=rauf ; e=aktion(wird nicht benoetigt)" wird ausgegeben.

    Dann geht es weiter und es wird "|" ausgegeben.
    Daraufhin erwartet das Programm eine Eingabe. Wenn irgendwas eingegeben wurde, Kommt die nächste Ausgabe: "
    |
    ". Danach wird wieder eine Eingabe erwartet (cin). Und so geht das dann immer weiter bis zu dieser Zeile:
    if(start == "s") Bis hier hin lautet die Ausgabe des Programms so:

    |____________
    irgendwas
    _|___________
    irgendwas
    __|__________
    irgendwas
    ___|_________
    irgendwas
    ____|________
    irgendwas
    _____|_______
    irgendwas
    ______|______
    irgendwas
    _______|_____
    irgendwas
    ________|____
    irgendwas
    _________|___
    irgendwas
    __________|__
    irgendwas
    ___________|_
    irgendwas
    ____________|
    irgendwas
    

    das irgendwas ist das, was der Benutzer eingegeben hat, wenn eine Eingabe erwartet wurde.

    Dann wertet das Programm die if-Abfrage if(start == "s") aus.
    Hier gibt es allerdings ein Problem: In "start" steht nichts drin. Also werden alle nachfolgenden Blöcke nicht ausgeführt, da start == "..." immer false ergeben wird. Wenn einer dieser Blöcke ausgeführt werden sollte, würde nur folgendes passieren: es wird eine Eingabe erwartet und dann wird der Bildschirm geleert. Am Ende des Programms wartet das Programm auf einen Tastendruck und wird danach beendet. Ich hoffe, dass das so verständlich war.

    MfG, Jochen.



  • in diesem programm was ja noch nicht fertig gestellt ist gibt es gar keine fehler meldung mehr also ich möchte nur wissen wie der befehl für cleer screen ist und wo der stehen muss!!!

    was kann man auser dev c++ noch nehmen????(kosenlos)



  • valederkleine schrieb:

    in diesem programm was ja noch nicht fertig gestellt ist gibt es gar keine fehler meldung mehr also ich möchte nur wissen wie der befehl für cleer screen ist und wo der stehen muss!!!

    was kann man auser dev c++ noch nehmen????(kosenlos)

    Zur ersten Frage sage ich zu deinem Schutze besser nichts. 🙄

    Um kostenlos C++ unter Windows zu entwickeln kannst du nehmen:

    • Visual Studio 2010 Express Edition
    • Code::Blocks
    • Notepad++ und MinGW

    Das letzte wäre für dich die beste Wahl, da du hier am meisten lernst. Wenn du begriffen hast wie Programme kompiliert und gelinkt werden und wenn du auch mal ein Makefile für mehr als 2 Dateien geschrieben hast kannst du dir mal eine IDE anschauen. Vorher mal mit einem Debugger wie gdb zu arbeiten hat auch noch nicht geschadet.

    Gruß Blue-Tec



  • valederkleine schrieb:

    in diesem programm was ja noch nicht fertig gestellt ist gibt es gar keine fehler meldung mehr also ich möchte nur wissen wie der befehl für cleer screen ist und wo der stehen muss!!!

    Keine Fehlermeldung bedeutet, dass du also keinen Fehler vom Compiler bekommst und das Programm starten kannst. Dennoch kannst du dann eine Beschreibung des Fehlverhaltens liefern, dass dich stört.

    Ich fände es gut, wenn du dir Jochens sehr detaillierte Beschreibung deines Programms mal ganz genau durchliest und dann Stück für Stück feststellst, ob du dir den Ablauf auch so vorgestellt hast oder nicht (du wirst vermutlich eine Tendenz zu Letzterem feststellen).



  • doch das programm passt soweit nur ich möchte nicht mehrere ausgaben sonder so das immer nur eine auf dem bild ist:

    |____________

    und wenn man w drückt soll alles auf dem selben bild passieren oder zumindes soll es so aussehen also nicht so

    |_____________

    w
    |___________

    sonder auf einer fläche also soll der bildschirm nach jeder eingabe gelöscht werden aber wie???

    und kann mir nochmal einer erklären wie ich die konsole auf vollbild kriege???



  • Ok, ich kann's nicht mehr mit ansehen (bzw. -lesen). 😉 Ich hab dir mal ganz schnell was dahingeschludert, was in etwa das macht, was du willst. Du kannst mit diesem Code ein 'X' per WSAD über den Bildschirm bewegen und per ESC das Programm schließen. Das ist zwar mieser Code (z.B. fehlen sämtliche Sicherheitsüberprüfungen), aber das wird dich sicher nicht stören. Eine gute Aufgabe wäre, wenn du das Programm analysierst und dann hier mit deinen eigenen Worten beschreibst, was da im Einzelnen passiert.

    Viel Spaß.

    #include <iostream>
    #include <conio.h>
    #include <windows.h>
    
    using namespace std;
    
    enum { PseudoSprite='X' };
    
    void gotoxy(int x, int y) {
    	COORD c;
    	c.X = x - 1;
    	c.Y = y - 1;
    	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), c);
    }
    
    void ClearScreen() {
    	system("cls");
    }
    
    void PrintSprite(int x,int y) {
    	ClearScreen();
    	gotoxy(x,y);
    	putc(PseudoSprite,stdout);
    
    }
    
    int main()
    {
    	bool bQuit=false;
    	int x=40,y=25;
    
    	ClearScreen();
    
    	while(!bQuit) {
    		while(!kbhit());
    		char c=getche();
    		switch(c) {
    			case 'w':
    				--y;
    				break;
    			case 's':
    				++y;
    				break;
    			case 'a':
    				--x;
    				break;
    			case 'd':
    				++x;
    				break;
    			case 27:
    				bQuit=true;
    				break;
    		}
    		PrintSprite(x,y);
    	}
    }
    

Anmelden zum Antworten