Hey guys,
I am really struggling to understand how to use a array to store a value from a class and then sort it. I have only used classes once and pretty much got hand held through the whole thing, so I have a limited understanding of it. This is my problem, and below it is what I have so far (it's probably wrong).
Thanks,
Tucker
2. Sorting Youngest to Oldest
Implement a class Person with the following data members:
• name (string) - name of this person
• age (integer) – age of this person
Write a program that reads in a list of names and ages and stores them in a one-dimensional array of Person objects. The maximum number of names that will be entered is 100 names. After reading in the list of names and ages, sort the list of people from the youngest (lowest age) to oldest (highest age). Then print out the name and age for each person in the sorted list.
Sample Output (user input is bold) :
Enter name (-1 to stop): Bart
Enter age of Bart: 10
Enter name (-1 to stop): Lisa
Enter age of Lisa: 8
Enter name (-1 to stop): Maggie
Enter age of Maggie: 1
Enter name (-1 to stop): Homer
Enter age of Homer: 36
Enter name (-1 to stop): Marge
Enter age of Marge: 34
Enter name (-1 to stop): -1
Name: Maggie, age: 1
Name: Lisa, age: 8
Name: Bart, age: 10
Name: Marge, age: 34
Name: Homer, age: 36
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
#include <iostream>
#include <string>
using namespace std;
class Person
{
private:
// Person private data members
string name;
int age;
public:
Person(string fName, int years)
{
name = fName
if (years <0)
{
years = 0;
}
age = years;
}
int main()
{
const int ARRAY_MAX = 100;
int name = 0;
int age = 0;
int people[ARRAY_MAX];
for (int i = 0, int i <100, i++)
{
while (Person.name != -1)
{
cout << "Enter name (-1 to stop): ";
cin >> name;
cout << "Enter age: ";
cin >>age;
|