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