This activity requires you to create code in Visual Studio. You can use the C# Console Application template to complete the exercises in this activity. Enter your code within the Main
method of the template and press Ctrl
+ F5
to run the program without debugging.
In this activity, you'll use C# to create basic app logic for the basketball game. Each exercise reflects logic that could be used in a script for game play.
-
Create a
player
variable for the app's player and assign your name to the variable.string player = "Gustavo";
-
The
player
must have possession of the basketball to take a shot. If theplayer
does not have the basketball, then they must wait to take another shot. When the game starts, theplayer
has possession of the basketball up until they shoot the basketball. Create a conditional statement that outputs a string that indicates whether theplayer
can or cannot take a shot.bool hasPossession = true; if (hasPossession == true) { Console.WriteLine("Player can take the shot."); } else { Console.Write("Player cannot take the shot."); }
-
Create a
score
variable for the total number of points received from a successful basketball shot.int score;
-
When the game starts, the
score
is set to0
. Each time theplayer
makes a successful shot, theirscore
increases by1
point. Create aTakeShot
method that increments the player'sscore
by1
point if their shot is successful.static void TakeShot() { int score = 0; bool shotSuccessful = false; if (shotSuccessful == true) { score++; } }
-
The
player
has5
chances to make a shot. After their 5th shot, the game is over. Create a while loop that executes theTakeShot
method until theplayer
has taken their 5th shot.int numShots = 5; while (numShots > 0) { TakeShot(); }
-
When the game is over, the total
score
is output for theplayer
. Use theConsole.WriteLog()
command to create a string that outputs the player's name andscore
.Console.WriteLine(player + " has scored " + score + " points!");
Without a game in play, it can be a challenge to verify whether the program you created is valid. However, there's a way to programmatically simulate game play! The ConsoleReadLine()
command accepts input and stores the value to a variable within the program. Once the value is stored, the program can use the value as it continues to execute the script.
Using ConsoleReadLine()
, modify the program you created to simulate game play. Use ConsoleReadLine()
to do the following:
- Ask and assign the player's name to the
player
value. Welcome the player and inform them that the game is about to start. - Confirm whether the player's shot was successful. If the player makes the shot, then increase their score by
1
point. If the player doesn't make the shot, then tell the player to try again. - Once game is over, print the player's final score to the console.
static void Main(string[] args)
{
Console.WriteLine("What is your name?: ");
string player = Console.ReadLine();
Console.WriteLine("Welcome " + player + "! The game starts in 3...2...1..Go!");
TakeShot();
}
static void TakeShot()
{
int numShots = 5;
int score = 0;
while (numShots > 0)
{
Console.WriteLine("Did you make the shot? (Y/N) ");
string shotResponse = Console.ReadLine();
if (shotResponse == "Y")
{
score++;
numShots--;
}
else
{
numShots--;
Console.WriteLine("Try again.");
}
}
Console.WriteLine("Game Over! You scored " + score + " points!");
}
}