C# Exercise: 52 Password 5 attempts

This C# exercise involves creating a program that prompts the user for their username and password, both as strings. If the entered credentials do not match the correct ones ("username" and "password"), the user can retry up to a maximum of 5 attempts. After five failed attempts, the program will reject the user and display an appropriate message.



This C# programming exercise is excellent for practicing control structures like loops (while or for) and conditionals. It also introduces the implementation of basic security systems with an attempt limit, which is useful in real-world applications requiring user authentication. By completing this exercise, the programmer will strengthen essential skills such as data validation, string handling, and flow control in C#.



 Lesson

Basic Data Types

 Exercise

Password 5 attempts

 Objetive

Write a C# program that prompts the user for their username and password. Both should be strings. After 5 incorrect attempts, the user will be rejected.

 Example Code

using System;  // Import the System namespace to use basic classes like Console

class Program  // Define the main class of the program
{
    static void Main()  // The entry point of the program
    {
        string username;  // Declare a variable to store the username
        string password;  // Declare a variable to store the password
        int attempts = 0;  // Variable to count the number of incorrect attempts

        // Allow a maximum of 5 attempts
        while (attempts < 5)
        {
            // Ask the user for their username
            Console.Write("Enter your username: ");
            username = Console.ReadLine();  // Read the username input from the user

            // Ask the user for their password
            Console.Write("Enter your password: ");
            password = Console.ReadLine();  // Read the password input from the user

            // Check if the username and password are correct
            if (username == "username" && password == "password")  // If both are correct
            {
                Console.WriteLine("Welcome! You have successfully logged in.");  // Display a welcome message
                return;  // Exit the program successfully
            }
            else  // If the username or password is incorrect
            {
                attempts++;  // Increment the number of attempts
                Console.WriteLine("Invalid username or password. Attempts left: " + (5 - attempts));  // Display error message and remaining attempts
            }
        }

        // If the user reaches 5 incorrect attempts, display a rejection message
        Console.WriteLine("You have been rejected after 5 incorrect attempts.");
    }
}


More C# Exercises of Basic Data Types

 Char
Write a C# program to ask the user for three letters and display them in reverse order....
 Triangle
Write a C# program that prompts for a symbol and a width, and displays a triangle of that width, using that number for the inner symbol, as in this ex...
 Password as string
Write a C# program to ask the user for their username and password (both should be strings) and repeat it as many times as necessary until the entered...
 Calculator - if
Write a C# program that asks the user for two numbers and an operation to perform on them (+,-,*,x,/) and displays the result of that operation, as in...
 Calculator - switch
Write a C# program that asks the user for two numbers and an operation to perform on them (+,-,*,x,/) and displays the result of that operation, as in...
 Double
Write a C# program that calculate the perimeter, area, and diagonal of a rectangle, given its width and height. (Hint: use y = Math.Sqrt(x) to calc...
 Calculate values of a function
Write a C# program in C# to display certain values of the function y = x^2 - 2x + 1 (using integer numbers for x, ranging from -10 to +10)...
 Display a function
Write a C# program to "draw" the graphic of the function y = (x-4)2 for integer values of x ranging -1 to 8. It will show as many asterisks on screen ...
 Float, speed units
Write a C# program to ask the user for a distance (in meters) and the time taken (as three numbers: hours, minutes, seconds), and display the speed, i...
 Sphere, float
Write a C# program that calculate the surface area and volume of a sphere, given its radius (surface area = 4 * pi * radius squared; volume = 4/3 * pi...
 Vowel - switch
Write a C# program to ask the user for a symbol and respond whether it is a vowel (in lowercase), a digit, or any other symbol, using "switch"....
 Vowel - if
Write a C# program to ask the user for a symbol and respond if it's a vowel (in lowercase), a digit, or any other symbol, using "if"....
 Triangle, NorthEast
Write a C# program which asks for a width, and displays a triangle like this one: Enter the desired width: 5 ***** _**** __*** ___** ____*...
 Prime factors
Write a C# program that displays a number (entered by the user) as a product of its prime factors. For example, 60 = 2 · 2 · 3 · 5 (Hint: it can be...
 If, symbols
Write a C# program to ask the user for a symbol and answer if is an uppercase vowel, a lowercase vowel, a digit or any other symbol, using "if"....
 Char + for
Write a C# program to write the letters "B" to "N" (uppercase), using "for"...
 Double, approximation of Pi
Write a C# program to calculate an approximation for PI using the expression: pi/4 = 1/1 - 1/3 + 1/5 -1/7 + 1/9 - 1/11 + 1/13 ... The user will ...
 Perimeter Area
Write a C# program to calculate the perimeter, area and diagonal of a rectangle from its width and height (perimeter = sum of the four sides, area = b...
 Hexadecimal and binary
Write a C# program to ask the user for a number an display it both in hexadecimal and binary. It must repeat until the user enters 0....
 Binary
Write a C# program that asks the user for a decimal number and displays its equivalent in binary form. It should be repeated until the user enters the...
 Conditional and boolean
Write a C# program that uses the conditional operator to give a boolean variable named "bothEven" the value "true" if two numbers entered by the user ...
 Exceptions V2
Write a C# program to ask the user for a real number and display its square root. Errors must be trapped using "try..catch". Does it behave as you ...