1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
natulia [17]
4 years ago
6

Date Class Constructor – assigns fields to appropriate formal parameter – using the setters so error checking will occur. The co

nstructor with no formal parameters should have no statements in the body of the function. Accessors – return the appropriate fields Setters setMonth – assigns the field to the formal parameter. Error checks the formal parameter to make sure it is a valid month number. If it isn’t a valid month, it sets the month to 1. setDay – assigns the field to the formal parameter. Error checks to make sure the day being passed in is a valid day for the month the object has (ex: January can only be 1-31). You do NOT have to check for leap year – just make sure February is 1-29. If the day is invalid, it sets the day to be 1 setYear – assigns the field to the formal parameter. Error checks the formal parameter to make sure it is not negative. If it is it sets the year to be 1900. toString – creates a string in the format M/D/Y and returns it. The following allows you to concatenate a string with an integer. Use this information to create and return the string in the format M/D/Y. string ans = to_string(month) + "/"; Date -day: int -month: int -year: int +Date() +Date(month:int, day:int, year:int) +getMonth(): int +getDay(): int +getYear():int +setMonth(month:int):void +setDay(day:int) :void +setYear(year:int) :void +toString():string

Computers and Technology
1 answer:
lara31 [8.8K]4 years ago
4 0

Answer:

Check the explanation

Explanation:

#include <iostream>

#include <fstream>

#include <string>

#include <iomanip>

#include "Date.h"

#include "Person.h"

using namespace std;

const int MAXSIZE = 50;

// Prototypes go here

int loadArray(string fileName, Person students[]);

void sortByName(Person students[], int numE);

void printStudentReport(Person students[], int numE);

int main()

{

Person students[MAXSIZE];

int numE;

string fileName;

cout << "Enter the file name: ";

cin >> fileName;

numE = loadArray(fileName, students);

cout << endl;

cout << "Before Sort: " << endl;

printStudentReport(students, numE);

sortByName(students, numE);

cout << endl;

cout << "After Sort: " << endl;

printStudentReport(students, numE);

return 0;

}

int loadArray(string fileName, Person students[]){

ifstream in;

in.open(fileName.c_str());

if(in.fail())

return -1;

int n=0;

string fname, lname;

int month, day, year;

while(!in.eof()){

in>>fname>>lname>>month>>day>>year;

students[n] = Person(fname, lname, Date(month, day, year));

n++;

}

return n;

}

void sortByName(Person students[], int numE){

for(int i=0; i<numE; i++){

for(int j=i+1; j<numE; j++){

if(students[i].getLastName()>students[j].getLastName()){

Person temp = students[i];

students[i] = students[j];

students[j] = temp;

}

}

}

}

void printStudentReport(Person students[], int numE){

for(int i=0; i<numE; i++){

cout<<students[i].getLastName()<<", "<<students[i].getFirstName()<<"\t\t"<<students[i].getDateofBirth().toString()<<endl;

}

}

Person.h

#include<iostream>

#include<string>

using namespace std;

#include "Date.h"

#ifndef PERSON_H

#define PERSON_H

class Person{

private:

string firstName;

string lastName;

public:

Date dateOfBirth;

Person();

Person(string firstName, string lastName, Date dob);

string getFirstName();

string getLastName();

Date getDateofBirth();

void setFirstName(string fname);

void setLastName(string lname);

void setDateOfBirth(Date dob);

void setDateOfBirth(int month, int day, int year);

};

#endif

Person.cpp

#include "Person.h"

Person::Person(){

firstName = "";

lastName = "";

}

Person::Person(string firstName, string lastName, Date dob){

this->firstName = firstName;

this->lastName = lastName;

setDateOfBirth(dob.getMonth(), dob.getDay(), dob.getYear());

}

string Person::getFirstName(){

return firstName;

}

string Person::getLastName(){

return lastName;

}

Date Person::getDateofBirth(){

return dateOfBirth;

}

void Person::setFirstName(string fname){

firstName = fname;

}

void Person::setLastName(string lname){

lastName = lname;

}

void Person::setDateOfBirth(Date dob){

setDateOfBirth(dob.getMonth(), dob.getDay(), dob.getYear());

}

void Person::setDateOfBirth(int month, int day, int year){

dateOfBirth.setMonth(month);

dateOfBirth.setDay(day);

dateOfBirth.setYear(year);

}

Date.h

#include<iostream>

#include<string>

using namespace std;

#ifndef DATE_H

#define DATE_H

class Date{

private:

int day;

int month;

int year;

public:

Date();

Date(int month, int day, int year);

int getMonth();

int getDay();

int getYear();

void setMonth(int month);

void setDay(int day);

void setYear(int year);

string toString();

};

#endif

Date.cpp

#include "Date.h"

Date::Date(){

month = 1;

day = 1;

year = 1900;

}

Date::Date(int month, int day, int year){

this->month = month;

this->day = day;

this->year = year;

}

int Date::getMonth(){

return month;

}

int Date::getDay(){

return day;

}

int Date::getYear(){

return year;

}

void Date::setMonth(int month){

this->month = month;

}

void Date::setDay(int day){

this->day = day;

}

void Date::setYear(int year){

this->year = year;

}

string Date::toString(){

string ans = to_string(month)+"/";

ans += to_string(day)+"/";

ans += to_string(year);

return ans;

}

Kindly check the code output below.

You might be interested in
Riser cards on some proprietary systems plug into a unique socket or slot on the motherboard. These are also called________
inysia [295]

Answer: Daughter board

Explanation:

A daughter board is refers to the circuit board and it is basically connected to the motherboard directly without any interruption.

It is also known as a daughter card which plugs and then extended the circuitry by connecting with the another circuit board. A mezzanine card and the riser card are the examples of the daughter board that used in the system.

According to the question, the riser card basically plus into the unique socket or the slot in the board and this is known as the daughter board.

Therefore, Daughter board is the correct answer.          

8 0
3 years ago
What are the events?
erastovalidia [21]

Answer:

a thing that happens or takes place, especially one of importance.

8 0
3 years ago
My computer screen keeps flashing black, it's on a very low brightness level and I very rarely put it up to high level unless I
mihalych1998 [28]
If your computer is old it may be the screen is dying or if its brand new it would probably  be the power supply check your battery or cables
6 0
4 years ago
Read 2 more answers
Briefly describe the client/server model.
Lesechka [4]
<span>a distributed application structure that partitions tasks or workloads between the providers of a resource or service, called servers, and service requester, called clients</span>
6 0
4 years ago
Help plz its do today
TiliK225 [7]

Answer:

It is a good idea to consider supply and demand when considering your future career. This will give us an idea of how easy or difficult it is to enter the area and make a living from it.

Explanation:

8 0
3 years ago
Other questions:
  • Create a short document titled "Guide to web searches" that Sergio can give to users of the facility he supervises. The document
    7·1 answer
  • Which statement is FALSE? If a method does not return a value, the return-value-type in the method declaration can be omitted. P
    8·1 answer
  • When you set the position property for a block element to absolute, the browser?
    8·1 answer
  • What is top down design? a. Top down design is a way of designing your program by starting with the biggest problem and breaking
    7·1 answer
  • View focuses on the text and content of a document, without much information on the page layout.
    13·1 answer
  • Write Python programs to solve the following two problems. Your programs should be named according to the problem descriptions a
    9·1 answer
  • A key requirement for the process of testing hypotheses in the scientific method is Group of answer choices experimenter bias. c
    9·1 answer
  • Help, I'm a beginner in coding! I have to write a quiz. You don't have to get all fancy and stuff, since I'm a beginner lol. I w
    12·1 answer
  • How do you change your grade level
    10·1 answer
  • Kyle has a notebook for each of his 5 classes. He puts 6 stickers on each notebook. There are 10 stickers on each sheet. How man
    11·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!