Zum Inhalt springen

Hangman zufallswort?


Creazy231

Empfohlene Beiträge

Hey Leute...

Also zu meiner Frage:

Wie bekomme ich da nen Zufall rein??


#include <stdio.h>

#include <string.h>

#include <conio.h>

#include <windows.h>


typedef unsigned short int usint;


int main()

{

  system ("title Hangman");

  printf("Hangman!!! \n\n");

  const usint max_breite = 20, max_err = 10;

  char ergebnis[max_breite];

  const char wort[max_breite] = "Tobias";

  usint i,laenge=strlen(wort),error=0;

  bool solved = false,OK = false;


  for(i=0; i<laenge; i++)

    //Das ergebniss wird mit "_" gefüllt

    ergebnis[i] = '-';


  ergebnis[i] = '\0';

  printf("%s Du hasst: %d Fehler von %d\n",ergebnis,error,max_err);


  while (error != max_err && !solved)

  {

    OK = false;

    //Eingeben

    char eingabe[max_breite];

    scanf("\n%s",eingabe);

    if (strlen(eingabe) == 1)

    {

      for(i = 0; i < laenge; i++)

      {

        if (wort[i] == eingabe[0])

        {

          ergebnis[i] = eingabe[0];

          OK = true;  // Buchstabe Richtig

        }

      }

      if (!OK) error++;

      else if (strncmp(wort,ergebnis,max_breite) == 0) solved = true;

    }

    else {

           if (strncmp(wort,eingabe,max_breite) == 0) solved = true;

           else error++;

         }

    //Die Ausgabe

    if (solved) printf("Richtig !\n\n");

    else printf("%s - Du hasst: %d Fehler von %d\n",ergebnis,error,max_err);

  }

  printf("The Game is Over!");

  getch();

}

Ich habe schon nen bisschen mit "rand();" rummprobiert aber nichts gescheites hinbekommen... könnt ihr mir Helfen?

Dnake

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

der Code hat erstaunliche Ähnlichkeiten mit einem den ich schonmal gesehen habe :confused:

http://www.tutorials.de/forum/c-c/202581-hangman-wort-auf-buchstabe-ueberpruefen.html#14

Dich wird hier auch niemand ernst nehmen, wenn du Codes klaust. Geh dein Buch lesen und Grundlagen lernen und frage uns wenn du ein RICHTIGES Problem hast mit Code, den DU geschrieben hast.

Grüße

Hamster

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

der Code hat erstaunliche Ähnlichkeiten mit einem den ich schonmal gesehen habe :confused:

Hangman --- Wort auf Buchstabe überprüfen - C/C++ @ tutorials.de: Forum, Tutorial, Anleitung, Schulung & Hilfe

Dich wird hier auch niemand ernst nehmen, wenn du Codes klaust. Geh dein Buch lesen und Grundlagen lernen und frage uns wenn du ein RICHTIGES Problem hast mit Code, den DU geschrieben hast.

Grüße

Hamster

Ich hab ja nciht gesagt das der code von mir ist... ich hab den code ja nur verwendet um erstmal zu sehen wie das spiel aufgebaut ist... der code hat mir geholfen zu verstehen wie das programmieren eines solchen spieles funktioniert... um einen eigenden code zu programmieren möchte ich nur gerne wissen wie ich einen zufallswert einbauen kann, um , wenn ich meinen eigenden schreibe, den zufallswert gleich ein zu bauen...

Mfg Tobi

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich hab ja nciht gesagt das der code von mir ist... ich hab den code ja nur verwendet um erstmal zu sehen wie das spiel aufgebaut ist... der code hat mir geholfen zu verstehen wie das programmieren eines solchen spieles funktioniert... um einen eigenden code zu programmieren möchte ich nur gerne wissen wie ich einen zufallswert einbauen kann, um , wenn ich meinen eigenden schreibe, den zufallswert gleich ein zu bauen...

Mfg Tobi

Und eben genau das kannst du dir selbst aneignen in dem du Bücher liest und die Grundlagen lernst (dazu gehört u.A auch radnom).

Du hast von so vielen Leuten hier schon Hilfe erhalten und es hat Links gehagelt zu wirklich sehr guten Seiten.

Zeig uns halt mal das du was machen willst und tu das was man dir hier schon oft gesagt hat.

Hamster

PS: Das Wort "Grundlagen" ist in allen deinen Threads min. einmal gefallen. Warum ignorierst du das?

Bearbeitet von hAmst0r
Link zu diesem Kommentar
Auf anderen Seiten teilen

PS: Das Wort "Grundlagen" ist in allen deinen Threads min. einmal gefallen. Warum ignorierst du das?

Ich ignoriere das ganz und garnicht... ich hab den Kurs hier schon gemacht:

C - Kurs Interaktiv

C und C++ sind zwar unterschiedliche sachen soch die Grundlagen sind in etwar gleich so wie ich das gesehen und ausprobiert habe... sobald ich morgen zuhause bin werde ich mir ein passendes buch besorgen indem nocheinmal alle Grundlagen beschrieben sind... und wenn ich das buch mit hoffentlich guten beispielen durch habe, werde ich versuchen mein eigendes Hangman zu Programmieren... und dann werde ich dieses spiel in einem neuen Thema vorstellen was dann 100% von mir ist...

Danke, Tobi

@All... danke für eure hilfe und die Links die ihr mir zukommen lassen habt... ich melde mich wieder...:uli

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja also ich hab das jetzt noch nen bissel verändert und das ist bei rausgekommen:


#include <iostream>

#include <stdlib.h>

#include <time.h>

#include <windows.h>


using namespace std;


int versuche;

int max;

int r;

int u;



void

Spiel() {

   cout<<"\nTippe ein:\n";

   cin>>u;


   if (u>100 || u<1) {

         cout<<"Die Zahl muss zwischen 1 und 100 sein!";

         Spiel();

          }

   if (u == r) {

         cout<<"\a\aDu hasst es geschafft!\n";

         cout<<"Du brauchtest "<<versuche<<" Versuche!"<<endl;

         cout<<"\n\n\n";

         system ("pause");

         system ("cls");

         cout<<"                           !Errate die gesuchte Zahl!\n";

         cout<<"Schreibe eine Zahl zwischen 1 und 100 in das Eingabefeld.\nBeachte dann die Hinweise!\nAlle deine Versuche werden gez"<<(char)132<<"hlt!\n\n"<<endl;

         Spiel();

         }



   else if (u<r) {

         cout<<"Die gesuchte Zahl ist gr"<<(char)148<<"sser!";

         versuche++;

         Spiel();

         }

   else if (u>r) {

        cout<<"Die gesuchte Zahl ist kleiner!";

        versuche++;

        Spiel();

        }

}


int main() {



keybd_event(VK_MENU, MapVirtualKey(VK_MENU, 0), 0, 0);


keybd_event(VK_RETURN, MapVirtualKey(VK_RETURN, 0), 0, 0);


keybd_event(VK_RETURN, MapVirtualKey(VK_RETURN, 0), KEYEVENTF_KEYUP, 0);


keybd_event(VK_MENU, MapVirtualKey(VK_MENU, 0), KEYEVENTF_KEYUP, 0);


          system ("cls");


          int max = 100;

HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);

SetConsoleTextAttribute(

hStdout,

FOREGROUND_RED | FOREGROUND_RED | FOREGROUND_RED

);

          cout<<"                           !Errate die gesuchte Zahl!\n";

          cout<<"Schreibe eine Zahl zwischen 1 und 100 in das Eingabefeld.\nBeachte dann die Hinweise!\nAlle deine Versuche werden gez"<<(char)132<<"hlt!\n\n"<<endl;


          srand( (unsigned)time( NULL ) );

          r = rand() % max;

          versuche = 0;

          Spiel();

}

möchte nur halt gerne wissen wie ich da jetzt noch gescheite Farbe reinbekomme^^

Link zu diesem Kommentar
Auf anderen Seiten teilen

möchte nur halt gerne wissen wie ich da jetzt noch gescheite Farbe reinbekomme^^
Vergiss Farben, und vergiss auch solche Spielereien wie das automatische Umschalten in den Vollbild-Modus, bis du die wirklich wichtigen Grundlagen drauf hast.

Zum Beispiel sollte sich die Funktion Spiel nicht selbst aufrufen. Das nennt man Rekursion, und es ist hier völlig unangebracht, weil eine einfache Schleife auch ausreichen würde. Dein Programm wird irgendwann abstürzen, wenn du nur lang genug spielst, weil der Stack überläuft.

Versuch also, das Programm ohne diese Selbstaufrufe zu schreiben. Das ist viel wichtiger als irgendwelche Farben.

Link zu diesem Kommentar
Auf anderen Seiten teilen

desto mehr Beiträge ich von dir (Creazy231) lese, desto heftiger finde ich es.

Zeig doch mal ein bisschen eigeninitiative und mach dich doch selbst ein bisschen schlau. Du bekommst hier ja schließlich sehr brauchbare Hinweise, die musst du nur mal googlen und dann hätten sich die weiteren Fragen erübrigt. ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

desto mehr Beiträge ich von dir (Creazy231) lese, desto heftiger finde ich es.

Zeig doch mal ein bisschen eigeninitiative und mach dich doch selbst ein bisschen schlau. Du bekommst hier ja schließlich sehr brauchbare Hinweise, die musst du nur mal googlen und dann hätten sich die weiteren Fragen erübrigt. ;)

Ja... ich weiß die Hilfe auch sehr zu schätzen... ich dachte mir nur das die datei oder das wort i-eine Datei ist, in der ich mich darüber schlau machen könnete...

Danke für eure Hilfe^^

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...