Once you receive a “Complete” on your algorithm you may code the program.
Once you code the program, turn in all previous work plus the cpp source code, both hard copy and electronically.
Do not forget to staple previous work to the back of the new work when handing anything in.
Assignment Algorithm needed first Code
1.Fax:
- Test Data: 5 pages / $4.00;
10 pages / 5.00; 22 pages / 6.20 Yes Fax.cpp
2.Reading a Data File
Needed File: Data.dat No Read.cpp
3.Course Assignment document
-Needed files for testing:
CourseData1 & CourseData2 Yes Course.cpp
4.ATM Algorithm
- Needed Files:
bal1.dat Bal2.dat Bal3.dat No ATM.cpp
5.Working with Switch Statement No Switch.cpp
6.Calculator Program Yes Calc.cpp
Fax.cpp
Do an algorithm (plan) and code
Suppose that the cost of sending an international fax is calculated as follows: Service charges $3.00; $.20 per page for the first 10 pages; and $0.10 for each additional page. Design an algorithm that asks the user to enter the number of pages to be faxed. The algorithm then uses the number of pages to be faxed to calculate the amount due.
Do initial planning, an algorithm and code. Type your algorithm as comments in your code. Hand in: Initial planning and Source code - hard copy
Hard copy of Source code
Submit on Blackboard: Source code
Reading a Data file
Given the data file: Data.dat
Name your program (source code) Read.cpp
View the file and write a program to read the information off of the file and print it on the screen. You will need to define identifiers and declare memory locations to hold the data as you pull it from the file. You will need to determine what data types would be appropriate. Print the information on the screen, each ‘piece’ of data on a new line.
Data.dat contents:
Foundations of Programming 19 231.43 A 54.2 CS 3.2 Joe Smith 26
The file contains the following information in the given order:
Course Name
Age
Wages for the week
Grade average
current bill
Major
GPA
Name
Current earned hours
Assignment: Course The department is offering a new course that is graded on a pass/fail basis. To pass, students must score at least an average of 70% on a series of 3 exams. Write a program that will read a file containing a person’s name followed by their 3 scores (all are worth 100 each). The program should output the person’s name and whether they passed or failed.
The program should use a getline statement to read the name. The program should ask the user the name of the file to open. Remember: streamVar .open( filename .c_str()); Also, check to see if the file opened (if it went into fail state) and exit the program if it did not.
Example file – CourseData1: Bill Anderson 84 89 74 Obviously should get a Pass
Example file – CourseData2: Sandy Thompson 67 72 60 Obviously should get a Fail
ATM.cpp (where implies your initials)
Suppose amountWithdrawn denotes the amount to be withdrawn, serviceCharge denotes the service charges, if any, and accountBalance denotes the total money in the account.
You can now write the algorithm as follows:
a. Read accountBalance from a file. The name of the file will be typed in by the user Multiple sample files are being provided to test the various paths
Get amountWithdrawn from user.
b. if amountWithdrawn > 500
Print "The maximum amount that can be drawn is $500"
otherwise (if accountBalance <= 0)
Print "Account balance is <= 0. You cannot withdraw any money. "
Otherwise
{
if (amountWithdrawn > accountBalance)
{
Print "Insufficient balance. If you withdraw, services charges
will be $25.00. Select Yes/No."
if (Yes)
{
if (amountWithdrawn > 300)
serviceCharge = (amountWithdrawn – 300) * 0.04;
otherwise
serviceCharge = 0;
accountBalance = accountBalance – amountWithdrawn
- serviceCharge – 25;
Print "Collect your money. " Print “Your remaining balance is $xxxx.xx”
}
}
otherwise
{
if (amountWithdrawn > 300)
serviceCharge = (amountWithdrawn – 300) * 0.04;
otherwise
serviceCharge = 0;
accountBalance = accountBalance – amountWithdrawn
- serviceCharge;
Print "Collect your money."
Print “Your remaining balance is $xxxx.xx”
}
Turn in your hardcopy and submit the electronic copy on Blackboard in the location provided.
Test Data:
File Name
User Input Amount to W/Draw
Balance on Account from file
Balance after transaction
Any
1000
“Cannot be withdrawn”
Same balance
Bal1.dat
Any
-32.12
“Insufficient Funds”
Same balance
Bal2.dat
345 & yes to $25 fee
212.13
Balance = -159.67
Bal2.dat
345 & no to $25 fee
212.13
“Insufficient Funds”
Same balance
Bal2.dat
250 & yes to $25 fee
212.13
Balance - -62.87
Bal2.dat
250 & no to $25 fee
212.13
“Insufficient Funds”
Same balance
Bal3.dat
450
1000.11
Balance = 544.11
Bal3.dat
200
1000.11
Balance = 800.11
Selection Structure Assignment
switch.cpp
Switch format switch(expression)
{
case x: statement(s) x;
break;
case x: statement(s) x;
break;
case x: (using the same statements as case below)
case x: statement(s) x;
break;
}
Read the given set of code to understand what they are attempting to do. Note the comments on the code and, on the appropriate lines, code the appropriate statement to complete the comment. (You may wish to print the code so that you can determine the correct placement of your new code.)
When finished with the program, compile and execute it.
Run the program multiple times with varying test data to fit the different paths to determine that you have the program correct. Debug as needed.
When finished with the program – print your .cpp code and submit on black
Calc.cpp (Calculator Program)
Using Case Structure
Plan and write an algorithm to create a program that simulates a simple calculator. The calculator will add (+), subtract (-), multiply (*), and divide (/). The user will be able to type in problems such as: 44.4 * 3 The 'calculator' will present the user with the answer. Be creative in your inputs and outputs
Once you have your program working, note the lines that you would need to copy if you were going to have the program give the user two attempts at the calculator. Place those lines (needing repeated) inside curly braces (to form a block or compound statement). Place the following line directly above the block: for (i = 1; i <= 5; i++) This will allow the body of the program to run 5 times without re-running it.
Hand in your source code and algorithm/planning Also submit calc.cpp electronically