Anda di halaman 1dari 7

COMP 122 Lab 5 Lab

Report and Source Code

Purchase here

Product Description

COMP 122 Lab 5

Lab Report and
Source Code
Apply structured and modular design principles to write prog
rams that meet written specifications
and requirements. Develop a pseudo-code design using app
ropriate program structure
(sequence, selection, repetition and nesting)
to solve a given programming problem. Use appropriate sel
ection and repetition statements
to implement the design. Create user-defined functions to im
plement a modular design. Use appropriate
parameter passing mechanisms for passing data into and g
etting data back from functions. Use ostream
and iomanip formatting manipulators to display tabulated dat
a. Design and implement a menu-driven interface.
Problem Description
This program is to give the user the option of converting a s
et of temperatures either from Celsius to
Fahrenheit (C to F) or vice versa, from Fahrenheit to Celsius
(F to C), or to quit the program. If the
user selects either C to F or F to C, the program will prompt
the user to enter three integer values,
a starting temperature, an ending temperature, and an incre
ment. After these values have been
entered the program will display a table of equivalent C and
F (or F and C) temperatures,
from the starting temperature to the ending temperature and
incrementing by the
increment value each row.
The table must meet all of the following criteria:
The tables column headings should display the degree sym
bol, e.g., C and F.
The first column must be the from temperature (C for C to
F or F for F to C)
and the second column the to temperature (F for C to F or
C for F to C).
The calculated to temperatures are to be displayed to the
nearest tenth of a degree
(display exactly one decimal place, even if there is no fractio
nal part, i.e., 75 should display as 75.0).
Temperatures in both columns must be number-aligned (righ
t-justified for the integer from values and decimal point alig
ned right for the to values).
Assume the user enters correct data, e.g., the start temperat
ure, end temperature and
increment are all integers and the ending temperature is gre
ater than the starting temperature.
The formula to convert Celsius to Fahrenheit is
The formula to convert Fahrenheit to Celsius is
Function Requirements
You must create and use the following functions:
displayMenu( ) displays a menu. getMenuSelection ( ) gets t
he menu selection from the user,
upper or lower case C for Celsius to Fahrenheit, upper or lo
wer case F for Fahrenheit to Celsius,
and upper or lower case Q to quit. Any other input should g
et an error message Invalid selection:
try again and re-prompt for the menu selection. getStartEnd
AndIncrement( ) gets the start, end and increment
values for the table from the user. CtoF( ) converts a Celsius
temperature to Fahrenheit.
FtoC( )converts a Fahrenheit temperatures to Celsius. displ
ayTable( ) displays a C to F or F to C
table given start, end and increment values and the conversi
on character the user selected.
Additional Requirements
Absolutely NO GLOBAL VARIABLES can be used to imple
ment this program! Any program using
global variables will NOT be accepted! Use a switch statem
ent to respond to the users menu
selection in the getMenuSelection function. After the user se
lects a valid temperature
table option, ask the user to enter start, end, and increment
values, then display the table and stop until
the user presses the ENTER key to continue (prompt the us
er, of course). When the user presses ENTER
to continue the menu should be redisplayed, allowing the us
er to make another menu selection
(either to display another temperature conversion table or q
uit). Make sure that your code is properly
formatted (indentation, etc) and that you have provided suita
ble documentation of all your functions
(comment blocks for program and functions!).
How to print the degree symbol
It is easy enough to find out how to do this by searching the
web. The short answer is:
cout< (char)248;=>
Test Plan
Test cases are generally selected by analyzing the program
and determining categories of inputs
and outputs, then specifying at least one specific input value
(or set of input values) for each category.
Inputs for this program include the selection, or menu input
, and integer values to generate a table
(start temperature, stop temperature and increment value).
Here is an outline of the categories:
Menu test cases should include all possible valid menu sele
ctions and at least one invalid menu
selection. Table test cases should include
2.1. Inputs that create tables with various numbers of rows
2.2. At least one temperature that calculates to an exact wh
ole number of degrees (e.g., 0 degrees degrees F).
2.3. Negative starting and ending temperatures.
2.4. At least one temperature that calculates to a fractional n
umber of degrees (e.g., -50 degrees degrees C).
2.5. Some common, easy to verify conversions, for example
2.5.1. 0 degrees degrees F (and vice versa)
2.5.2. 100 degrees degrees F (and vice versa)
2.5.3. -40, the only temperature that is the same in both.
Given these categories, use the table on the next page to re
cord the specific input values you will
use for your test plan. Note that you must predict and docu
ment what the output will be for each of
your test cases, including the calculated values for each row
of the temperature tables produced.
Test your program using your selected test cases and recor
d the actual observed output from your
test cases by pasting screen shots into your report documen
t. Make sure everything works
correctly before submitting.