Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 Help with a hangman game
Index -> Programming, Java -> Java Help
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
Morice




PostPosted: Mon Apr 16, 2007 4:37 pm   Post subject: Help with a hangman game

ok so im getin rlly stressed trying to figure out how to change a character if it occurs more then once so anyway who knos can tehy tell me
hers my code
look for the I DONT KNO WHAT TO PUT RIGHT HERE cause thatss wher im havin troubles
thanks a lot Smile



// The "HangmanGame" class.
import java.awt.*;
import hsa.Console;
import java.lang.*;
import java.io.*;
import java.lang.Object;
public class HangmanGame
{
static Console c; // The output console

public static void main (String [] args)
{
c = new Console ();
int guessNum = 0, underlines = 0, goodCount = 0, badCount = 0, somecounter = 0;
String word = "", wrongGuess = "";
char guess;
//*****************************************************************The Words**********************************************************//
String [] arrayOfWords = new String [11];
arrayOfWords [0] = new String ("Mathematics");
arrayOfWords [1] = new String ("Canada");
arrayOfWords [2] = new String ("Romania");
arrayOfWords [3] = new String ("Shopping");
arrayOfWords [4] = new String ("Hawkins");
arrayOfWords [5] = new String ("ComputerScience");
arrayOfWords [6] = new String ("Good Marks");
arrayOfWords [7] = new String ("Music");
arrayOfWords [8] = new String ("Boston");
arrayOfWords [9] = new String ("Windsor");
arrayOfWords [10] = new String ("Calculus");
//*************************************************************End of the Words********************************************************//
guessNum = (int) (Math.random () * 10); //get a random number
c.print (arrayOfWords [guessNum]);

underlines = arrayOfWords [guessNum].length (); //getting the length of the word


for (int x = 0 ; x < underlines ; x++) //loop to "hide" the word
{
word = word + "*";
c.print ("*");
}
c.println ("");

//**********************************************************************Main Loop************************************************************//
while (goodCount < underlines)
{
c.setCursor (5, 1);
c.println ("Please enter your letter."); //getting the answer from the user
guess = c.readChar (); //getting the answer from the user

if (arrayOfWords [guessNum].indexOf (guess) >= 0) //if statement to check if the guess is in the word
{
c.setCursor (2, 1);
if (arrayOfWords [guessNum].indexOf (guess) == arrayOfWords [guessNum].lastIndexOf (guess)) //if statmenet to check more than one of the same letter
{
c.print (word.substring (0, arrayOfWords [guessNum].indexOf (guess)) + guess + word.substring ((arrayOfWords [guessNum].indexOf (guess)) + 1, underlines)); //display the guess with the hidden letters
word = word.substring (0, arrayOfWords [guessNum].indexOf (guess)) + guess + word.substring ((arrayOfWords [guessNum].indexOf (guess)) + 1, underlines); //stores the guess with the hidden letters
goodCount++;
}
else
{
somecounter++;
for (int ii = 0 ; ii < underlines ; ii++)
{

if (arrayOfWords [guessNum].charAt (ii) == guess)
{

I DONT KNO WAT TO PUT RIGHT HERE
}
}


c.setCursor (2, 1);
c.print (word);

}

}

if (arrayOfWords [guessNum].indexOf (guess) == -1)
{
badCount++;
c.setCursor (10, 1);
c.print ("Here are your wrong guesses:");
wrongGuess = wrongGuess + guess + " ";
c.print (wrongGuess);

if (badCount == 15)
{
break;
}
}


}
//***************************************************************End of Main Loop************************************************************//

c.println ("");
if (goodCount == underlines)
{
c.println ("You Win!");

}
else
{
c.println ("You Suck! GAME OVER");
}
} // main method
} // HangmanGame class


[/b]
Sponsor
Sponsor
Sponsor
sponsor
ericfourfour




PostPosted: Mon Apr 16, 2007 5:48 pm   Post subject: Re: Help with a hangman game

Please use syntax or code tags so you code appears indented.

Have you tried writing this out on a piece of paper? It is a pretty simple algorithm:
    
Read in a letter. If the letter has not been guessed, store the letter in a list of guessed letters. Do all of the other stuff with the letter.


What is that piece of code supposed to do?
Java:
if (arrayOfWords [guessNum].charAt (ii) == guess) {
    //I DONT KNO WAT TO PUT RIGHT HERE
}
Morice




PostPosted: Mon Apr 16, 2007 7:41 pm   Post subject: Re: Help with a hangman game

tat piece of code is supposed to check if thers an occurence of an word more then once
ya i kno i kinda complicated myself however i want to keep it in two different thigns like with only one word and with the guess appereaing more then once in a word like a in Canada
so far if i run this program it will only output the first a so it will be *a**** so wat im trying to do with tat through tat if statment is to check if thers more then one occurance so i can put it in
cause i dont kno how to do tat
so ya
hopefully u guys understand wat i mean
Morice




PostPosted: Mon Apr 16, 2007 9:37 pm   Post subject: Re: Help with a hangman game

YEY I FIGURED IT OUT
all on my own i might add
this is teh for loop tat i neded
thansk anyway Smile

for (int ii = 0 ; ii < underlines ; ii++)
{

if (arrayOfWords [guessNum].charAt (ii) == guess)
{
goodCount++;
word = word.substring (0, ii) + guess + word.substring (ii + 1, word.length());<THIS LIEN RITE HERE

}
}
ericfourfour




PostPosted: Tue Apr 17, 2007 4:28 pm   Post subject: Re: Help with a hangman game

I think I understand what you wanted to do more clearly now.

Might I recommend using this function:

Java:
String.indexOf(int ch, int fromIndex)


It will return the index of a given character in a string. The from index is where it starts the search. It returns -1 if there isn't any.

It is just a quick way to find a character in a word. Simply loop through all indexes it finds (starting at 0) until it returns -1.
Display posts from previous:   
   Index -> Programming, Java -> Java Help
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 5 Posts ]
Jump to:   


Style:  
Search: