/* Name: ** Practical Exam 1 ** CS 281 - Intermediate C++ ** Spring 2017 ** Inst
ID: 3863876 • Letter: #
Question
/* Name:
** Practical Exam 1
** CS 281 - Intermediate C++
** Spring 2017
** Instructor:
**
** There are logical and run time errors in the code, as well as compilation errors.
** Your objective is get the code to run, fix any bugs in the code and
** place validation needed to prevent any memory issues. Each function has a
** description of what it does next to its prototype.
*/
#include
using namespace std;
void addToList(int *); // adds integer to integer array
void displayList(int *);//displays all items in array
void dispSum(); //gives sum of all elements in array
void dispAverage(); //gives average of elements in array.
unsigned short SIZE = 0;
int main()
{
unsigned int input;
int arrayList[10];
do
{
cout << "***Main Menu***" << endl
<< "1. add number to list" << endl
<< "2. display list." << endl
<< "3. display sum." << endl
<< "4. display average." << endl
<< "0. Quit" << endl;
//clears iostream buffer
cin.clear();
cin.ignore(10, ' ');
cout << "enter a menu choice: ";
cin >> input;
switch (input)
{
case 1: addToList(arrayList);
case 2: displayList(arrayList);
case 3: dispSum();
case 4: dispAverage();
case 0:break;
default:cout << "enter a valid choice from menu:";
}
} while (input != 0);
return 0;
}
void addToList(int *arrayList)
{
int input;
cout << "enter a number int the array: ";
cin >> input;
arrayList[SIZE++] = input;
}
void displayList(int *arrayList)
{
for (int i = 0; i <= SIZE; ++i)
cout << arrayList[SIZE];
cout << endl;
}
void dispSum(int *arrayList)
{
int sum = 0;
for (int i = 0; i <= SIZE; ++i)
sum += arrayList[i];
cout << "The Sum is " << sum << "!" << endl;
}
Explanation / Answer
#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h> //header file not included
using namespace std;
void addToList(int *); // adds integer to integer array
void displayList(int *);//displays all items in array
void dispSum(int *); //gives sum of all elements in array
void dispAvg(int *); //gives average of elements in array.
unsigned short SIZE = 0;
void update(int); //update the value of SIZE ever time it is called
int main()
{
unsigned int input;
int arrayList[10];
do
{
cout << "***Main Menu***" << endl
<< "1. add number to list" << endl
<< "2. display list." << endl
<< "3. display sum." << endl
<< "4. display average." << endl
<< "0. Quit" << endl;
//clears iostream buffer
cin.clear();
cin.ignore(10, ' ');
cout << "enter a menu choice: ";
cin >> input;
switch (input)
{
case 1: addToList(arrayList);
break;
case 2: displayList(arrayList);
break;
case 3: dispSum(arrayList);
break;
case 4: dispAvg(arrayList);
break;
case 0: break;
default:cout << "enter a valid choice from menu:";
}
} while (input != 0);
return 0;
}
void update(int s)
{
s=s+1;
}
void addToList(int *arrayList)
{
int input;
cout << "enter a number int the array: ";
cin >> input;
arrayList[SIZE++] = input;
update(SIZE);
}
void displayList(int *arrayList)
{
for (int i = 0; i < SIZE; ++i)
cout << arrayList[i];
cout << endl;
}
void dispSum(int *arrayList)
{
int sum = 0;
for (int i = 0; i < SIZE; ++i)
sum += arrayList[i];
cout << "The Sum is " << sum << "!" << endl;
}
void dispAvg(int *arrayList)
{
int avg,sum=0;
for (int i = 1; i <= SIZE; ++i)
{
sum += arrayList[i-1];
}
avg=sum/SIZE;
cout<<"the avg is: "<<avg;
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.