NumberList
C++ NumberList program based on the files i’ve shared at the bottom.
NumberList.cpp
************************************************************************************************
#include “NumberList.h”
#include <iostream>
using namespace std;
NumberList::NumberList()
{
length = 10;
int i;
for(i = 0; i < length; i++)
Numbers[i] = 0;
}
//outputs the numbers in the NumberList horizontally each separated by a comma
//to the standard output screen
NumberList::NumberList(int l, double n)
{
int i;
for(i = o < length-1; i++)
cout << Numbers[i] << “, “;
cout << Numbers[i];
}
//assignment constructor, initializes length to l
//and sets the first l values of the list to the value n
NumberList::NumberList(int l, const double a[])
{
length = i;
int i;
for(i = 0; i < length; i++)
Numbers[i] = n;
}
NumberList::NumberList(const NumberList & nl)
{
}
/*
void NumberList::print()
{
}
int NumberList::getLength()
{
}
double NumberList::sum()
{
}
double NumberList::ave()
{
}
double NumberList::max()
{
}
double NumberList::min()
{
}
bool NumberList::isIn(double n)
{
}
bool NumberList::push(double value)
{
}
bool NumberList::pop()
{
}
void NumberList::read(istream & inStream)
{
if(&inStream == &cin)
{
}
else
{
//file structure: first line contains the number of numbers in the list
//remaining lines contain the numbers each separated by a whitespace
}
}
bool NumberList::insert(double number, int position)
{
}
//SELECTION SORT algorithm
void NumberList::sort(char type)
{
}
bool NumberList::operator==(const NumberList& rhs)
{
}
NumberList& NumberList::operator=(const NumberList& rhs)
{
//avoid self-assignment, only do assignment if RHS is a different object from this
if(this != &rhs)
{
}
return *this;
}
NumberList& NumberList::operator+=(const double& number)
{
if(length == 100)
cout << “Unable to perform +=, list is filled to capacityn”;
else
{
}
return *this;
}
NumberList& NumberList::operator+=(const NumberList& rhs)
{
if(length == 100)
cout << “Unable to perform +=, list is filled to capacityn”;
else if(length + rhs.length > 100)
cout << “Unable to perform +=, list would be over capacityn”;
else
{
}
return *this;
}
//**************************************
//FOR 10% EXTRA CREDIT ON THIS PROJECT GRADE, OVERLOAD THE FOLLOWING OPERATORS
//AS NON-MEMBER FUNCTIONS
ostream& operator<<(ostream& out, const NumberList& nl)
{
}
const NumberList operator+(NumberList& lhs, const double& number)
{
}
const NumberList operator+(NumberList& lhs, const NumberList& rhs)
{
}
*/
************************************************************************************************************************
NumberList.h
*************************************************************************************************************************
#ifndef NUMBERLIST_H_
#define NUMBERLIST_H_
#include <iostream>
using namespace std;
//integer constant that determines the size (max capacity) of the array
const int MAX_CAPACITY = 100;
//This class will be used to store an ordered list of real numbers. The size of the list is
//determined by the integer constant MAX_CAPACITY, for this project it will be set to 100
class NumberList
{
private:
//the number of valid numbers currently in the NumberList stored in sequential
//position order.
int length;
//static array used to store the numbers
double numbers[MAX_CAPACITY];
public:
//default constructor, initializes all values of the list to 0
//and sets length to 10
NumberList();
//assignment constructor, initializes length to l
//and sets the first l values of the list to the value n
NumberList(int l, double n);
//constructor that takes an array of size l as input and assigns the first
//l values of the NumberList to the corresponding l values of the input array a
NumberList(int l, const double a[]);
//copy constructor, creates a copy of input NumberList nl to the calling
//NumberList
NumberList(const NumberList& nl);
//outputs the numbers in the NumberList horizontally each separated by a comma
//to the standard output screen
void print();
int getLength(); //returns the length of the NumberList
double sum();//returns the sum of the numbers in the NumberList
double ave();//returns the average value of the numbers in the NumberList
double max();//returns the largest number in the NumberList
double min();//returns the smallest number in the NumberList
//Uses a sequential/linear search algorithm to determine if a number is in the
//list. Returns true if number n is in list, otherwise returns false
bool isIn(double n);
//stores a value at the end of the NumberList, returns true if successful,
//otherwise returns false (THE NUMBERLIST IS FILLED TO CAPACITY)
bool push(double value);
//removes last element in the NumberList, returns
//true if successful otherwise returns false (THE NUMBERLIST IS EMPTY)
bool pop();
//reads numbers from an input stream. If a file stream is used then
//the file structure is as follows: first line contains the number of numbers in
//the list remaining lines contains a maximum of 10 numbers each separated by a
//whitespace
void read(istream & inStream);
//inserts a number in an ordinal position and shifts each number to the right of
//the ordinal position by one. Returns true if successful, otherwise
//if THE NUMBERLIST IS FILLED TO CAPACITY returns false. EXAMPLE: If the list
//contains the values < 2, 7, -9, 11 > after the call N.insert(8, 2) is made, the
//list will then be < 2, 8, 7, -9, 11 >. If position is greater than the current
//length of the list, then the insert will occur at the end. EXAMPLE: If the list
//contains the values < 2, 7, -9, 11 > after the call N.insert(8, 13) is made, the
//list will then be < 2, 7, -9, 11, 8 >.
bool insert(double number, int position);
//sorts the numbers in the list using the SELECTION SORT algorithm.
//Type is either ‘A’,’a’ for ascending, or ‘D’,’d’ for descending
void sort(char type);
/********OVERLOADED OPERATORS**********/
//determines if two number lists are identical
//identical implies the same numbers in the same positions
bool operator==(const NumberList& list);
//assign one NumberList to another NumberList
NumberList& operator=(const NumberList& rhs);
//add a number to the end of a NumberList using the compound addition operator
NumberList& operator+=(const double& number);
//add two Numberlists using the compound addition operator
NumberList& operator+=(const NumberList& rhs);
/******************************************************************************/
//FOR 10% EXTRA CREDIT ON THIS PROJECT GRADE, OVERLOAD THE FOLLOWING OPERATORS
//AS NON-MEMBER FUNCTIONS
//(1) << (insertion)
friend ostream& operator<<(ostream&, const NumberList&);
//(2) + (addition) that adds one element to the end of a list
friend const NumberList operator+(NumberList& lhs, const double& number);
//(3) + (addition) that adds two lists (LIST CONCATENATION)
friend const NumberList operator+(NumberList& lhs, const NumberList& rhs);
//HINT: to overload both addition operators as stated above, use the overloaded
//functions += that presumably, you have already implemented
/******************************************************************************/
};
#endif /* NUMBERLIST_H_ */
************************************************************************************************************************************
testNL.cpp
************************************************************************************************************************************
#include “NumberList.h”
#include <iostream>
#include <cctype>
using namespace std;
int main()
{
}
"You need a similar assignment done from scratch? Our qualified writers will help you with a guaranteed AI-free & plagiarism-free A+ quality paper, Confidentiality, Timely delivery & Livechat/phone Support.
Discount Code: CIPD30
Click ORDER NOW..


