Kleines Programm großer Fehler =)..



  • Ja weiss nicht, vielleicht glaubt er dass Java Programm nicht unter Windows laufen...



  • Nunja, dass Programm sollte eigtl. einfach nur per Exe ausführbar sein.
    Jedoch weiß ich noch nicht, wie ich ein Java programm so hinbekomme, dass es unter Windows läuft.

    Sorry bin da auch nochnicht richtig drinne, bin noch Anfänger und Programmiere Java hauptsächlich für die Schule.
    ----------------------------------------------------------------------------------
    Wie nutze ich strand(time(0)); eigtl. richtig ?
    Ich bekomme den Fehler, dass ich das erst deklarieren soll.
    Könntet ihr mir da mal ein beispiel zeigen ?

    Wäre echt nett und ich danke für eure Hilfe 🙂

    Gruß Jannis



  • falls du den obigen Quelltext meinst:
    es heißt da srand und nicht strand
    Außerdem: hast du ctime inkludiert?



  • Ja habe ctime includiert hatte aber in einem tut gelesen, dass man
    <time.h> dafür bräuchte, habe das dann includiert und dann ging es
    wo ist denn der unterscheid zwischen

    #include <time.h>
    und
    #include <ctime>



  • Nemercry schrieb:

    Ja habe ctime includiert hatte aber in einem tut gelesen, dass man
    <time.h> dafür bräuchte, habe das dann includiert und dann ging es
    wo ist denn der unterscheid zwischen

    #include <time.h>
    und
    #include <ctime>

    #include <ctime> ist neu und man hat das so entschieden 🙄



  • Und um die ausführliche Erklärung noch zu ergänzen: Im Header ctime ist alles in den Namensraum std gewandert, dorthin wo die C++ Sachen wie std::vector, std::copy usw. auch liegen.



  • Ah ok, danke =).

    Soo nachdem ich das Programm erfolgreich beendet hatte, wollt ich es erweitern, so das es eine belibige Spieleranzahl benutzen kann.
    und mein Code sieht bis jetzt so aus:

    #include <cstdlib>
    #include <iostream>
    #include <string>
    #include <ctime>
    #include <time.h>
    
    using namespace std;
    using std::string;
    
    int main(int argc, char *argv[])
    {
    
    srand(time(0));
    
      string a,b,c,d;
    
      cout<<"Das hier ist der Enemyfinder 0.2 von Jannis Mahlitz!!"<<endl;
      cout<<""<<endl;
      cout<<""<<endl;
      cout<<"----------------------------------------------"<<endl;
    
      //string sp_1;
      //string sp_2;
      //string sp_3;
      //string sp_4;
    
    int j[50];  
    int x;
    cout<<"Bitte hier die Spieleranzahl eintragen!!!"<<endl;
    cin>>x;
    
    string sp[50]; // deklariert ein statisches array
    
    for(int i = 0;  i< x; i++)
    {
      //sp[i] = "Das ist eintrag nummer" + i;
            cout<<"Spielername Nummer "<<i<<" eingeben"<<endl;
                  cin>>sp[i]; 
    
    {
                  for(int i = 0;  i< x; i++)
              {    j[i] = (rand()%100);
    
    //-----altes script---------
      //cout<<"Spieler Nummer 1 heist ? "<<endl;
      //cin>>sp_1;
      //cout<<"Spieler Nummer 2 heist ? "<<endl;
      //cin>>sp_2;
      //cout<<"Spieler Nummer 3 heist ? "<<endl;
      //cin>>sp_3;
      //cout<<"Spieler Nummer 4 heist ? "<<endl;  
      //cin>>sp_4;
    
      //----------Random Funktion--------------------
       //a =  (rand()%100);
       //b =  (rand()%100);
       //c =  (rand()%100);
       //d =  (rand()%100);
      //-------------------Random Ende--------------
    //  if (a <=b)
    
      //      if (a < c)
    
        //          if (a < d){
            //         a = sp_2;
              //       c = sp_3;
                //     d = sp_1;
                  //   b = sp_4;
                   //  }
          //         else {
          //           c = sp_2;
            //         d = sp_1;
              //       b = sp_3;
                //     a = sp_4;  
                  //   }
    
    //        else
      //          if (c < d){
        //          a = sp_3;
          //        c = sp_4;
            //      b = sp_1;
              //    d = sp_2;
                //  }
    //          else{
      //           a = sp_4;
        //         b = sp_3;
          //       c = sp_2;
            //     d = sp_1;
              //   } 
    //  else
      //    if (b < c)
        //     if (b < d){
          //      b = sp_4;
            //    a = sp_3;
              //  c = sp_2;
                //d = sp_1;
                //}       
            // else{
             //    b = sp_1;
              //   c = sp_2;
               //  a = sp_4;
                // d = sp_3;
                 //}
     //     else
      //        if(c < d){
       //          a = sp_2;        
        //         b = sp_3;
         //        c = sp_4;
          //       d = sp_1;
           //      }
          //    else{
           //       b = sp_4;
            //      c = sp_3;
             //     d = sp_2;
              //    a = sp_1;
               //   }
      //cout<<" Es treten an "<<a<<" gegen "<<c<<endl;
     // cout<<""<<endl;
      //cout<<" Die zweite runde bestreiten "<<b<<" gegen "<<d<<endl;
     // cout<<"-----------------End of Programm-------------------"<<endl; 
    
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    

    Ich hab das alte Programm vorerst zur Orientierung als kommentar dringelassen.

    In dem alten Programm, habe ich jedem Spieler eine Zufallszahl zugewiesen, diese von klein nach groß geordnet und dann kamen so die Gegner heraus.
    Da ich hier nun mit Arrays arbeite, muss ich mit dem Bubblesort Algorithmus arbeiten um die Zahlen zu sortieren. Bisher verstehe ich jedoch noch nicht genau, wie dieser funktioniert und wo ich meine Werte eintragen kann.
    Vielleicht könnt ihr mir hier noch Mal unter die Arme greifen ?



  • Dann fangen wir noch mal ganz von vorne an ...

    Wenn du <ctime> inkludierst, brauchst du <time.h> nicht mehr zu inkludieren.

    Wenn du using namespace std verwendest, brauchst du using std::string nicht mehr.

    Das statische Array ist nicht ok. Was denkst du wohl, was passiert, wenn eine Zahl größer als 50 eingegeben wird? Aus diesem Grund nimmt man normalerweise ein dynamisches Array, d.h. std::vector.

    Es ist absolut überflüssig, daß du selbst einen Sortieralgorithmus implementierst. Die STL bietet soetwas bereits an (std::sort).



  • hmm achso ,ok danke



  • Hallo zusammen,

    15 Jahre später bin ich wieder auf diesen Beitrag gestoßen.
    Und hui, ui ui - respekt für den langen Atmen - damals waren mir viele Bestandteile des Programmierens noch unbekannt.
    Nichts desto trotz habe ich mit eurer Hilfe den "Enemyfinder 0.2" fertig gestellt - wofür auch immer dieser gut ist. 🙂

    Heute blicke ich auf eine langjährige Erfahrung im Programmieren mit unterschiedlichen Sprachen zurück: Java, C++, PHP, Python und C#. Es gab auch mal Ausreißer und Skriptsprachen - aber heute bin ich nur noch C# und /bin/bash treu!
    Ihr habt maßgeblich dazu beigetragen, indem ihr meine ersten Gehversuche unterstützt habt.

    In diesem Sinne: vielen Dank dafür und macht weiter so - die Welt braucht fähige Entwickler !

    Hinweis: zur besseren Lesbarkeit habe ich meine Beiträge moderiert. Inhaltlich sind sie aber noch gleich.


Anmelden zum Antworten