Question & Answer: The password should contain at least one uppercase and one lowercase letter…..

You will code, build, and execute a program requiring strings and pointers

You are developing a software package that requires users to enter their own passwords. The passwords must meet the software criteria:

The password should be at least 6 characters long

The password should contain at least one uppercase and one lowercase letter

The password should have at least one digit

Learning outcomes:

Be able to explain the need for strings

Be able to explain the way memory is allocated for arrays in a program.

Be able to explain the fact that arrays are objects in C++.

Be able to write a program that implements strings.

Deliverales

Section Deliverable Points
Lab 5 Step 5: Program Listing and Output 30
All Steps Total 30

Lab Steps

Preparation:

If you are using the Citrix remote lab, follow the login instructions located on the iLab tab in Course Home.

Locate the Visual Studio icon and launch the application.

Step 1: Requirements
You are developing a software package that requires users to enter their own passwords. Loop until the passwords meet the software criteria:

The password should be at least 6 characters long

The password should contain at least one uppercase and one lowercase letter

The password should have at least one digit

The program should have an isValid function that will test if the password is valid. Use the following code to declare a password variable with a global constant int SIZE=80;

char password[SIZE];

Next use a while(true) to continue looping until the user enters a valid password. Read in the password and call the isValid program. You can use the isupper(), islower(), and isdigit() functions. For example:

if (isdigit(*password))

//if this is true, you know the password has at least one digit.

Output from Program:

Password requirements:

– The password should be at least 6 characters long

– The password should contain at least one uppercase

– and one lowercase letter.

– The password should have at least one digit.

Enter a password: aaaaaaa

The password was invalid

Password requirements:

– The password should be at least 6 characters long

– The password should contain at least one uppercase

– and one lowercase letter.

– The password should have at least one digit.

Enter a password: aBcdEfg

The password was invalid

Password requirements:

– The password should be at least 6 characters long

– The password should contain at least one uppercase

– and one lowercase letter.

– The password should have at least one digit.

Enter a password: abc123D

The password is valid

Step 2: Processing Logic
Using the pseudocode below, write the code that will meet the requirements.

Declare constants SIZE and MIN

Function prototype for isValid

Main Function

 

Declare the password as a character array.

While true

Display the password requirements

Get password from user

Call the isValid function

Display results of isValid function

isValid function

Declare Boolean variables

Use strlen command to determine the length of the password and if it is greater than MIN, set bool value to true

Loop

Test if password has a lowercase letter

Test if password has an upperecase letter

Test if password has a digit

Go to next character (ie *password++;)

End loop

If all boolean values are true, return 1, else return 0

Step 3: Create a New Project
Create a new project and name it LAB5. Write your code using the Processing Logic in Step 2. Make sure you save your program.
Step 4: Compile and Execute
Compile your program. Eliminate all syntax errors.

Build your program and verify the results of the program. Make corrections to the program logic if necessary until the results of the program execution are what you expect.

its a C++ 170 program.

Expert Answer

 

#include<iostream>

using namespace std;

const int SIZE = 80;

const int MIN = 6;

bool isValid(char[]);//declaration of function and passing char array

void main()

{

char *password;//dynamically allocating an array

int length;//to store the string length

password = new char[SIZE];

while (true)

{

cout << “Password requirements:”<<

“n- The password should be at least 6 characters long”<<

“n- The password should contain at least one uppercase”<<

“n- and one lowercase letter.”<<

“n- The password should have at least one digit.n”;

cout << “Enter a password : “;

cin >> password;

length = strlen(password);

if (length > MIN)

{

if (isValid(password))

{

cout << “password is valid ” << endl;

break;

}

}

else

{

cout << “Password is not Valid ” << endl;

continue;

}

}

delete[] password;//free allocated memory

}

bool isValid(char pass[])

{

bool aUpper = false,aLower = false, aDigit = false;

for (int i = 0; pass[i]; ++i)

if (isupper(pass[i]))

aUpper = true;

else if (islower(pass[i]))

aLower = true;

else if (isdigit(pass[i]))

aDigit = true;

if (aUpper && aLower && aDigit)

return true;

else

return false;

}

//output

Still stressed from student homework?
Get quality assistance from academic writers!