Showing posts with label compatibility. Show all posts
Showing posts with label compatibility. Show all posts

Friday, October 9, 2009

Next Monday

I start classes again. My Classes are as follows:

Advanced Programming: In this class we will take all the stuff we learned in C++ and apply it to C#. While I am glad to have put C++ under my belt there are a ton of annoyances I will not miss about it. Anyone who has ever attempted to perform a switch statement on a series of strings will know exactly what I mean. A man shouldn’t need 12 nested if statements to accomplish one goal unless that goal is to write ugly, hard to follow code.

College Writing I: This is basically English 101. You will most likely not see anything from this class posted on this blog. Hell I don’t even know why I am posting about it here.

Operating Systems: This class is on code portability, I think.

Software Development Life Cycle: I have no clue at all what this class about.



- A. R. McGowan.

next monday is not today

Tuesday, October 6, 2009

A Code Snippet From Hangman

I was originally going to post the entire code for my Hangman project but in retrospect it seemed like a bad idea. The code is long as all hell and spread across eleven files. Some people who have downloaded the Hangman game can't get it to run and that is my fault. I code in the Vista environment and do not understand how to code for older versions of Windows such as XP or 98. I am however taking a class on operating systems this term so if all things go well I will be able to make programs for everyone to enjoy and not just for those on vista. One would think the Operating System wouldn't work to terribly against my since I didn't use any compiler specific functions nor did I use any System libraries.

Now that you have heard my excuse here is the function I used to check if the user was correct or not. String manipulation is a powerful but hard to follow thing. To understand the code you need to know what the variables are currently storing.

currentProgress looks something like this "*a*a*a*".
currentWord looks something like this "bananas".
and guessedWord is a single character that the user entered that was passed to the function using guessWord(userinput)


// This function checks for every occurance of the guessed character. Returns true if char
// is found even once. returns false if it isn't. This also update current progress and sets the
// stars to the letter they should be if that letter is the guessedWord.
bool hmGame::guessWord(char guessedWord) {
 
 size_t found;

 found = gameDict.currentWord.find(guessedWord) ;
 if(found!=string::npos){
  while(found!=string::npos){
   gameDict.currentProgress.replace(found,1,1,guessedWord) ;
   found = gameDict.currentWord.find(guessedWord,found+1) ;
  }
  return true ;
 } else {
  cout << "Incorrect Guess !" << endl << endl ;
  return false ;
 }
}

- A. R. McGowan.

learn the code, don't steal it