Week 5: Lab

profileMr. Goodman
CIS170C_W5_Lab_Instructions.docx

( Student Lab Activity )devry-u-rgb_logo-small

CIS170C Week 5Lab Instructions

Lab 5 of 7: Strings and Pointers

Lab Overview - Scenario/Summary

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:

1. Be able to explain the need for strings

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

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

4. 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

a) Compile your program. Eliminate all syntax errors.

b) 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.

Step 5: Print Screen Shots and Program

1. Capture a screen print of your output. (Do a PRINT SCREEN and paste into an MS Word document.)

2. Copy your code and paste it into the same MS Word document that contains the screen print of your output.

3. Save the Word document as Lab05A_LastName_FirstInitial.

END OF LAB

Version 1.0 Page 1 of 9

4/9/2009 Lab Activity CIS CIS170B-A1.docx

Page 3 of 4

CIS170C Week 5 Lab Instructions