klasi-3

КЛАСИ И ОБЈЕКТИ

  • Направи програма со која ќе се пресмета плостина и периметар на правоаголник со користење на класа на правоаголници.

/*da se presmeta plostina i perimetar na pravoagolnik
so koristenje na klasa pravoagolnik*/
#include<iostream>
using namespace std;

class pravoagolnik{
public:
    float plostina(float a, float b){
        float p=a*b;
        return p;
    }

    float perimetar(float a, float b){
        float l=2*(a+b);
        return l;
    }
};

int main()
{
    float a, b;
    pravoagolnik obj;

    cout<<"Vnesi dimenzii na pravoagolnik: ";
    cin>>a>>b;

    cout<<"Plostina: "<<obj.plostina(a, b)<<endl;
    cout<<"Perimetar: "<<obj.perimetar(a, b);

    return 0;
}


  • Направи програма со користење на класа со која ќе се пресмета плостина и периметар на круг.

/*da se presmeta plostina i perimetar na krug
so koristenje na klasa krug*/
#include<iostream>
#define pi 3.14
using namespace std;

class krug{
public:
    float perimetar(float r){
        float l=2*r*pi;
        return l;
    }
    float plostina(float r){
        float p=r*r*pi;
        return p;
    }
};

int main()
{
    float r;
    krug obj;

    cout<<"Vnesi radious na krug: ";
    cin>>r;

    cout<<"Plostuina: "<<obj.plostina(r)<<endl;
    cout<<"Perimetar: "<<obj.perimetar(r);

    return 0;
}


  • Декларирај класа која пресметува волумен на кутија и потоа направи програма со која ќе се декларираат два објекта kutija1 и kutija2 на кои ќе им се пресмета волуменот и ќе се одреди кој од објектите има поголем волумен.

/* da se odredi koja od dve kutii ima pogolem volumen
so koristenje na klasa kutija*/
#include<iostream>
using namespace std;

class kutija{
public:
    float volumen(float a, float b, float c){
        float v=a*b*c;
        return v;
    }
};

int main()
{
    float a1, b1, c1, a2, b2, c2;
    kutija kutija1, kutija2;

    cout<<"Vnesi dimenzii na kutija 1: ";
    cin>>a1>>b1>>c1;
    float v1=kutija1.volumen(a1, b1, c1);
    cout<<"Volumen na Kutija 1: "<<v1<<endl;

    cout<<"Vnesi dimenzii na kutija 2: ";
    cin>>a2>>b2>>c2;
    float v2=kutija2.volumen(a2, b2, c2);
    cout<<"Volumen na Kutija 2: "<<v2<<endl;

    if(v1>v2) cout<<"Kutija 1 ima pogolem volumen.";
    else cout<<"Kutija 2 ima pogolem volumen.";

    return 0;
}


·         Да се пресмета волумен на двособен стан со објектите кујна, дневна, ходник и купатило(декларирај класа која пресметува волумен на кутија).

/*da se presmeta volumen na dvosoben stan,
so kujna, hodnik, kupatilo, dnevna*/
#include<iostream>
using namespace std;

class kutija {
public:
    float volumen(float a, float b, float c){
        float v=a*b*c;
        return v;
    }
};

int main()
{
    float a, b, h;
    kutija kujna, dnevna, hodnik, kupatilo;

    cout<<"Vnesi visina na stan: ";
    cin>>h;

    cout<<"Vnesi dimenzii na kujna: ";
    cin>>a>>b;
    float v1=kujna.volumen(a, b, h);

    cout<<"Vnesi dimenzii na dnevna: ";
    cin>>a>>b;
    float v2=dnevna.volumen(a, b, h);

    cout<<"Vnesi dimenzii na hodnik: ";
    cin>>a>>b;
    float v3=hodnik.volumen(a, b, h);

    cout<<"Vnesi dimenzii na kupatilo: ";
    cin>>a>>b;
    float v4=kupatilo.volumen(a, b, h);

    float v=v1+v2+v3+v4;
    cout<<"Volumen na stan: ";
    cout<<v;
    return 0;
}


  • Со користење на класи направи програма со која ќе се пресмета полштина и периметар на круг ако е даден радиусот.(Користи функција за поставување и функција за преземање вредност.)

/*da se presmeta plostina i perimetar na krug,
so koristenje na klasa krug i set i get funkcija*/
#include<iostream>
#define pi 3.14
using namespace std;

class krug{
private:
    double radius;
public:
    void setRadius(double r){
        radius=r;
    }

    double getRadius(){
        return radius;
    }

    double plostina(double r){
        return 2*r*pi;
    }

    double perimetar(double r){
        return r*r*pi;
    }
};

int main()
{
    double rad;
    cout<<"Vnesi radius na krug: ";
    cin>>rad;
    krug k;

    k.setRadius(rad);
    cout<<"Za krug so radius "<<k.getRadius()<<endl;
    cout<<"plostinata e "<<k.plostina(rad)<<endl;
    cout<<"peimetarot e "<<k.perimetar(rad);

    return 0;
}


  • Да се пресмета полштина и волумен на коцка со користење на класи. Страната a е атрибут на коцката и е декларирана во приватната област.

/*so koristenje na klasi i set i get funkcija da se presmeta
plostina i perimetar na kocka*/
#include<iostream>    
using namespace std;

class kocka
{
private:
    double strana;
public:
    void setStrana(double a){
        strana=a;
    }

    double getStrana(){
        return strana;
    }

    double plostina(double a){
        return 6*a*a;
    }

    double volumen(double a){
        return a*a*a;
    }
};

int main()
{
    double st;
    cout<<"Vnesi strana na kocka: ";
    cin>>st;

    kocka k;

    k.setStrana(st);

    cout<<"Za kocka so strana "<<k.getStrana()<<endl;
    cout<<"plostinata e "<<k.plostina(st)<<endl;
    cout<<"volumenot e "<<k.volumen(st)<<endl;

    return 0;
}


  • Пресмета плоштина и волумен на коцка ако е дадена нејзината страна.(Користи конструктори.)

/*so koristenje na klasi i konstruktor
da se presmeta plostinata i volumen na kocka*/

#include<iostream>
using namespace std;

class kocka
{
private:
    double strana;
public:
    kocka(double a)
    { setStrana(a);}

    void setStrana(double a){
        strana=a;
    }

    double getStrana(){
        return strana;
    }

    double plostina(){
        return 6*strana*strana;
    }

    double volumen(){
        return strana*strana*strana;
    }
};

int main()
{
    kocka obj(2.5);
    cout<<"Za kocka so strana: "<<obj.getStrana()<<endl;
    cout<<"Plostinata e: "<<obj.plostina()<<endl;
    cout<<"Volumenot e: "<<obj.volumen();

    return 0;
}


  • Пресметај плостина и волумен на коцка, со користење на класи при што имплементацијата ќе биде одделена од интерфејсот.

#ifndef CLASS_INTERFACEVOLUMEN_NA_KOCKA_HEATHER_H_INCLUDED
#define CLASS_INTERFACEVOLUMEN_NA_KOCKA_HEATHER_H_INCLUDED



#endif // CLASS_INTERFACEVOLUMEN_NA_KOCKA_HEATHER_H_INCLUDED
#include<iostream>
using namespace std;

class kutija
{
private:
    double v;
public:
    double volumen(double, double, double);
    void poraka();
};

#include<iostream>
#include"class_interfacevolumen_na_kocka_heather.h"
using namespace std;

double kutija::volumen(double a, double b, double c){
    v=a*b*c;
    return v;
}

void kutija::poraka(){
    cout<<"Presmetuvanje na volumen na kutija "<<endl;
}



/*da se presmeta vplumen na dve kutii-class interface*/
#include<iostream>
#include"class_interfacevolumen_na_kocka_heather.h"
using namespace std;

int main()
{
    kutija k1, k2;
    double a, b, c;

    cout<<"Vnesi dimenzii na prva kutija: ";
    cin>>a>>b>>c;
    k1.poraka();
    cout<<k1.volumen(a, b, c)<<endl;

    cout<<"Vnesi dimenzii na vtora kutija: ";
    cin>>a>>b>>c;
    k2.poraka();
    cout<<k2.volumen(a, b, c);

    return 0;
}


  • Внеси должини на три отсечки a, b, c и провери дали тие можат да бидат страни на триаголник. Ако можат испитај каков е триеголникот. Проверката дали може да се формира триаголник изврши ја во функција од дадена класа.

/*da proveri dalki vneseni dolzini na tri otsecki mozat da se
strani na triagolnik, i kakov spored stranite*/
#include<iostream>
using namespace std;

class triagolnik
{
public:
    bool proverka(float a, float b, float c)
    {
        if(a+b>c && b+c>a && a+c>b)
            return 1;
        else return 0;
    }
};

int main()
{
    float a, b, c;
    bool p;
    triagolnik obj;
    cout<<"Vnesi dimenzii na tri otsecki: "<<endl;
    cin>>a>>b>>c;
    p=obj.proverka(a, b, c);

    if(p==1)
        if(a==b && b==c)
            cout<<"Moze da se formira ramnostran triagolnik.";
        else
            if(a==b || b==c || a==c)
                cout<<"Moze da se formira ramnokrak troiagolnik.";
            else
                cout<<"Moze da se formira raznostran triagolnik.";
    else
        cout<<"Ne moze da se formira troiagolnik.";

        return 0;
}


  • Направо програма со користење на класа во коај ќе биде дефинирана функција која пресметува n-ти степен од некој број x и за било кое x и n-природен број да се пресмета степенот.

/* klasa koja sodrzi funkcija koja prtesmetuva stepen na broj*/
#include<iostream>
using namespace std;

class stepen
{
public:
    double f(double x, int n)
    {
        int i;
        double p=1;
        for (i=1; i<=n; i++) p*=x;
        return p;
    }
};

int main()
{
    int n;
    double x;
    cout<<"Vnesi ja osnovata: "<<endl;
    cin>>x;
    cout<<"Vnesi go eksponentot: "<<endl;
    cin>>n;

    stepen obj;
    double s=obj.f(x, n);
    cout<<x<<" na "<<n<<"-ti stepen e "<<s;

    return 0;
}



0 comments:

Post a Comment

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Hristijan P.