Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Hello hope all is well. I\'m posting a Point.H and Point.Cpp file. I need some h

ID: 3718693 • Letter: H

Question

Hello hope all is well. I'm posting a Point.H and Point.Cpp file. I need some help in changing the private of point. Instead of using *xPtr and *yPtr, I need to use only xP and yP. yes they are not to be pointers yet simply xP and yP. Please review my code and let me know why, Im receiving this error.

#include <iostream>

#include "fractionTameemB.h"

#include "pointTameemB.h"

using namespace std;

PointTameemB::PointTameemB() :xP(new FractionTameemB()), yP(new FractionTameemB()) {}

PointTameemB::PointTameemB(const FractionTameemB& fr) :

xP(new FractionTameemB(fr)),

yP (new FractionTameemB(fr)) {}

PointTameemB::PointTameemB(const FractionTameemB& delX,

const FractionTameemB& delY) : xP(new FractionTameemB(delX)),

yP(new FractionTameemB(delY)){}

PointTameemB::PointTameemB(const PointTameemB& that) : xP(that.xP),

yP(that.yP) {

cout << " Calling PointTameemB(const FractionTameemB& that)" << endl;

}

PointTameemB::~PointTameemB() {

cout << " Calling ~PointTameemB() "

<< *this;

delete xP;

xP = nullptr;

delete yP;

yP = nullptr;

}

int PointTameemB::getQuadrant() {

int quadTB;

if (0 < xP.getNum()) {

if (0 < yP.getNum()) {

quadTB = 1;

} else if (0 > yP.getNum()) {

quadTB = 4;

} else {

quadTB = 5;

}

} else if (0 > xP.getNum()) {

if (0 < yP.getNum()) {

quadTB = 2;

} else if (0 > yP.getNum()) {

quadTB = 3;

} else {

quadTB = 7;

}

} else {

if (0 < yP.getNum()) {

quadTB = 6;

} else if (0 > yP.getNum()) {

quadTB = 8;

} else {

quadTB = 0;

}

}

return quadTB;

}

int PointTameemB::getQuadrant(const PointTameemB& p) {

int quadTB;

if (xP.getNum() * p.xP.getDenom() >

p.xP.getNum() * xP.getDenom()) {

if (yP.getNum() * p.yP.getDenom() >

p.yP.getNum() * yP.getDenom()) {

quadTB = 1;

} else if (yP.getNum() * p.yP.getDenom() <

p.yP.getNum() * yP.getDenom()) {

quadTB = 4;

} else {

quadTB = 5;

}

} else if (xP.getNum() * p.xP.getDenom() <

p.xP.getNum() * xP.getDenom()) {

if (yP.getNum() * p.yP.getDenom() >

p.yP.getNum() * yP.getDenom()) {

quadTB = 2;

} else if (yP.getNum() * p.yP.getDenom() <

p.yP.getNum() * yP.getDenom()) {

quadTB = 3;

} else {

quadTB = 7;

}

} else {

if (yP.getNum() * p.yP.getDenom() >

p.yP.getNum() * yP.getDenom()) {

quadTB = 6;

} else if (yP.getNum() * p.yP.getDenom() <

p.yP.getNum() * yP.getDenom()) {

quadTB = 8;

} else {

quadTB = 0;

}

}

return quadTB;

}

void PointTameemB::moveBy(const FractionTameemB& delX,

const FractionTameemB& delY) {

cout << " Calling moveBy(const FractionTameemB& delX,"

" const FractionTameemB& delY)";

xP = xP + delX;

yP = yP + delY;

}

void PointTameemB::moveBy(const FractionTameemB& intXY) {

cout << " Calling moveBy(const FractionTameemB& intXY)";

xP = xP + intXY;

yP = yP + intXY;

}

void PointTameemB::flipByX() {

cout << " Calling flipByX()";

xP.setNum(xP.getNum() * -1);

}

void PointTameemB::flipByY() {

cout << " Calling flipByY()";

yP.setNum(yP.getNum() * -1);

}

void PointTameemB::flipThroughOrigin() {

cout << " Calling flipThroughOriginX()";

xP.setNum(xP.getNum() * -1);

yP.setNum(yP.getNum() * -1);

}

void PointTameemB::print() const {

cout << " Point Object @ " << this

<< " X : " << xP << " : " << xP.getNum()

<< "/" << xP.getDenom()

<< " y : " << yP << " : " << yP.getNum()

<< "/" << yP.getDenom() << endl << endl;

}

void PointTameemB::update(const FractionTameemB& lFr,

const FractionTameemB& rFr) {

xP = lFr;

yP = rFr;

}

void PointTameemB::setX(const FractionTameemB& that) {

xP = that;

}

void PointTameemB::setY(const FractionTameemB& that) {

yP = that;

}

ostream& operator<<(ostream& out, const PointTameemB& p) {

cout << " XPtr: " << p.xP << " : " << p.xP.getNum()

<< "/" << p.xP.getDenom()

<< " YPtr: " << p.yP << " : " << p.yP.getNum()

<< "/" << p.yP.getDenom() << endl;

return out;

}

#ifndef POINTTAMEEMB_H

#define POINTTAMEEMB_H

#include <iostream>

#include "fractionTameemB.h"

using namespace std;

class PointTameemB {

public:

PointTameemB();

PointTameemB(const FractionTameemB&);

PointTameemB(const FractionTameemB&, const FractionTameemB&);

PointTameemB(const PointTameemB&);

~PointTameemB() ;

int getQuadrant(void);

int getQuadrant(const PointTameemB&);

void moveBy(const FractionTameemB&, const FractionTameemB&);

void moveBy(const FractionTameemB&);

void flipByX(void);

void flipByY(void);

void flipThroughOrigin(void);

void print(void) const;

void update(const FractionTameemB&, const FractionTameemB&);

void setX(const FractionTameemB&);

FractionTameemB getX(void) const { return xP; }

void setY(const FractionTameemB&);

FractionTameemB getY(void) const { return yP; }

friend ostream& operator<<(ostream&, const PointTameemB&);

private:

FractionTameemB xP;

FractionTameemB yP;

};

#endif

Explanation / Answer

The code is correct, but you didn't provided FractionTameemB. If your FractionTameemB doesn't have in same directory, then you will get an error... If already have file, please paste the error that you are getting in comment... That will be easy to get error...

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote