Written by students who passed Immediately available after payment Read online or as PDF Wrong document? Swap it for free 4.6 TrustPilot
logo-home
Document preview thumbnail
Preview 4 out of 55 pages
Exam (elaborations)

cos 1512 exam pack

Document preview thumbnail
Preview 4 out of 55 pages

cos 1512 exam packcos 1512 exam packcos 1512 exam pack

Content preview

JUNE 2017 P2

1 C STRINGS
Error Correction
If(str!=”STOP” If(strcmp(str,”STOP”);
Str = “STOP” Strcpy(str,”STOP”);



2 RECURSION
Void CountDown(int num)
{
If (num = 0)
Cout << 0 << endl;
Else
{
Cout << num << endl;
CountDown(num-1);
}
}


3 POINTERS

3.1 The problem with this this code fragment is that the code deletes the pointer.
Thereafter, the programmer is assigning the value to a pointer that doesn’t point to
anything. The results are disastrous.

3.2 Correct the Code

3.2.1 5 : p1 = &x; 6 : p2 = &y;
3.2.2 7: cout << *p1 << “ “ << *p2;
3.2.3 9: 30

3.3 typedef int* myPtr;
myPtr = a;
int size’;
a = new int[size];


4 DEFINE PRODUCT CLASS

Product.h

#ifndef PRODUCT_H
#define PRODUCT_H

#include <iostream>
#include <cstdlib>
#include <string>
#include <fstream>


Page 1 of 6

,JUNE 2017 P2

using namespace std;


class Product
{
public:
Product();
~Product();
long getNumber();
void reset(long rID, double rPrice, long rNum);
void increaseRetailPrice(float incPercent);
friend bool operator ==(const Product &p1, const Product &p2);
friend Product operator -- (Product &P);
friend istream& operator >> (istream& ins, Product &P);
friend ostream& operator << (ostream& outs, const Product &P);


protected:

private:
long id;
double price;
long number;
};

#endif // PRODUCT_H

Product.CPP
#include "Product.h"
#include <iostream>
#include <cstdlib>
#include <string>


using namespace std;

Product::Product()
{
id = 0;
price = 0.0;
number = 0;

}

Product::~Product()
{
//dtor
}

long Product::getNumber()

Page 2 of 6

,JUNE 2017 P2
{
return number;
}

void Product::reset(long rID, double rPrice, long rNum)
{
id = rID;
price = rPrice;
number = rNum;
}

void Product::increaseRetailPrice(float incPercent)
{
price = price + (price * incPercent);

}

bool operator ==(const Product &p1, const Product &p2)
{
if ((p1.id == p2.id) && (p1.price == p2.price) && (p1.number == p2.number))
return true;
else
return false;
}



Product operator-- (Product &P)
{

--P.number;

return P;


}

istream& operator >> (istream& ins, Product &P)
{
ins >> P.id >> P.price >> P.number;
//ins >> P.price;
//ins >> P.number;
return ins;
}

ostream& operator << (ostream& outs, const Product &P)
{
outs << P.id << endl;
outs << P.price << endl;
outs << P.number << endl;
return outs;

Page 3 of 6

, JUNE 2017 P2
}

Main()

#include <iostream>
#include <cstdlib>
#include <string>
#include <fstream>
#include "Product.h" //1


using namespace std;

int main()
{
ifstream input;//2
input.open("Products.txt");//3
if (input.fail())
{
cout << "File failed to open " ;
exit(1);
}
Product P1, P2;
long ID, Nr;
float Price;
cout <<"Enter product ID: ";
cin >> ID;
cout <<"Enter wholsesale Product price: ";
cin >> Price;
cout << "Enter number in stock of product" << "ID: ";
cin >> Nr;
P1.reset(ID,Price,Nr);//4
while(!input.eof()) // 5
{
input >> P2 ;//6
cout << P2.number; //6
}
if (P1 == P2) // 7
{
P2.increaseRetailPrice(0.05); //8
--P2; //9
}

cout << P1 << endl;
cout << P2 << endl;

input.close();

return 0;
}



Page 4 of 6

Document information

Uploaded on
September 20, 2021
Number of pages
55
Written in
2021/2022
Type
Exam (elaborations)
Contains
Questions & answers
$3.35

Wrong document? Swap it for free Within 14 days of purchase and before downloading, you can choose a different document. You can simply spend the amount again.
Written by students who passed
Immediately available after payment
Read online or as PDF

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
JABULANIKHOLWA
2.0
(2)
Sold
24
Followers
22
Items
0
Last sold
1 year ago



Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Working on your references?

Create accurate citations in APA, MLA and Harvard with our free citation generator.

Working on your references?

Frequently asked questions