Showing posts with label example. Show all posts
Showing posts with label example. Show all posts

Saturday, October 17, 2009

C# Hello, World! Console App.

Pretty much every programmer learns "Hello, World!" first. Because C# is so much stronger and surprisingly different from C++ we are starting at the basics in my Advanced Programming class. Here is how you do a Hello, World! console application in C#.

First go into Visual Studio 2008/Express and goto File -> New -> Project. From the template list select "C# Console Application". In the name box go ahead and call the program "HelloWorld". Visual Studio will take it upon itself to generate code that looks something like this:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }
}

Now this is a kinda overkill amount of code so we are going to just delete most of it. Remove most of the use lines as well as the namespace. Make sure you delete both the opening and closing curly braces for the name space. If you've done it right it should look like this.

using System;

class Program
{
    static void Main(string[] args)
    {

    }
}

Now we want to rename Program.cs in our file viewer. We want it called the same as our class which in this case is called "HelloWorld". Right Click on Program.cs and select Rename. Type in HelloWorld.cs . Don't forget the .cs which is obviously rather important! When you rename the file it will ask if you want to update references to the file within your code. Click YES.

Now all we have to do is add a console print command to the body of main. To do this type Console.WriteLine("Hello, World") ; into main. The code should now look like this.

using System;

class HelloWorld
{
    static void Main(string[] args)
    {
        Console.WriteLine("Hello, World!");
    }
}


With that your program should compile and run. If everything was done right then running it should look like this:


Congrats! Our program works!

- A. R. McGowan.
goodbye, world!

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