cmps280
CMPS290 Lab #3 Spring 2020
User String Manipulation
Due 3/18/2020 by 10:00 PM
In this lab we are going to explore strings and array a bit more. Our goal for the lab will be to have the
user input a string and then be able to make changes to the characters that are in the string until they
are ready to stop. This means that we will need to read in several pieces of data from the user, including
a string and multiple characters. You can set a maximum size for the user string, however, the specific
size of the string can change and you can’t ask them how long the string is (see the sample runs). In
order to work with characters, we need to remember that each ASCII character is stored using a single
byte. So, we will now add in the instructions load byte (lb) and store byte (sb) in order to manipulate
our character information.
Requirements:
• Name your file L03LastNameFirstName.asm.
• Use proper prompts and formatting so that someone who knows nothing about the program
can understand what it is doing based on the information you are giving them.
• While you can set how long the string can be at maximum, you can’t tell the user a specific
length that the string must be (e.g. Enter a string of length 10) and you can’t ask them how long
the string is.
• After you have their string, you will prompt them to see if they want to make any changes. If
they do, then read in the character that they want to change in the string and then the character
that they want to change it to.
o All characters of the same type in the string can be affected, not just a single one of
them. So, if they choose to change the spaces to dashes, all spaces are affected. (See
sample run 2)
• After each change print the current string out to them and ask if they want to make another
change.
• When they are finished making changes, print the final string and then exit the program
properly.
Hints:
• Our previous lab with strings and previous assignment with the array can be helpful resources.
• Reading in a character is a little different from reading in an integer. Experiment with it to see
what happens after you type in your character. They are very similar in usage though.
• Remember we can use the ASCII chart to help or use characters themselves as immediate
values.
• Remember that the last thing that we do when entering a string is to press enter (a new line) to
show that we are finished. This will be a very helpful piece of information to keep in mind.
Submission:
• Submit your assembly file to Moodle. You may leave it as a draft so that you can easily make
changes to your submission should you upload the wrong file, catch a mistake, etc. However,
remember that I can only see the time of the final upload, not every upload, so I can only use
the final submission time to go by. Double check that you have correctly uploaded the right file
before leaving. By either uploading a draft or submitting the assignment you are agreeing to the
academic honesty policy as noted in the syllabus. Remember the difference between working
together and sharing code.
Sample Runs:
(Note user input is bolded and underlined for ease of reading, it is not done in the program)
This program reads in a String from the user and then allows the user to make changes to it until they
want to stop.
Please enter your string now (maximum of 40 characters):
We can input a fairly long string.
Your current string is:
We can input a fairly long string.
Do you want to make any changes to the string? (Y/N): Y
Enter the character in the string would you like replaced: i
Enter what you would like to change the character to: 1
Your current string is:
We can 1nput a fa1rly long str1ng.
Do you want to make any changes to the string? (Y/N): Y
Enter the character in the string would you like replaced: a
Enter what you would like to change the character to: @
Your current string is:
We c@n 1nput @ f@1rly long str1ng.
Do you want to make any changes to the string? (Y/N): N
Your final string is:
We c@n 1nput @ f@1rly long str1ng.
— program is finished running –
This program reads in a String from the user and then allows the user to make changes to it until they
want to stop.
Please enter your string now (maximum of 40 characters):
A short one too.
Your current string is:
A short one too.
Do you want to make any changes to the string? (Y/N): Y
Enter the character in the string would you like replaced:
Enter what you would like to change the character to: –
Your current string is:
A-short-one-too.
Do you want to make any changes to the string? (Y/N): N
Your final string is:
A-short-one-too.
— program is finished running —
This program reads in a String from the user and then allows the user to make changes to it until they
want to stop.
Please enter your string now (maximum of 40 characters):
We could change nothing.
Your current string is:
We could change nothing.
Do you want to make any changes to the string? (Y/N): N
Your final string is:
We could change nothing.
— program is finished running —