Warum gehts nich??



  • #include <iostream.h>
    #include <stdlib.h>
    
    int main()
       { int i = 1;
      int summe = 0;
    
          while (i < 1000)
          {
           summe = summe + 1;
           i++;
          }
              return (i++);
       system("PAUSE");
    
    }
    

    Also ich soll programmieren, dass bis 1000 gezählt wird und dass soll auch ausgegeben werden.. Aber irgendwie gehts nich 😕 Hab schon mit cout probiert, mit return... Da Fenster verschwindet immer wieder sofort, d.h er zählt bis 1000 zeigt es aber nich an 😞

    Das war auch nochma ein Versuch der nich funzt 🙄

    #include <iostream.h>
    #include <stdlib.h>
    
    int main()
    {   int i = 1;
        int summe = 0;
        for (i=1; i < 1000; i++);
    
         {
                   summe = summe + i;
                 void main()
         }
    
          system("PAUSE");
    }
    

    Hoffe einer kann helfen 🙂
    Schonma danke!



  • Ist zwar "nur" C...

    #include <conio.h>
    #include <stdio.h>
    
    int main()
    {
      int i;
    
      for (i = 0; i < 1000; i++)
          printf(" %i", i);
      getch();
      return 0;
    }
    


  • #include <iostream>
    
    int main()
    { 
    	std::cout << "Bis: " << std::endl; // "Bis: " ausgeben
    	std::size_t to = 0; // lokale Variable to vom Type std::size_t (unsigned int) anlegen
    	std::cin >> to; // Wert einlesen
    	for (std::size_t i = 0; i < to; ++i) // von 0 bis (to - 1) hochzählen
    		std::cout << (i + 1) << std::endl; // i + 1 ausgeben ...
    
    	std::cin.clear(); // eingabebuffer leeren
    	std::cin.ignore(std::cin.rdbuf()->in_avail()); 
    	std::cin.get();	// auf eingabe warten ...
    }
    

    ?

    #include <iostream.h> // heißt iostream (ohne h)
    #include <stdlib.h> // heißt in C++ cstdlib
    
    int main()
    { 
        int i = 1;
        int summe = 0; // wofür ? reicht doch wenn du i hochzählst ...
    
          while (i < 1000) // muss i <= 1000 oder i < 1001 heißen ... 1000 < 1000 ist nunmal false ;)
          {
           summe = summe + 1; // unnötig ...
           i++;
          }
              return (i++); // hmm das willst du nicht wirklich ^^ std::cout << i << std::endl;
       system("PAUSE"); // std::system ... aber system ist böse ^^
    
    }
    

    ...



  • Thuka schrieb:

    #include <iostream.h>
    #include <stdlib.h>
    
    int main()
       { int i = 1;
      int summe = 0;
    
          while (i < 1000)
          {
           summe = summe + 1;
           i++;
          }
              return (i++);
       system("PAUSE");
    
    }
    

    Also ich soll programmieren, dass bis 1000 gezählt wird und dass soll auch ausgegeben werden.. Aber irgendwie gehts nich 😕 Hab schon mit cout probiert, mit return... Da Fenster verschwindet immer wieder sofort, d.h er zählt bis 1000 zeigt es aber nich an 😞

    Das war auch nochma ein Versuch der nich funzt 🙄

    #include <iostream.h>
    #include <stdlib.h>
    
    int main()
    {   int i = 1;
        int summe = 0;
        for (i=1; i < 1000; i++);
    
         {
                   summe = summe + i;
                 void main()
         }
    
          system("PAUSE");
    }
    

    Hoffe einer kann helfen 🙂
    Schonma danke!

    1.) Das retrun (i+i) kannst du vergessen machs mit cout return gibt nur etwas zurück aber nicht aus

    #include <iostream> //Das ist die einzige die du brauchst
    using namespace std;
    
    int main()
    {   
        char irgendwas;
        int i = 1;
        int summe = 0;
        for (; i <= 1000; i++);
    
         {
                   summe = i;
                   cout << summe << endl;
         }
    
          cout << "Drücken sie Enter um das prog. zu beenden";
          cin >> irgendwas;
          return 0;
    }
    

    2.) was soll das void main() in der Schleife?

    3.) Damit das Fenster offen bleibt kannst du cin benutzen schau aber ins FAQ dort gibts mehrere Möglichkeiten

    [Edit] Mist! zu langsam dabei wollte auch ich mal Erster sei 😞 [/Edit]



  • #include<iostream>
    
    using namespace std;
    int main()
    {
    
    int i = 1;
        int summe = 0;
        for (i=1; i < 1000; i++)
    
         {
                   summe = summe + 1;
                   cout<<summe<<"\n";
         }
    
          system("PAUSE");
    }
    

    folgender fehler das ";" hinter deiner forschleife muss weg, dann gehts einwandfrei.



  • Firefighter
    Was für nen nonsense das mal wieder ist ...

    #include <iostream>
    
    using namespace std; // grml ...
    
    int main()
    {
        int i = 1; // wofür außerhalb der for schleife? wofür negativ? 
        int summe = 0; // vollkommen überflüssig
        for (i=1; i < 1000; i++) // zählst nur bis 999
    
         {
                   summe = summe + 1; // hmm und wofür ist i?
                   cout<<summe<<"\n"; // std::endl ist ne nette Erfindung ...
         }
    
          system("PAUSE"); // und das wohl eher eine extrem schlechte.
    }
    

    Edit
    Hmm bis ich eure Usernames richtig geschrieben hab ^^ Omg ... naja ...



  • jetzt mach ma halblang, nur weil ich net so perfekt wie du bist musste hier nich sowas ablassen, für mich war es ein erfolg das es geklappt,und das kann man anfängern doch auch ma einräumen, anstatt solche sinnlosen kommentare hinter das zeug zu schreiben solltest du es vieleicht einfach ma erklären damit anfänger wie ich es verstehe was sie falsch gemacht haben 😉

    EDIT wollte nur sagen, das ich es besser finden würde wenn man es erklärt was falsch ist, denn wie du sicherlich gesehen hast an meinen beiträgen das ich noch net solange in der materie stehe.Und ich es beim nächsten ma verstehe denn, die kommentare nützen mir nicht viel wenn sie nciht interpretiert werden.



  • in der kürze...

    #include <cstdio>
    int main( int argc, char **argv[ ] ) {
    	std::printf( "%i", argc );
    	if( argc < 1000 ) {
    		std::printf( ", " );
    		main( ++argc, 0 );
    	}
    }
    

    liegt die Würze 😉

    greetz, Swordfish



  • Hmm hab doch meine Teil erklärt ... naja ok legen wir mal los:

    #include <iostream>
    
    using namespace std;				// Ich sehe lieber, in welchem namespace ich mich 
    									// befinde, aber ok, dass kann man machen.
    
    int main()
    {
    	// int i = 1;					/* Warum willst du i schon hier anlegen? Dann existiert		*/
    									/* i auch noch nach der Schleife ... und das brauchst das	*/
    									/* braucht i nicht. In diesem Fall zwar nicht tragisch ...	*/
    									/* aber unschön. Und die zuweisung in der Schleife ist dann	*/
    									/* auch überflüssig											*/
    
    	// int summe = 0;				/* Du zählst i doch schon in der Schleife hoch. Warum willst*/
    									/* du dann noch eine Variable hochzählen?					*/
    
    	for (unsigned int i = 0; i < 1000; ++i)		/* unsigned, weil du ja von Zahlen im positiven */
    												/* Bereich ausgehst. Wenn du bei 1 anfängst		*/
    												/* zählst du nur 999 mal hoch. Entweder du setzt*/
    												/* als Bedingung <= 1000 oder du fängst bei 0 an*/
    												/* und addierst bei der Ausgabe 1 hinzu			*/
    
    	{
    		// summe = summe + 1;			/* Du zählst doch i schon hoch. Siehe oben!
    		// cout << summe << "\n";		/* hier entweder i ausgeben (wenn die Bedingung der for-*/
    										/* Schleife <= 1000 ist) oder (i + 1), wenn die Beding- */
    										/* ung < 1000 ist. std::endl flusht den Buffer direkt	*/
    										/* und fügt ein Newline-Zeichen an. Dazu solltest du	*/
    										/* auch was mit der Suche finden!						*/
    		cout << (i + 1) << endl;
    	}
    
    	system("PAUSE");					/* Such dazu mal mit der Suche ;)						*/
    }
    


  • Swordfish ... das ist ja babaa 😉 main-Rekursiv ... was sacht der Std. dazu? 😉

    #include <iostream>
    int main() { for (std::size_t i = 1; i <= 1000; ++i) std::cout << i << std::endl; }
    

    ? 😉



  • ok alles klar danke, jetzt ist es klarer, nur ich habe den code ja vorhin nicht gemacht, habe ihn einfach nur übernommen von dem autor und so hinzubiegen wie er es wollte und da wollte ich nicht zu viele sachen verändert, aber ok hastes erklärt und das sogar sehr gut, danke 😉



  • Vielen Dank für eure vielen Antworten, nur leider müssen die Zahlen angezeigt werden: 1,2,3,4, usw.... 1000 Ich hoffe ihr versteh was ich meine...



  • wen du meine nimmst werden sie angezeigt, bei mir zumindest 😉



  • dann steht bei mir ...

    1001 drücken sie enter um das programm zu beenden

    =S



  • naja du musst anstatt <1000 entweder <= 1000 oder < 999 , dann wird bis 1000 gezählt



  • Dann werden mir aber imma noch nich alle Zahlen von 1- 1000 angezeigt, sondern wieder das gleiche wie eben nur dann mit 999 😕



  • Lies bitte einfach mal was ich zu den einzellnen Codes geschrieben hab.... und probier mal den Code den ich selbst geschrieben hab aus 😉



  • #include <iostream>
    
    int main(int argc, char *argv[])
    {
        for(int i = 1;i <= 1000;i++)
        {
            std::cout << "Aktuelle Zahl: " << i << std::endl;
        }
    
        std::cout << "Bitte Enter druecken";
        std::cin >> i;
    
        return 0;
    }
    

    evtl. ne lösung



  • Das Problem, dass es nicht angezeigt wird, könnte an der Konsole liegen. Ist mir auch schon einmal passiert, dass der nur die paar letzten Zeilen angezeigt hat. Die Programme funktionnieren also schon, nur siehst du es nicht richtig.

    #include <iostream>
    using namespace std;
    
    int main(){
        for(int i=1;i<1001;++i){
            cout<<i<<endl;
            if(i%100==0){        //Jede 100ste Zahl stoppen wir einmal und warten auf einen Enter-Druck
                cin.clear();
                cin.get();
            }
        }
        cin.clear();
        cin.get();
        return 0;
    }
    

    Versuch das mal und sag mir ob es geht.
    PS: falls es eine Hausaufgabe ist: nimm die normale Lösung in die Schule und sag, dass es nicht geht.

    #include <iostream>
    using namespace std;
    
    int main(){
        for(int i=1;i<1001;++i) cout<<i<<endl;
        cin.get();
    }
    

    Ansonsten: hast du deine Fehler verstanden? Du hast in deinem Code da ein paar grausige Sachen geschrieben.



  • @ Shinja : Der letzte Code hat gefunzt, danke! Die anderen alle mehr oda weniger nich KA warum... Und um ehrlich zu sein, nein ich verstehs nicht alles. Das is das erste Thema was ich nich verstehe... Ich bin sonst eigentlich gut in Info =S DaS mit Iosstream.h kommt da imma von alleine wenn ich ein neues Programm schreiben will und dann lass ichs immer einfacht und sonst... Joar ich kann mir einfach nich virstellen wann ich cout, cin irgendne schleife oda sonst was nehmen muss... Ich habs auch schon mit so nem Tutorial für c++ versucht aba geholfen hats mir nich viel -.-"

    @(D)Evil : Du hattest 3 gepostet und bei denen war es das gleich wie bei allen anderen ausser dem letzten: Fehler, zeigt nur 1000 oder da steht 1000, drücken sie enter um das programm zu schließen...
    ABer ich wollte ja alle Zahlen von 1-1000 da stehen haben... Und auch mit rumprobieren hab ichs nich geschafft 😞


Anmelden zum Antworten