1. What purpose do classes serve?
A. data encapsulation
B. providing a convenient way of modeling real-world objects
C. simplifying code reuse
D. all of the above
2. Which is not a protection level provided by classes in C++?
A. protected
B. hidden
C. private
D. public
3. What value must a destructor return?
A. A pointer to the class.
B. An object of the class.
C. A status code determining whether the class was destructed correctly
D. Destructors do not return a value.
A. class A { int x; };
B. class B { }
C. public class A { }
D. object A { int x; };
A. None
B. Constructor
C. Destructor
D. Both a constructor and a destructor
6. What does a class in C++ holds?
a) data
b) functions
c) both data & functions
d) arrays
7. How many specifiers are present in access specifiers in class?
a) 1
b) 2
c) 3
d) 4
8. Which is used to define the member of a class externally?
a) :
b) ::
c) #
d) !!$
b) private
c) public
d) public & protected
10.Constructors are used to ____________
b) construct the data members
c) both initialize the objects & construct the data members
d) delete the objects
11. Create a class named 'Student' with a string variable 'name' and an integer variable 'roll_no'. Assign the value of roll_no as '2' and that of name as "John" by creating an object of the class Student.
12. Изврши корекција за да се добие валиден код
{
int x;
};
int main()
{
Test t;
cout << t.x;
return 0;
}
Аccess Private Members
To access a private attribute, use public "get" and "set" methods:
Example
#include <iostream>
using namespace std;
class Employee {
private:
// Private attribute
int salary;
public:
// Setter
void setSalary(int s) {
salary = s;
}
// Getter
int getSalary() {
return salary;
}
};
int main() {
Employee myObj;
myObj.setSalary(50000);
cout << myObj.getSalary();
return 0;
}
#include <iostream>
using namespace std;
class rect
{
int x, y;
public:
void val (int, int);
int area ()
{
return (x * y);
}
};
void rect::val (int a, int b)
{
x = a;
y = b;
}
int main ()
{
rect rect;
rect.val (3, 4);
cout << "rect area: " << rect.area();
return 0;
}
b) rect area: 12
c) compile error because rect is as used as class name and variable name in line #20
d) rect area: 56
b) 2
c) Any number
d) None of the mentioned
#include <iostream>
using namespace std;
class Pozdrav
{ public:
void Poraka()
{ cout << "Klasa so ednostavna funkcija so poraka!"<< endl; }
};
int main()
{ Pozdrav objPozdrav;
objPozdrav.Poraka ();
return 0; }
Излез: Klasa so ednostavna funkcija so poraka!
Функцијата Ispis() испишува текст " Ispis na tekst na ekranot so koristenje na klasa Ispis " на екранот
#include <iostream>
using namespace std;
class Kvadrat
{ public:
void Poraka(int broj)
{ сout << "Kvadratot na brojot e:"<< broj*broj<<endl; }
};
int main()
{ int br;
cout<<”Vnesete broj”;
cin>>br;
Kvadrat objKvadrat;
objKvadrat.Poraka (br);
return 0;
}
Излез: Vnesete broj 5
Kvadratot na brojot e:25
::
operator )using namespace std;
class Car {
public:
int speed(int maxSpeed);
};
int Car::speed(int maxSpeed) {
return maxSpeed;
}
int main() {
Car myObj; // Create an object of Car
cout << myObj.speed(200); // Call the method with an argument
return 0;
}
#include <iostream>
using namespace std;
class ucenik
{
//public:
string Prezime,Ime; // декларирање на податочните членки
float mat,mak,ang; // декларирање на податочните членки
// функција set за поставување на податоци внесени од тастатура во објектот
void setPodatoci (string P, string I, float o1,float o2, float o3)
{ Prezime=P;
Ime=I;
mat=o1;
mak=o2;
ang=o3;
}
// функција get за добивање на податочните членки од објектот
string getPrezimeIme()
{ return Prezime+" "+Ime; }
float Prosek(float mat, float mak, float ang)
{ float p;
p=(mat+mak+ang)/3;
return p; }
}; // завршува дефинирањето на класата
int main()
{
string P,I;
float o1,o2,o3;
ucenik objucenik; // креирање на објект со име objucenik од класата ucenik
cout<<"Vnesi Prezime i ime na ucenikot"<<endl;
cin>>P>>I;
cout<<"Vnesi gi ocenkite po matematika, makedoski i angliski jazik"<<endl;
cin>>o1>>o2>>o3;
objucenik.setPodatoci(P,I,o1,o2,o3); // повикување на функцијата set
cout<<"Ucenikot "<<objucenik.getPrezimeIme()<<" ima "<<objucenik.Prosek(o1,o2,o3)<< " prosek";
return 0;
}
Izlez:
Vnesi Prezime i ime na ucenikot
Stojanoska
Ana
Vnesi gi ocenkite po matematika, makedoski i angliski jazik
3 5 5
Ucenikot Stojanoska Ana ima 4.33333 prosek
Во примерот внесени се податоци за име и презиме . Преработи ја програмата така што за внесување на име и презиме / string so poveke zbоrovi, ќе ја користиш функцијата getline
6) Kласа со име vraboten што содржи податочни членки : Prezime (string), Ime(string), Godvrab(int) и функции членки: set, get и функција членка што ќе пресметува работен стаж на вработениот во години.
#include <iostream>
#include <string>
using namespace std;
class vraboten
{
string Prezime,Ime;
int godvrab;
void setPodatoci(string P,string I,int g)
{ Prezime=P;
Ime=I;
godvrab=g; }
string getPodatoci()
{ return Prezime+" "+Ime; }
int Staz(int godvrab)
{ int p;
p=2020-godvrab;
return p; }
};
int main()
{ string P,I;
int g;
vraboten objvraboten;
cout<<"Vnesi Prezime i ime na vraboteniot"<<endl;
cin>>P>>I;
cout<<"Vnesi ja godinata na vrabotuvanje"<<endl;
cin>>g;
objvraboten.setPodatoci(P,I,g);
cout<< “Vraboteniot “<< objvraboten.getPodatoci()<<" ima staz od "<< objvraboten.Staz(g)<<” godini”;
return 0;
}
Izlez:
Vnesi Prezime i ime na vraboteniot
Stojanoska
Vnesi ja godinata na vrabotuvanje
2010
Vraboteniot Stojanoska Ana ima staz od 10 godini
Напишете класа под
име Registracija, која претставува регистрација на автомобили. Класата нека има
две јавни варијабли од тип int, со имиња
reg1 i reg2, кои содржат два трицифрени
броја кои ја чинат регистрацијата.
На пример ако reg1=143,
a reg2=186, тогаш регистрацијата е “143-186”.
Класата нека
има default konstruktor кој и reg1 и reg2 ги иницијализира на вредност 100. Во главната програма декларирајте објект
со име r од класата Registracija, чија вредност ќе биде 234-567”. Испишете ја регистацијата зчувана
во објектот r, коректно форматирана .
using namespace
std;
class
Registracija
{ public: int reg1; int reg2;
Registracija();
};
//definiranje na konstruktor
Registracija::Registracija()
{ reg1 = 100; reg2 = 100; }
main()
{ Registracija
r;
// javnite varijabli na klasata se postavuvaat
na odredenite vrednosti
r.reg1 = 234; r.reg2 = 567;
cout <<
r.reg1 << "-" << r.reg2 << endl; // ispis
registracija
}
Извршете измена на класата Registracija така што reg1 и reg2 ќе бидат приватни варијабли. Креирајте две нови функции :
- функција Postavi која ги поставува вредностите на
регистрацијата. Прототипот нека е : void Postavi( int temp1, int temp2);
Функцијата Postavi нека податочните членки reg1 и reg2 ги постави на вредности temp1 и temp2, доколку temp1 и temp2 се позитивни трицифрени броеви.
Инаку нека не ги менува reg1 i reg2.
- функција Ispisi која ја испишува регистрацијата
на екран reg1 - reg2. Прототипот нека е :
void Ispisi();
Access Specifiers
public - members are accessible from outside the class
private - members cannot be accessed (or viewed) from outside the class
Volume of Room = 31.5
Volume of Room = 31.5
Во главната програма: Декларирај објект Р на класата podatok предавајќи му вредности 10 и 5 . За објектот P повикај ја ф-јата srednaV
Дефинирај класа slozPodatoci која има tri private податоци x - целоброен , y- реален , z - знаковен. Во public има ф-јa pisiPod ( ги прикажува x, y и z ) која нема повратна вредност и нема параметри и конструктор со три парамeтри а целоброен , b реален c знаковен ( на податокот x – доделува вредност a, на податокот y – доделува вредност b, на податокот z – доделува вредност c ) Дефинирај ги ф-циите.
Во главната програма: Декларирај објект Р на класата slozPodatoci . За објектот P повикај ја ф-јата pisiPod
No comments:
Post a Comment