Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // 1. Napiši klasu MotornoVozilo koja ima podatkovne članove za boju, zapremninu
- // spremnika goriva, trenutnu razinu goriva i prosječnu potrošnju, defaultni i
- // parametarski konstruktor, metodu Oboji koja boja vozilo, Natoci koja puni
- // gorivo i čistu virtualnu metodu Vozi, koja kao parametar ima broj kilometara
- // koliko se vozi.Napiši klasu Automobil koja nasljeđuje klasu MotornoVozilo, a
- // ima podatkovne članove za model i max.brzinu te defaultni i parametarski
- // konstruktor.Prepiši metodu vozi, tako da umanjuje količinu goriva prema
- // broju kilometara koje se vozi i prosječnoj potrošnji.Napraviti garažu(1D polje
- // MotornihVozila) i provozati svako vozilo iz garaže.
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- #include <string>
- using namespace std;
- // ---------------------------------------
- class Vehicle {
- protected:
- string mColor;
- float mFuelTank;
- float mFuelLevel;
- float mAverageConsumption;
- public:
- Vehicle();
- Vehicle(string, float, float, float);
- void Paint(string);
- void Refuel(float);
- virtual void Drive(float) = 0;
- };
- // ---------------------------------------
- Vehicle::Vehicle() : mColor(""), mFuelTank(0.0), mFuelLevel(0.0), mAverageConsumption(0.0) {}
- Vehicle::Vehicle(string Color, float FuelTank, float FuelLevel, float AverageConsumption) : mColor(Color), mFuelTank(FuelTank), mFuelLevel(FuelLevel), mAverageConsumption(AverageConsumption) {}
- void Vehicle::Paint(string color) {
- mColor = color;
- }
- void Vehicle::Refuel(float fuel) {
- mFuelTank += fuel;
- }
- // ---------------------------------------
- class Car : public Vehicle {
- private:
- string mModel;
- float mMaxSpeed;
- public:
- Car();
- Car(string, float, string, float, float, float);
- virtual void Drive(float);
- };
- // ---------------------------------------
- Car::Car() : mModel(""), mMaxSpeed(0.0), Vehicle("", 0.0, 0.0, 0.0) {}
- Car::Car(string Model, float MaxSpeed, string Color, float FuelTank, float FuelLevel, float AverageConsumption) : mModel(Model), mMaxSpeed(MaxSpeed), Vehicle(Color, FuelTank, FuelLevel, AverageConsumption) {}
- void Car::Drive(float distance) {
- if (mFuelLevel - mAverageConsumption * distance < 0) {
- mFuelLevel = 0;
- }
- else {
- mFuelLevel = mFuelLevel - mAverageConsumption * distance;
- }
- }
- // ---------------------------------------
- int main() {
- float random;
- Vehicle** Garage = new Vehicle*[3] {
- new Car( "Opel", 200.00, "Black", 150.00, 70.00, 0.2 ),
- new Car( "Lamborghini", 300.00, "Yellow", 100.00, 10.00, 0.8 ),
- new Car( "Audi", 250.00, "White", 200.00, 120.00, 0.5 )
- };
- srand((unsigned int)time(0));
- for (int i = 0; i < 3; i++) {
- random = 100 + (float)rand() * 400 / (float)RAND_MAX;
- Garage[i]->Drive(random);
- }
- for (int i = 0; i < 3; i++) {
- delete Garage[i];
- }
- delete Garage;
- return 0;
- }
- // 2. Napiši klasu Kalkulator koja predstavlja i ima mogućnosti osnovnog kalkulatora
- // (unesi operande, zbroji, oduzmi, pomnozi, podijeli, prikaži rezultat).Iz nje
- // izvedi klasu znanstveni kalkulator koja omogućuje dodatne operacije poput
- // korjenovanja, potenciranja te onih operacija koje smatrate nužnima.
- #include <iostream>
- #include <math.h>
- using namespace std;
- // ---------------------------------------
- class Calculator{
- protected:
- double mResult;
- public:
- Calculator();
- void Add(double, double);
- void Subtract(double, double);
- void Multiply(double, double);
- void Divide(double, double);
- void ShowResult() const;
- };
- // ---------------------------------------
- Calculator::Calculator() : mResult(0.0) {}
- void Calculator::Add(double A, double B) { mResult = A + B; }
- void Calculator::Subtract(double A, double B) { mResult = A - B; }
- void Calculator::Multiply(double A, double B) { mResult = A * B; }
- void Calculator::Divide(double A, double B) { mResult = A / B; }
- void Calculator::ShowResult() const { cout << mResult << endl; }
- // ---------------------------------------
- class ScientificCalculator : public Calculator {
- public:
- void SquareRoot(double);
- void Power(double, double);
- void Sine(double);
- void Cosine(double);
- };
- // ---------------------------------------
- void ScientificCalculator::SquareRoot(double X) { mResult = sqrt(X); }
- void ScientificCalculator::Power(double Base, double Exponent) { mResult = pow(Base, Exponent); }
- void ScientificCalculator::Sine(double X) { mResult = sin(X); }
- void ScientificCalculator::Cosine(double X) { mResult = cos(X); }
- // ---------------------------------------
- int main() {
- ScientificCalculator Kalkulator;
- double a = 2.3, b = 4.6, x = 5.2;
- Kalkulator.Add(a, b);
- Kalkulator.ShowResult();
- Kalkulator.Subtract(a, b);
- Kalkulator.ShowResult();
- Kalkulator.Multiply(a, b);
- Kalkulator.ShowResult();
- Kalkulator.Divide(a, b);
- Kalkulator.ShowResult();
- Kalkulator.SquareRoot(x);
- Kalkulator.ShowResult();
- Kalkulator.Power(a, b);
- Kalkulator.ShowResult();
- Kalkulator.Sine(x);
- Kalkulator.ShowResult();
- Kalkulator.Cosine(x);
- Kalkulator.ShowResult();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment