CMIS 102 Hands-On Lab
Week 3
Overview
This hands-on lab allows you to follow and
experiment with the critical steps of developing a program including the
program description, analysis, test plan, design, pseudocode visualization, and
implementation with C code. The example provided uses mathematical operators
and variable types.
Program Description
This program will
calculate the area of a right triangle. The program will ask the user to enter
the base and height and then use these values to calculate and then print the
area of the triangle. The design step will include pseudocode.
Analysis
I will use sequential programming statements.
I will define two float numbers for the base and
height: base, height.
Float numbers were selected as opposed to
integers to make sure triangles of all dimensions are possible and not just
whole numbers.
Float number will store the area: area
The area will be
calculated by this formula: Area = ½ * (base * height)
For example if the base was 4.2 and the height was
5.3 the area would be calculated as: Area = ½ * (4.2 * 5.3) = ½ * (22.26) =
11.13
Test Plan
To verify this program is working properly the
following base and height values could be used for testing:
Test Case
Input
Expected Output
1
Base=10.1 Height = 12.2
Area = 61.61
2
Base=2.67 Height = 3.23
Area = 4.31
3
Base=100.0 Height = 400.0
Area =20000.0
1
Pseudocode
//
This program will
calculate the area of a right triangle.
//
Declare variables
Declare base, height, area as Float
// Ask User for Inputs
Write âEnter triangle base:â
Input base
Write âEnter triangle height:â
Input height
//
Set value of area
Set area=1/2*(base * height) // Print area
Print
âArea of triangle is â + area
C Code
The following is the C Code that will compile in
execute in the online compilers.
//
C code
//
This program will calculate the area
of a right triangle.
//
Developer: Faculty
CMIS102
//
Date: Jan 31, XXXX
#include
int
main ()
{
/* variable definition: */ float base, height, area; /* Prompt
user for base */
printf(“Enter
the base of the triangle: n”);
// Input the base scanf(“%f”, &base);
/* Prompt user for height */
printf(“Enter the
height of the triangle: n”);
//
Input the base
scanf(“%f”, &height); // Calculate the Area
area= 0.5 * (base * height); // Print the result
printf(“Area is : %fn”, area); return 0;
}
2
Setting up the code
and the input parameters in ideone.com:
Note the base and height (10.1 and 12.2) are entered
in the enter input (stdin) field. You can change these values to any valid
float values to match your test cases.
.jpg”>
3
Learning Exercises
for you to complete
Change the C code to calculate the
perimeter of a triangle. Support your experimentation with a screen
capture of executing the new code
Prepare a new test table with at
least 3 distinct test cases listing input and expected output for the
perimeter of a triangle.
What is this line of code doing?scanf(“%f”, &height);
How would you
change this line if you wanted to input an Integer as opposed to a float?
What are the values of f and g after
executing the following C?
#include
int main(void) { int i,j;
float f,g;
i = 5; j = 2; f = 3.0;
f = f + j / i; g = (f + j )/i;
printf(“value of f,g is
%f,%fn”, f,g); return 0;
}
Describe specifically, and in your own words, why
are the values of f and g different? Support your experimentation with a screen
capture of executing the code.
Submission
Submit a neatly organized word (or PDF) document
that demonstrates you successfully executed this lab on your machine using an
online compiler. You should provide a screen capture of the resulting output.
Also, provide the answers, associated screen
captures, C Code and descriptions of your successful completion of learning
exercises 1, 2, 3 and 4.
The answers to the learning exercises, screen
captures, C code and descriptions can be included in the same neatly organized
document you prepared as you ran this lab. Note the code can be embedded in the
word document. However; be sure all code compiles and runs perfectly before
submitting the document.
Submit your document no later than the due date
listed in the syllabus or calendar.
4
Grading guidelines
Submission
Points
Successfully demonstrates execution of this lab
with online
3
compiler. Includes a screen capture.
Provides a new test table with at least 3 distinct
test cases
2
listing input and expected output for the
perimeter of a
triangle.
Accurately describes the purpose of the scanf
code.
2
Accurately describes how to modify the code to
input an
integer as opposed to a float.
Accurately describe why are the values of f and
g different for
2
the provided code? Supports your
experimentation with
screen captures of executing the code.
Document is well-organized, and contains
minimal spelling
1
and grammatical errors.
Total
10
5