Order For Similar Custom Papers & Assignment Help Services

Fill the order form details - writing instructions guides, and get your paper done.

Posted: March 2nd, 2023

Cmis 102 hands-on lab week 5

 

CMIS 102 Hands-On Lab

// Week 5

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 (using pseudocode visualization), and implementation with C code.  The example provided uses sequential, repetition statements and nested repetition statements.

Program Description:

This program will calculate the average of 3 exams for 5 students. The program will ask the user to enter 5 student names. For each of the students, the program will ask for 3 exam scores.  The average exam score for each student will be calculated and printed.

Analysis:

I will use sequential and repetition programming statements.
I will define one String to store student name: StudentName.
I will define three Float numbers: Examvalue, Sum, Avg to store exam values the sum of the exams and the average of the exams.
The sum will be calculated by this formula:
 Sum = Sum + Examvalue
For example, if the first value entered was 80.0 and second was 90.0 and the third exam was 100.0:
sum = sum + Examvalue = 0.0 + 80.0
sum = 80.0 + 90.0 = 170.0
sum = 170.0 + 100.0 = 270.0
Avg is then calculated as:
Avg = sum/3.0
For example 270.0/3.0 = 90.0
A nested repetition loop can be used to loop through each of the 5 students and each of the 3 exams:
For (students=0; students <5; students++)
    For (exams=0;exams<3;exams++)
   End For
End For
Sum values will need to be reset for each student to ensure only one student data is used for calculations each time.
 

Test Plan:

To verify this program is working properly the input values could be used for testing:

Test Case

Input

Expected Output

1

Studentname=Chris
Examvalue1=80.0
Examvalue2=90.0
Examvalue3=100.0
Studentname=John
Examvalue1=70.0
Examvalue2=90.0
Examvalue3=80.0
Studentname=Sally
Examvalue1=100.0
Examvalue2=100.0
Examvalue3=100.0
Studentname=Pat
Examvalue1=50.0
Eexamvalue2=70.0
Examvalue3=60.0

Studentname=Sam
Examvalue1=90.0
Examvalue2=95.0
Examvalue3=100.0
 

Average for Chris is 90.0
Average for John is 80.0
Average for Sally is 100.0

Average for Pat is 60.0
Average for Sam is 95.0

Pseudocode:

// This program will calculate the average of 3 exams for 5 students

// Declare variables
Declare StudentName as String
Declare ExamValue, Sum, Avg as Float

// Loop through 5 Students
For (students=0; students <5 ; students++)
   // reset Sum to 0
  Set Sum =0.0 
   Print “Enter Student Name”
   Input StudentName
   // Nested Loop for Exams
  For (exams=0; exams < 3; exams++)
      Print “Enter exam grade: n”
      Input ExamValue
      Set Sum = Sum + ExamValue
   End For
    Set Avg = Sum/3.0
   Print “Average for “ + StudentName + “ is “ + Avg
 End For
 

Flow Chart:

C Code

The following is the C Code that will compile in execute in the online compilers.

// C code

// This program will calculate the average of 3 exams for 5 students.

// Developer: Faculty CMIS102

// Date: Jan 31, 2014: 2024 – Essay Writing Service | Write My Essay For Me Without Delay

#include <stdio.h>

int main ()

{

  /* variable definition: */

  char StudentName[100];

  float ExamValue, Sum, Avg;

  int students,exams;

   // Loop through 5 Students

  for (students=0; students <5 ; students++)

  {

     // reset Sum to 0

     Sum =0.0; 

     printf(“Enter Student Name n”);

     scanf(“%s”, StudentName);  

     // Nested Loop for Exams

    for (exams=0; exams < 3; exams++)

    {

        printf (“Enter exam grade: n”);

        scanf(“%f”, &ExamValue);

        Sum = Sum + ExamValue;

    }  

    Avg = Sum/3.0;

    printf( “Average for %s is %fn”,StudentName,Avg);

  }

  return 0;

}

Setting up the code and the input parameters in ideone.com:

Note the Student and ExamValues for this run were:
John: 90.0 80.0 100.0
Jim: 80.0 70.0 90.0
Joe: 70.0 100.0 100.0
Sally: 100.0 95.0 91.0
Sam: 30.0 54.0 68.0
You can change these values to any valid integer values to match your test cases.

Results from running the programming at ideone.com:

Learning Exercises for you to try:

  1. What would you change in the design and the code if you wanted to input 10 students and 5 exams?
  2. What is the line of code doing?

      char StudentName[100];

(Hint: We haven’t covered arrays, but a String can be thought of as an array of characters) ?

  1. What would happen if you moved the Set Sum = 0.0 from inside the for loop to right after the declaration. For example:

// Declare variables
Declare StudentName as String
Declare ExamValue, Sum, Avg as Float

// Initialize Sum
Set Sum = 0.0;

Order | Check Discount

Paper Writing Help For You!

Special Offer! Get 20-25% Off On your Order!

Why choose us

You Want Quality and That’s What We Deliver

Professional Writers

We assemble our team by selectively choosing highly skilled writers, each boasting specialized knowledge in specific subject areas and a robust background in academic writing

Discounted Prices

Our service is committed to delivering the finest writers at the most competitive rates, ensuring that affordability is balanced with uncompromising quality. Our pricing strategy is designed to be both fair and reasonable, standing out favorably against other writing services in the market.

AI & Plagiarism-Free

Rest assured, you'll never receive a product tainted by plagiarism or AI-generated content. Each paper is research-written by human writers, followed by a rigorous scanning process of the final draft before it's delivered to you, ensuring the content is entirely original and maintaining our unwavering commitment to providing plagiarism-free work.

How it works

When you decide to place an order with Nurscola, here is what happens:

Complete the Order Form

You will complete our order form, filling in all of the fields and giving us as much detail as possible.

Assignment of Writer

We analyze your order and match it with a writer who has the unique qualifications to complete it, and he begins from scratch.

Order in Production and Delivered

You and your writer communicate directly during the process, and, once you receive the final draft, you either approve it or ask for revisions.

Giving us Feedback (and other options)

We want to know how your experience went. You can read other clients’ testimonials too. And among many options, you can choose a favorite writer.