WorksheetsПрограммалау 100 - 200
Total questions: 100
Worksheet time: 50mins
Статикалық айнымалыларды жариялау үшін қандай кілт сөзді қолдану керек?
cmd
stat
static
const
common
Бір программада белгілі бір кластың қанша объектісін жариялауға болады:
Қалағаныңызша
1
128
32768
3
Егер функция бірнеше тапсырма түрін орындай алатын болса, функция атауы өзгеріссіз қалатын болса, мұнда ОБП функциясының қандай мүмкіндігі пайдаланылады:
мұрагерлік
инкапсуляция
абстракция
класс
полиморфизм
Егер нақты дүние объектісінің әртүрлі қасиеттері мен функциялары бір элементке топтастырылса немесе ендірілген болса, ол ОБП тілінде қалай аталады?
класс
мұрагерлік
абстракция
инкапсуляция
полиморфизм
Әдістен мәнді (нәтижені қайтарып алу) алу үшін қолданылатын кілттік сөз:
void
return
static
public
кез келген әдіс нәтижені автоматты түрде қайтарады, ешқандай кілттік сөздің қажеті жоқ.
Классты жариялаудың дұрыс әдісі:
object A { int x; };
class public A {int S;}.
class A { int x; };
public class A { };
private class B { };
PrintSalem() әдісін main() әдісінде шақырыңыз:
Print p; p.PrintSalem();
Print.PrintSalem();
PrintSalem();
Print p; p.Print.PrintSalem();
Print p; p.PrintSalem;
Басқа файлда сақталған классты ағымдағы бағдарламада қолдану үшін ең алдымен ...
сол класстың көшірмесін алу керек.
using ... бөлімінде файлды қосу керек.
main әдісінде класс типті объекті құру керек.
#include бөлімінде файлды қосу керек.
басқа файлдағы классты қолдану мүмкін емес.
Код нәтижесі:
555;
667;
567;
677;
665;
Төмендегідей класс берілген:
Класстың экземплярын (объектісін) құрыңыз:
<variant>Date today;
Date today(1, 10);
Date today(‘x’, 9, 2020);
Date today();
Date today;
Date today(12, 9, 2020);
Код нәтижесі:
23.12;
23.12.0;
12.1.2022;
23.1.2022.
23.12.2022;
Код нәтижесі:
Bob
name
Jack
Tom
объект дұрыс құрылмаған.
Код нәтижесі:
Bob
Jack
name
қате код
Tom
Берілген кодта қатені табыңыз:
3 жол
1 жол
2 жол
4 жол
5 жол
Person person = Person("Tom", 22);
Жаңа объектіні инициализациялауды орындау үшін Person класында дұрыс жазылған конструкторды анықтаңыз:
Арнайы конструктор құрудың қажеті жоқ, үнсіз келісім бойынша конструктор өзі құрылады.
Код нәтижесі:
Tom can run
Jerry can jump
Tom can jump
Jerry can run
Tom jump
Кодтың қай жолында объектіні дұрыс инициализациялаған?
3
5
2
1
4
Код нәтижесі:
3
Bob
3 Bob
1 Bob
123 Bob
Компилятор төмендегі кодтың қай (нөмірленген) жолында қате табады:
1
4
2
3
5
Код нәтижесі:
rect объектісін инициализациялағанда қате анықталады;
код қатесіз орындалады, нәтижесінде бос орын шығады
area: 12
area: 0
компилятор кодтың 2-ші жолында қатені анықтайды.
Төмендегі класста жарияланған әдіс:
height;
Volume(void);
weight;
breadth;
length
Код нәтижесі:
{0.0, 0.0, 0.0}
The point is not zero
The point is zero
Point3d getZeroPoint() структура типті әдіс құру мүмкін емес;
Point3d zero = getZeroPoint(); Point3d структурасының экземпляры zero қате инициализацияланған.
Функцияны қайта анықтау (Overloading) ОБП қандай принципіне негізделеді:
абстракция
мұрагерлік
полиморфизм
инкапсуляция
С++ тілінде функцияны қайта анықтау жоқ.
Person класы берілген. Осы класс негізінде Student класын құрудың дұрыс нұсқасы:
class Student : public Person{};
Person Student{};
Person: Student{};
Student: Person{};
class Student = Person{}.
Бір класстың негізінде басқа класс құру ОБП қандай принципіне негізделеді?
инкапсуляция
полиморфизм
абстракция
мұрагерлік
С++ тілінде бір класстың негізінде басқа класс құру мүмкін емес.
Төменде код берілген:
Employee класы Person класының қандай мүшелерін мұрагерлікпен алады:
name, age, display()
name, age, id, display(), company
name, age, id, display()
Employee класын Person класының негізінде құру мүмкін емес.
name, age, company, id
Мұрагерлікті болдырмау (яғни бір класс негізінде басқа класс құрмау үшін) үшін қолданылатын кілттік сөз:
basic, Class User basic.
override, Class User override;
final, class User final;
private, Class User private;
base, class User base;
Деструктордың алдында қойылатын белгі:
^
~
$
&
#
tom объектісі үшін деструктордың шақырылуы:
delete tom;
~Person(tom);
tom.delete;
delete tom("Tom");
main әдісі аяқталғаннан кейін tom объектісі өзі жойылады.
main функциясында келесі код жазылған.
Square класының сипаттамасы қандай болу керек:
main функциясында келесі код жазылған.
Square класының сипаттамасы қандай болу керек:
Программадағы сипатталған класс экземпляры үшін /* конструктор */ орнына жазылу керек конструктор:
Square(string sq) : sq (a) {}
Square(string sq) : a(sq) {}
Square(int sq) : a(sq) {}
Square(AB) : AB(a) {}
Square(int sq) : sq(a) {}
/* класс экземпляры */ орнына жазылу керек сипаттаманы көрсетіңіз:
Square AB(4, 5);
Square AB();
Square AB(4.5);
Square AB("5");
Square AB(25);
bob объектісі үшін туынды класс конструкторын таңдаңыз:
Employee(string n, int a, string c): Person(n, a), company(c) {}
Employee(int n, string a, string c): Person(n, a), company(c) {}
Person (string n, int a, string c): Employee(n, a), company(c) {}
Person (string n, int a): Employee(n, a), company(string c) {}
Employee(): Person(), company {}
Программа қатесінің жолы:
4
2
5
3
1
Негізгі кластың өрісін туынды кластың ішінде ғана қолдану үшін пайдаланылатын спецификатор:
constuctor
private
protected
destructor
public
Код нәтижесі:
Қате пайда болады
Speed is: 571.2, model is - 8
Speed is: 301.2, model is - 4 Speed is: 270, model is - 4
Speed is: 301.2, model is - 4
Speed is: 270, model is - 4
Код нәтижесі:
Код нәтижесі:
Gipotenuza = 13 S = 30
Gipotenuza = 13
Қате код шығады
S = 30
5 12 13 30
Басқа типтегі (немесе әртүрлі типтегі) деректерді қолдана отырып құрылған мәліметтер типтерінің жиынтығы:
map
struct
массив
vector
set
Кластың ішінде ______ белгісінен кейін анықталған кез-келген берілгендер-элементтер немесе функциялар-элементтер ашық және осы кластың объектісі қол жетімді кез-келген функция үшін көрінетін болып табылады.
label
final
public
private
protected
Кластың ішінде ______ белгісінен кейін анықталған кез-келген берілгендер-элементтер немесе функциялар-элементтер жабық және осы кластың басқа элементтеріне және достық класқа ғана көрінетін болып табылады.
final
label
public
private
protected
Класс элементтеріне қол жеткізу үшін келесі операциялар қолданылады:
>>
. және ->
::
<<
&
Кластарда үнсіз келісім бойынша кіру тәсілі (способ доступа) – ________ болып табылады, сондықтан класс тақырыбынан кейінгі барлық элементтер алғашқы жазылған спецификаторға дейін _______ болып саналады.
public, ашық
private, ашық
protected, жабық
private, жабық
public, жабық
Егер класс клиенттерге жабық деректерді оқуға мүмкіндік бергісі келсе, ол оны "get" ____ функциясы арқылы қамтамасыз ете алады.
оқу
өшіру
көшіру
жазу
теру
Класс өз клиенттеріне "set" ____ функциялары арқылы жабық деректерді өзгертуге мүмкіндік береді.
жазу
оқу
көшіру
өшіру
теру
Класста _______ деструктор бола алады.
шексіз көп
үшке дейін
екі
бірнеше
тек қана бір
Класста _______ конструктор бола алады.
бірнеше
тек қана бір
екі
үшке дейін
шексіз көп
Класс элементі класс объектісімен бірге _______ амалы арқылы қол жетімді немесе класс объектісіне көрсеткішпен бірге _______ амалы арқылы қол жетімді.
нүкте (.) және қоснүкте (:)
нүкте (.) және жұлдызша (*)
нүкте (.) және көрсеткі (->)
нүкте (.) және амперсанд (&)
екі қоснүкте нүкте (::) және амперсанд (&)
_______ функциясы кластың жабық деректер-элементтеріне мәндерді меншіктеу үшін қолданылатын арнайы функция.
конструктор
min
рекурсия
деструктор
max
Класс элементтеріне қол жеткізу (доступ) үнсіз келісім бойынша – ______.
public
_
__
private
protected
Класс функциялары-элементтері әдетте ______ типті, ал деректер-элементтері ______ типті болады.
жабық, жабық
ашық, жабық
екеуі де бірдей
ашық, ашық
жабық, ашық
_____ ретінде көрсетілген класс элементтері класс объектісінің қолданылу аясының барлық жерінде қол жетімді.
protected
_
private
__
public
Пернетақтадан 3 және 6 деген мәндер енгізілсе, код нәтижесі қалай болады:
113.04
6 3
56.52
3 6
0
Класты анықтау class кілт сөзінен басталады, содан кейін класс атауы жазылады. Класс денесі фигуралы жақшаға алынған, содан кейін _____ қойылады.
нүктелі үтір (;)
нүкте (.)
қос нүкте (:)
жұлдызша (*)
үтір (,)
Класс өрісіне кіру операциясы:
,
in
is
.
:
Глобальды рұқсат беру операциясының белгісі:
:
::
->
.
,
Кластан тыс класс әдістерін анықтауда :: белгісі нені білдіреді:
глобальды рұқсат беру операциясын
функция аргументтерін
функция атын
класс атауын
қайтарылатын типті
Кластан тыс класс әдістерін анықтауда void кілт сөзі нені білдіреді:
класс атауын
глобальды рұқсат беру операциясын
функция атын
қайтарылатын типті
функция аргументтерін
Кластан тыс класс әдістерін анықтауда Distance сөзі нені білдіреді:
қайтарылатын типті
глобальды рұқсат беру операциясын
функция атын
функция аргументтерін
класс атауын
Кластан тыс класс әдістерін анықтауда add_dist сөзі нені білдіреді:
қайтарылатын типті
глобальды рұқсат беру операциясын
функция атын
класс атауын
функция аргументтерін
Кластан тыс класс әдістерін анықтауда Distance dd1, Distance dd2 сипатталуы нені білдіреді:
функция аргументтерін
глобальды рұқсат беру операциясын
қайтарылатын типті
класс атауын
функция атын
1 жол нені білдіреді:
dist2 объектісі бір аргументі бар конструктор арқылы инициализацияланды.
Олай инициализациялауға болмайды.
Әдепкі (үнсіз келісім бойынша) көшіру конструкторы шақырылды.
dist1 объектісі екі аргументі бар конструктор арқылы инициализацияланды.
dist1 объектісі бір аргументі бар конструктор арқылы инициализацияланды
2 жол нені білдіреді:
dist1 объектісі бір аргументі бар конструктор арқылы инициализацияланды.
Олай инициализациялауға болмайды.
dist2 объектісі бір аргументі бар конструктор арқылы инициализацияланды.
Әдепкі (үнсіз келісім бойынша) көшіру конструкторы шақырылды.
dist1 объектісі екі аргументі бар конструктор арқылы инициализацияланды.
3 жол нені білдіреді:
dist1 объектісі екі аргументі бар конструктор арқылы инициализацияланды.
Әдепкі (үнсіз келісім бойынша) көшіру конструкторы шақырылды.
dist1 объектісі бір аргументі бар конструктор арқылы инициализацияланды.
Олай инициализациялауға болмайды.
dist2 объектісі бір аргументі бар конструктор арқылы инициализацияланды.
Функцияға қатысты қате пікір:
Функцияларда орындалатын командалар {} операторлық
Функцияның сипаттамасы қайтарылатын мәннің типімен басталуы керек.
return орындалғаннан кейін функцияның жұмысы тоқтатылады.
Функцияны басқа функцияның ішінен шақыруға болмайды.
return командасы функцияның кез келген жерінде кездесуі мүмкін.
Функцияға қатысты дұрыс пікір:
Функциядан сол функцияның өзін – өзі шақыруға да болады.
Функцияны басқа функцияның ішінен шақыруға болмайды.
Функцияда міндетті түрде кем дегенде бір return командасы болуы керек.
Функциядан әртүрлі типті бірнеше айнымалының мәнін қайтаруға болады.
Функцияда міндетті түрде кем дегенде бір параметр болуы керек.
Келесі жазба нені білдіреді:
Employee(std::string n, int a, std::string c) : Person(n, a), company(c) {}
Деструктор
Базалық класс конструкторы
Туынды класс конструкторы
Кластың сипаттамасы
Класс экземпляры құрылды
_____ класс _____ кластың жабық мүшелеріне жүгіне алмайды.
Туынды, мұрагер
Туынды, базалық
Базалық, негізгі
Мұрагер, туынды
Негізгі, базалық
____ спецификаторының көмегімен біз мұрагерлікке тыйым сала аламыз.
protected
private
public
final
unsigned
main функциясындағы келесі кодқа сәйкес анықталған класс әдісін көрсетіңіз:
Counter c1(20);
int seconds = c1 + 25;
main функциясындағы келесі кодқа сәйкес анықталған класс әдісін көрсетіңіз:
Counter c1(20);
Counter c2(10);
Counter c3 = c1 + c2;
main функциясындағы келесі кодқа сәйкес анықталған класс әдісін көрсетіңіз:
Counter c1(15);
Counter c2(25);
Counter c3 = c1 + c2;
main функциясындағы келесі кодқа сәйкес анықталған класс әдісін көрсетіңіз:
Counter c1(20);
Counter c2(10);
bool b1 = c1 == c2;
main функциясындағы келесі кодқа сәйкес анықталған класс әдісін көрсетіңіз:
Counter c1(20);
Counter c2(10);
c1 += c2;
Төмендегі кодта бейнеленген:
салыстыру операторын қайта анықтау
Инкремент операциясын қайта анықтау
меншіктеу операторын қайта анықтау
Декремент операциясын қайта анықтау
int типін түрлендіру операторлары
Төмендегі кодта бейнеленген:
салыстыру операторын қайта анықтау
int типін түрлендіру операторлары
Инкремент операциясын қайта анықтау
Декремент операциясын қайта анықтау
меншіктеу операторын қайта анықтау
Айқын түрлендіруде қандай кілт сөз қолданылады:
explicit
final
extends
static
constructor
Төмендегі кодта жақша ішіндегі Clock сөзі нені білдіреді:
Counter counter(1230);
Clock clock = (Clock)counter;
объектіні Clock типінен int типіне түрлендіру операторы орындалады
объектіні int типінен Clock типіне түрлендіру операторы орындалады
объектіні Clock типінен Counter типіне түрлендіру операторы орындалады
объектіні Counter типінен Clock типіне түрлендіру операторы орындалады
объектіні Counter типінен int типіне түрлендіру операторы орындалады
Төменде көрсетілген оператор түрін анықтаңыз:
постфиксті декремент операторы
бинарлы оператор
префиксті инкремент операторы
префиксті декремент операторы
постфиксті инкремент операторы
Төменде көрсетілген оператор түрін анықтаңыз:
префиксті декремент операторы
префиксті инкремент операторы
бинарлы оператор
постфиксті инкремент операторы
префиксті декремент операторы
Төменде көрсетілген оператор түрін анықтаңыз:
постфиксті декремент операторы
постфиксті инкремент операторы
префиксті инкремент операторы
префиксті декремент операторы
бинарлы оператор
Төменде көрсетілген оператор түрін анықтаңыз:
бинарлы оператор
префиксті декремент операторы
префиксті инкремент операторы
постфиксті декремент операторы
постфиксті инкремент операторы
Операторлардың шамадан тыс жүктелуінде қолданылатын кілт сөз:
extend
final
super
operator
int
this көрсеткішінен кейін қолданылатын сілтеме:
&
@
#
<-
->
Мәні 5-ке өсетін инкремент операторы қайта анықталған. Кодтағы с1, с2 объектілерінің шығыс мәнін көрсет:
21 21
20 20
25 20
20 25
25 25
Мәні 5-ке өсетін және кемитін инкремент және декремент операторлары қайта анықталған. Кодтағы с1, с2 объектілерінің шығатын мәнін көрсет:
20 20
25 20
20 25
15 25
19 21
Объектінің бір типінен екіншісіне түрленуін анықтайтын түрлендіру операторының жалпы синтаксисі:
const тип() operator;
operator const тип();
тип() const;
operator тип() const;
const тип();
Объектінің бір типінен екіншісіне айқын түрленуін анықтайтын түрлендіру операторының жалпы синтаксисі:
explicit тип() const;
extend operator тип() const;
extend const тип();
explicit const тип() operator;
explicit operator тип() const;
Операторлардың шамадан тыс жүктелуі:
Операторларды класстың ішінде анықтау
Кез келген операторды жүктеу
Оператордың жұмысын өзгерту үшін оны қайта анықтау
Жаңа операторларды құру
Операторлар функцияларын кластан тыс анықтау
Егер оператор класстың мүшесі болмаса, онда operator + функциясы қанша параметрді қабылдайды:
3
1
2
0
Параметрлер қажет емес
"Counter operator++()" функциясы қандай операторды жүктейді:
Логикалық терістеу
Массивке қол жеткізу
Арифметикалық қосу
Декремент
Инкремент
Операторларды қайта жүктеудің артықшылығы:
Бағдарламаның күрделілігін арттырады
Класстар арасында ыңғайлы әрекет етуге мүмкіндік береді
Операторлардың орындалуын бәсеңдетеді
Жаңа операторларды құруға мүмкіндік береді
Операторларды жоюға көмектеседі
Унарлы оператор функциясы қанша параметр алады:
4
3
2
0
1
"bool operator==(Counter c1, Counter c2)" қандай операцияны жүктейді:
Қосу
Азайту
Теңдікті тексеру
Арифметикалық көбейту
Қалдықты алу
"operator int() const" операторының түрі:
Арифметикалық оператор
Салыстыру операторы
Массив операторы
Түрлендіру операторы
Меншіктеу операторы
"Counter& operator+=(Counter c2)" операторының қызметі:
Қосу және меншіктеу
Операторды декременттеу
Арифметикалық бөлу
Салыстыру
Операторды инкременттеу
Конструктор арқылы түрлендіру қандай жағдайларда қолданылады:
Тек массивтер үшін
Кез келген класс үшін
Тек арифметикалық операцияларда
Бір типтен екіншісіне түрлендіру қажет болғанда
Түрлендіру қажет емес
Түрлендіру операторларында const кілт сөзі не үшін қолданылады?
Өлшемін азайту үшін
Жаңа объектілер құру үшін
Жадты босату үшін
Объектіні өзгертпеу үшін
Өлшемін арттыру үшін
"explicit" кілт сөзінің қызметі қандай?
Автоматты түрде түрлендіруді болдырмау
Келесі операторды қайта жүктеу
Операторды өзгерту
Класс функцияларын шақыру
Жаңа объектілер құру
