Difference between revisions of "Loop"
esse quam videri
(→Examples) |
(→Examples) |
||
Line 33: | Line 33: | ||
<syntaxhighlight lang ="csharp"> | <syntaxhighlight lang ="csharp"> | ||
// For Loop: This type of loop will run the specified number of times. Typically used for iterating through collections such as arrays or lists. | // For Loop: This type of loop will run the specified number of times. Typically used for iterating through collections such as arrays or lists. | ||
− | // This example will look at | + | // This example will look at an array of names and shuffle them. Suppose this will determine who the winner of a raffle will be. |
string[] raffleNames= { "Adam", "Ben", "Charile", "Derek", "Erik", "Frank" }; | string[] raffleNames= { "Adam", "Ben", "Charile", "Derek", "Erik", "Frank" }; | ||
Line 51: | Line 51: | ||
string winner = raffleNames[randomNumberGenerated]; | string winner = raffleNames[randomNumberGenerated]; | ||
console.WriteLine(winner); | console.WriteLine(winner); | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |||
+ | <syntaxhighlight lang ="csharp"> | ||
+ | // Foreach Loop: This type of loop will run through all elements of a collection. | ||
+ | // This example will look at a list of contacts in a phone, attempt to find a match for a search, and state whether the search was successful or not. | ||
+ | |||
+ | list<string> contacts; //Suppose this was not empty. | ||
+ | string search; // What we are trying to find in the list of contacts. | ||
+ | bool searchedItemFound; // this will be the boolean that will determine if the search was successful. | ||
+ | |||
+ | searchedItemFound = false; // we are setting this to false before the loop so that if the variable is true after the loop, we know there is a success. | ||
+ | foreach(string name in contacts) | ||
+ | { | ||
+ | if(name == search) | ||
+ | { | ||
+ | searchedItemFound = true; | ||
+ | } | ||
+ | |||
+ | } | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 17:08, 21 August 2019
Definition
Relevance
Examples
Below are examples of loops in C#
// Do-While Loop: This type of loop will always run at least once because it will not check the termination condition until after the first run.
// This example will loop through an example game's prompt for a player to make a choice. Until the player makes a valid choice, the loop will continue asking the for the player's input.
string choice; // This will be used to store the user's input.
bool validSelection; // This will be used to terminate the loop.
do
{
console.WriteLine("Which path will you take? 1 or 2?"); // prompt for asking the user.
choice = console.ReadLine(); // getting the user's input.
if(choice == "1" || choice == "2") // checking to see if the choice is valid.
{
validSelection = true; // valid choice, no longer need to loop.
}
else
{
validSelection = false; // invalid choice. Because the variable is set to false, it will cause the loop to repeat, meaning that the user will be asked to make a choice again.
}
} while(validSelection == false) // if validSelection is set to false, repeat the loop.
// For Loop: This type of loop will run the specified number of times. Typically used for iterating through collections such as arrays or lists.
// This example will look at an array of names and shuffle them. Suppose this will determine who the winner of a raffle will be.
string[] raffleNames= { "Adam", "Ben", "Charile", "Derek", "Erik", "Frank" };
string tempName; // When shuffling, a temporary variable will be needed in order to prevent losing data.
Random r = new Random(); // Random is a class available in C# that allows for generating random numbers. Great for our purposes of shuffling!
int randomNumberGenerated; // Although Random can generate a random number, we'll be using this integer to store that generated number.
for(int i = 0; i < raffleNames.Length; i++)
{
randomNumberGenerated = r.Next(raffleNames.Length); // r.Next is a function that accepts an integer as an argument to determine the range. raffleNames.Length is a property of the array that is an integer, that's what we're using for the argument.
tempName = raffleNames[i];
raffleNames[i] = raffleNames[randomNumberGenerated];
raffleNames[randomNumberGenerated] = tempName;
}
randomNumberGenerated = r.Next(raffleNames.Length);
string winner = raffleNames[randomNumberGenerated];
console.WriteLine(winner);
// Foreach Loop: This type of loop will run through all elements of a collection.
// This example will look at a list of contacts in a phone, attempt to find a match for a search, and state whether the search was successful or not.
list<string> contacts; //Suppose this was not empty.
string search; // What we are trying to find in the list of contacts.
bool searchedItemFound; // this will be the boolean that will determine if the search was successful.
searchedItemFound = false; // we are setting this to false before the loop so that if the variable is true after the loop, we know there is a success.
foreach(string name in contacts)
{
if(name == search)
{
searchedItemFound = true;
}
}