С тілінің операторлары және операциялары
Silk Way Халықаралық Университеті
СӨЖ
Тақырыбы - :__________________________________ ______
Орындаған: - _____________________
Тобы - :___________
Қабылдаған:____________________
Шымкент 2019ж.
С++ тілінің операторлары және операциялары
Жоспар:
1. Арифметикалық операциялар.Операцияны орындаудағы тәртіптер мен приоритеттер;
2. Шартты операторлар;
3. Циклдық операторлар;
4. Әдебиет;
1 .Арифметикалық операциялар
Мәліметтерді өңдеу кез-келген программаның негізгі мақсаты болып табылады. Әр түрлі типтегі мәліметтер әр түрлі сақталады және өңделеді. Негізгі мәліметтер типтерін сипаттау үшін келесі түйінді сөздер анықталған:
1. int (бүтін);
2. char (символды);
3. wchar_t (кеңейтілген символды);
4. bool (логикалық);
5. float - 3.4E- 38 және 3.4E+38 аралығындағы нақты сандар.
6. double - 1.7E-308 - 1.7E+308 аралығындағы жылжымалы нүктелі сандар.
Негізігі мәліметтер типтері:
Char- символдық, яғни таңбалық тип. Ұзындығы 8 бит-1 байт. Диапазогы -128...+127
Float-нақты ман типі,яғни жылыжымалы нүктелі санр. Ұзыныдғы 32бит 4байт,сандар дипазоны 3,4*...3,4*.
Double-2еселенген нақты сан типі. Ұзындығы 64 бит 8байт. Диапазоны 1,7* ... 1,7*
Int- бүтін сан типі.Ұзыдығы 16 бит 4 байт.Диапазоны -32768...32767.
Операндр - үстінен әрекет жүргізілетін деректер.Операнд ретінде тұрақтыр, массив әрекеттері(литералдар),айнымалыр, массив әрекетті мен функцияларды айтуға бы. Операнд операцияға жүргізілетін әрекеттерді анықтайды.Операцияр: Бинарлы;Унарлы; Тернарлы.Унарлы операция бір операндқа тиісті және оның белгісі операнд алдынан жазылады. Унарлы операциялар:
1. Арифметикалық теріске шығару
~ логикалық теріске шығару
логикалық теріске шығару
*бағыттау(жанама бағыттау)
& адресті есептеу
+ унарлы қосу
++ арттыру(инкремент)
1. Кеміту(декремент)
Size of - өлшем
Бинарлы операция екі операциялар арасындағы қатынасты өрнектейді және оның белгісі операндтар арасына жазылады, мысалы: X+Y. Бинарлы операциялар:
1. Аддитивті операциялар:
= меншіктеу
+= меншіктеу қосынды
-= меншіктеу айырмасы
1. Мультипликативті опрациялар:
*= меншіктеу көбейтіндісі
= меншіктеу бөлу
%= қалдықты меншіктеу
1. Жылжыту операциялары:
солға жылжыту
оңға жылжыту
1. Разрядты операциялар:
= кіші не тең
= үлкен не тең
кіші
үлкен
== тең
!= тең емес
!=0 ақиқат
==0 жалған.
Тернарлы операциялар.Операнд бір нақты болу керек. Егер операнд бір нөлге тең болмаса, онда операнд еі есептелінеді және бұл операция жауабы болып табылады.
Ескерту:операнд 2же 3есептелуде, бірақ бір мезетте 2 операнд бірдей есептелмейді.Нәтиже типі операнд 2 же 3ке байланысты өзгереді
1. Егер операнд 2 және 3 бүтін анықталмаған тип болса, онда арифметикалық өзгертулерден кейінгі типі болады.
2. Егер операнд 2 және 3 құрылымының түрі біріктіру немесе нұсқағыш болса, нәтиже типі құрылымның типі болып табылады.
3. Егер екі оперенд типтері Void болса, нәтиженің де типі Void болады.
4. Егер бір операнд кез келген типтегі нұсқағыш болса, ол басқа операнд Void нұсқағышта болса, онда нұсқағыш Void нұсқағышқа ауысады және осы нәтиже типі болады.
Егер операндта нұсқағыш болса, ал екінші операнд 0ге тең тұрақты болса, онда нұсқағыш типі болады.
Бағдарлама құрылымы. Айнымалылар және өрнектер.
1) #include директивасы. Бұл программаға көрсетілген файлдағы мәліметтерді қосады. Бұл директиваның екі формасы бар:
#include "басты файл "
# include басты файл
Егер файл аты тырнақшада берілсе, онда файл сәйкес көрсетілген маршрутпен анықталатын орыннан, ал ол көрсетілмесе жұмысшы каталогтан ізделеді. Егер файл аты бұрыштама жақшада ( ) берілсе, онда файл стандартты директориядан ізделеді. Басты тақырыптық файлдар: iostream.h, assert.h, float.h, math.h, ctype.h, limits.h, setjmp.h, errno.h, locale.h, signal.h, stdarg.h, stddef.h, stdlib.h, string.h, time.h.
2) #define директивасы. #define - директивасы жиі қолданылатын тұрақтыларды, қызметші сөздерді, операторларды және өрнектерді кейбір идентификаторлармен ауыстыруға мүмкіндік береді.
С++ тілінің базалық жабдықтары: тіл құрамы,тіл алфавиті (идентификаторлар, операциялар таңбалары, тұрақтылар) және комментарийлер. Кез-келген тілдегі мәтінде төрт негізгі элементті бөліп көрсетуге болады: символдар, сөздер, сөз тіркестері және сөйлемдер. Алгоритмдік тіл де осындай элементтерден тұрады: символдар, лексемалар, өрнектер, операторлар. Лексемалар символдардан, өрнектер лексемалардан және символдардан, ал операторлар символдардан, лексемалардан, өрнектерден тұрады: Символдар- негізгі бөлінбейтін таңбалар;Лексема- өзіндік мағынасы бар тіл бірлігі; Өрнек- қандай да бір мәннің есептелу ережесі;Оператор- қандай да бір істің аяқталған сипаттамасы. Тіл алфавиті: бас және кіші латын әріптері; 0-ден 9-ға дейінгі араб цифрлары; Арнайы белгілер: [] {} , . ( ) + - * \ % ; : ? = ! & # ^ " ' бос орынды символдар: бос орын (пробел), табуляция символы, жаңа жолға көшу символы. Символдардан лексемалар құралады: идентификаторлар; түйінді сөздер; операция таңбалары; тұрақтылар; бөлгіштер (жақша, нүкте, үтір, бос орынды символдар). Идентификаторлар - программалық объектінің аты. Әріп немесе сызық таңбасы идентификатордың бірінші символы болуы мүмкін, бірақ цифр бола алмайды. Түйінді сөздер - компилятор үшін арнайы мәні бар резервтелген идентификаторлар. Операция таңбалары - операндтарға қолда- нылатын бір немесе бірнеше символдар. Тұрақтылар - өзгермейтін шамалар.Комментарийлер - компилятор үшін маңызы жоқ программаның бөлігі және программа мәтінін оқу ыңғайлы болуы үшін қолданылады. Ол символынан басталады. Мәліметтерді өңдеу кез-келген программаның негізгі мақсаты болып табылады. Әр түрлі типтегі мәліметтер әр түрлі сақталады және өңделеді. Негізгі мәліметтер типтерін сипаттау үшін келесі түйінді сөздер анықталған: int (бүтін); char (символды); wchar_t (кеңейтілген символды); bool (логикалық); float - 3.4E- 38 және 3.4E+38 аралығындағы нақты сандар. 4. double - 1.7E-308 - 1.7E+308 аралығындағы жылжымалы нүктелі сандар. С++ тіліндегі программа препроцессор директивасынан, сипаттамалардан және функциялардан тұрады. Программа құрылымы: препроцессор директивалары
сипаттамалар
int main ()
{
бас функция операторлары
}
Программадағы бір функция main болуы тиіс. Программаның орындалуы осы функцияның бірінші операторынан басталады. Функцияның қарапайым анықталуының форматы: қайтарылатын_мәннің_типі аты ([параметрлер])
{функция денесінен құрайтын операторлар}
Функция қандай да бір мәнді есептеуден басталады, сондықтан оның типі көрсетілуі керек.Қажетті мағлұматтар:
1. егер функция мән қайтармаса, void типі көрсетіледі;
2. функция денесі блок болып табылады, сондықтан фигуралы жақшаға алынады;
3. әрбір оператор үтір-нүктемен аяқталады.
Айнымалыларды хабарлаудың негізгі формасының түрі:
Тип айнымалылар_тізімі;
Мысалы: int x, y, z;
Сипаттау кезінде айнымалыға бастапқы мән беруге болады, оны инициализация деп атайды. Инициализаторды екі түрлі формада беруге болады:
теңдік белгісімен
=мән немесе жай жақшамен (мән). Тұрақты хабарлау кезінде инициализациялануы тиіс. Мысалы: const char с=`с';
Блок ішінде анықталған айнымалы жергілікті, ал блок сыртында анықталған айнымалы ауқымды деп аталады. Кез-келген программада есептеулер жүргізіледі. Мәндерді есептеу үшін өрнектер қолданылады. Өрнектер операндтардан, операция таңбаларынан, жақшалардан тұрады. Әрбір операнд өз кезегінде өрнек, болмаса оның жеке жағдайы - тұрақты немесе айнымалы болып табылады. Өрнектің нәтижесі мәнмен немесе типпен сипатталады.
2. Шартты операторлар
Қандай да бір шарттың орындалуынан тәуелді құрастырғышты тармақталу деп атаймыз. Тармақталу операторлары: if, switch. if шартты операторы есептеу үрдісінің екі бағытта тармақталуы үшін қолданылады. Оператор форматы:
if (өрнек) оператор_1; [оператор_2;]
Шартты оператордың құрылымдық схемасы:
Мысалы:
#include iostream.h
#include math.h
int main () {
float x, y; int san;
cout "нысананың координаталарын енгізіңіз:\n";
cinxy;
if (x*x+y*y1) san=2;
else
if ((x*x+y*y1)&&(x*x+y*y4)) san=1;
else san=0;
cout"\n Ұпай саны"san;
return 0;}
Үтір (,) операторы - бір жолда жазылған 2 өрнекті тізбектеп орындауға мүмкіндік береді. Нәтижесінде үтірдің оң жағында орналасқан өрнектің мәні қабылданады.
Мысалы:
#include iostream.h
#include math.h
int main () {
float x, y; int san;
cout "нысананың координаталарын енгізіңіз:\n";
cinxy;
if (x*x+y*y1) san=2;
else
if ((x*x+y*y1)&&(x*x+y*y4)) san=1;
else san=0;
cout"\n Ұпай саны"san;
return 0;}
Үтір (,) операторы - бір жолда жазылған 2 өрнекті тізбектеп орындауға мүмкіндік береді. Нәтижесінде үтірдің оң жағында орналасқан өрнектің мәні қабылданады. switch операторы есептеу үрдісін бірнеше бағытта тармақтау үшін арналған.
Оператор форматы:
switch (өрнек) {
case тұрақты өрнек_1: [1_ оператор_ тізімі]
case тұрақты өрнек_2: [2_ оператор_ тізімі]
...
case тұрақты өрнек_n: [n_ оператор_ тізімі]
[default: операторлар]
}
switch оператор ын ың құрылымдық схемасы:
Мысалы:
#include iostream.h
#include math.h
int main () {
int a, b, c; char op;
cout "\n 1-ші операндты енгізіңіз:"; cina;
cout "\n Операция таңбасын енгізіңіз:"; cinop;
cout "\n 2-ші операндты енгізіңіз:"; cinb;
bool f=true;
switch (op) {
case `+': c=a+b; break;
case `-': c=a-b; break;
case `*': c=a*b; break;
case `': c=ab; break;
default: cout"\n Белгісіз операция"; f=false;
}
if (f) cout"\n ... жалғасы
СӨЖ
Тақырыбы - :__________________________________ ______
Орындаған: - _____________________
Тобы - :___________
Қабылдаған:____________________
Шымкент 2019ж.
С++ тілінің операторлары және операциялары
Жоспар:
1. Арифметикалық операциялар.Операцияны орындаудағы тәртіптер мен приоритеттер;
2. Шартты операторлар;
3. Циклдық операторлар;
4. Әдебиет;
1 .Арифметикалық операциялар
Мәліметтерді өңдеу кез-келген программаның негізгі мақсаты болып табылады. Әр түрлі типтегі мәліметтер әр түрлі сақталады және өңделеді. Негізгі мәліметтер типтерін сипаттау үшін келесі түйінді сөздер анықталған:
1. int (бүтін);
2. char (символды);
3. wchar_t (кеңейтілген символды);
4. bool (логикалық);
5. float - 3.4E- 38 және 3.4E+38 аралығындағы нақты сандар.
6. double - 1.7E-308 - 1.7E+308 аралығындағы жылжымалы нүктелі сандар.
Негізігі мәліметтер типтері:
Char- символдық, яғни таңбалық тип. Ұзындығы 8 бит-1 байт. Диапазогы -128...+127
Float-нақты ман типі,яғни жылыжымалы нүктелі санр. Ұзыныдғы 32бит 4байт,сандар дипазоны 3,4*...3,4*.
Double-2еселенген нақты сан типі. Ұзындығы 64 бит 8байт. Диапазоны 1,7* ... 1,7*
Int- бүтін сан типі.Ұзыдығы 16 бит 4 байт.Диапазоны -32768...32767.
Операндр - үстінен әрекет жүргізілетін деректер.Операнд ретінде тұрақтыр, массив әрекеттері(литералдар),айнымалыр, массив әрекетті мен функцияларды айтуға бы. Операнд операцияға жүргізілетін әрекеттерді анықтайды.Операцияр: Бинарлы;Унарлы; Тернарлы.Унарлы операция бір операндқа тиісті және оның белгісі операнд алдынан жазылады. Унарлы операциялар:
1. Арифметикалық теріске шығару
~ логикалық теріске шығару
логикалық теріске шығару
*бағыттау(жанама бағыттау)
& адресті есептеу
+ унарлы қосу
++ арттыру(инкремент)
1. Кеміту(декремент)
Size of - өлшем
Бинарлы операция екі операциялар арасындағы қатынасты өрнектейді және оның белгісі операндтар арасына жазылады, мысалы: X+Y. Бинарлы операциялар:
1. Аддитивті операциялар:
= меншіктеу
+= меншіктеу қосынды
-= меншіктеу айырмасы
1. Мультипликативті опрациялар:
*= меншіктеу көбейтіндісі
= меншіктеу бөлу
%= қалдықты меншіктеу
1. Жылжыту операциялары:
солға жылжыту
оңға жылжыту
1. Разрядты операциялар:
= кіші не тең
= үлкен не тең
кіші
үлкен
== тең
!= тең емес
!=0 ақиқат
==0 жалған.
Тернарлы операциялар.Операнд бір нақты болу керек. Егер операнд бір нөлге тең болмаса, онда операнд еі есептелінеді және бұл операция жауабы болып табылады.
Ескерту:операнд 2же 3есептелуде, бірақ бір мезетте 2 операнд бірдей есептелмейді.Нәтиже типі операнд 2 же 3ке байланысты өзгереді
1. Егер операнд 2 және 3 бүтін анықталмаған тип болса, онда арифметикалық өзгертулерден кейінгі типі болады.
2. Егер операнд 2 және 3 құрылымының түрі біріктіру немесе нұсқағыш болса, нәтиже типі құрылымның типі болып табылады.
3. Егер екі оперенд типтері Void болса, нәтиженің де типі Void болады.
4. Егер бір операнд кез келген типтегі нұсқағыш болса, ол басқа операнд Void нұсқағышта болса, онда нұсқағыш Void нұсқағышқа ауысады және осы нәтиже типі болады.
Егер операндта нұсқағыш болса, ал екінші операнд 0ге тең тұрақты болса, онда нұсқағыш типі болады.
Бағдарлама құрылымы. Айнымалылар және өрнектер.
1) #include директивасы. Бұл программаға көрсетілген файлдағы мәліметтерді қосады. Бұл директиваның екі формасы бар:
#include "басты файл "
# include басты файл
Егер файл аты тырнақшада берілсе, онда файл сәйкес көрсетілген маршрутпен анықталатын орыннан, ал ол көрсетілмесе жұмысшы каталогтан ізделеді. Егер файл аты бұрыштама жақшада ( ) берілсе, онда файл стандартты директориядан ізделеді. Басты тақырыптық файлдар: iostream.h, assert.h, float.h, math.h, ctype.h, limits.h, setjmp.h, errno.h, locale.h, signal.h, stdarg.h, stddef.h, stdlib.h, string.h, time.h.
2) #define директивасы. #define - директивасы жиі қолданылатын тұрақтыларды, қызметші сөздерді, операторларды және өрнектерді кейбір идентификаторлармен ауыстыруға мүмкіндік береді.
С++ тілінің базалық жабдықтары: тіл құрамы,тіл алфавиті (идентификаторлар, операциялар таңбалары, тұрақтылар) және комментарийлер. Кез-келген тілдегі мәтінде төрт негізгі элементті бөліп көрсетуге болады: символдар, сөздер, сөз тіркестері және сөйлемдер. Алгоритмдік тіл де осындай элементтерден тұрады: символдар, лексемалар, өрнектер, операторлар. Лексемалар символдардан, өрнектер лексемалардан және символдардан, ал операторлар символдардан, лексемалардан, өрнектерден тұрады: Символдар- негізгі бөлінбейтін таңбалар;Лексема- өзіндік мағынасы бар тіл бірлігі; Өрнек- қандай да бір мәннің есептелу ережесі;Оператор- қандай да бір істің аяқталған сипаттамасы. Тіл алфавиті: бас және кіші латын әріптері; 0-ден 9-ға дейінгі араб цифрлары; Арнайы белгілер: [] {} , . ( ) + - * \ % ; : ? = ! & # ^ " ' бос орынды символдар: бос орын (пробел), табуляция символы, жаңа жолға көшу символы. Символдардан лексемалар құралады: идентификаторлар; түйінді сөздер; операция таңбалары; тұрақтылар; бөлгіштер (жақша, нүкте, үтір, бос орынды символдар). Идентификаторлар - программалық объектінің аты. Әріп немесе сызық таңбасы идентификатордың бірінші символы болуы мүмкін, бірақ цифр бола алмайды. Түйінді сөздер - компилятор үшін арнайы мәні бар резервтелген идентификаторлар. Операция таңбалары - операндтарға қолда- нылатын бір немесе бірнеше символдар. Тұрақтылар - өзгермейтін шамалар.Комментарийлер - компилятор үшін маңызы жоқ программаның бөлігі және программа мәтінін оқу ыңғайлы болуы үшін қолданылады. Ол символынан басталады. Мәліметтерді өңдеу кез-келген программаның негізгі мақсаты болып табылады. Әр түрлі типтегі мәліметтер әр түрлі сақталады және өңделеді. Негізгі мәліметтер типтерін сипаттау үшін келесі түйінді сөздер анықталған: int (бүтін); char (символды); wchar_t (кеңейтілген символды); bool (логикалық); float - 3.4E- 38 және 3.4E+38 аралығындағы нақты сандар. 4. double - 1.7E-308 - 1.7E+308 аралығындағы жылжымалы нүктелі сандар. С++ тіліндегі программа препроцессор директивасынан, сипаттамалардан және функциялардан тұрады. Программа құрылымы: препроцессор директивалары
сипаттамалар
int main ()
{
бас функция операторлары
}
Программадағы бір функция main болуы тиіс. Программаның орындалуы осы функцияның бірінші операторынан басталады. Функцияның қарапайым анықталуының форматы: қайтарылатын_мәннің_типі аты ([параметрлер])
{функция денесінен құрайтын операторлар}
Функция қандай да бір мәнді есептеуден басталады, сондықтан оның типі көрсетілуі керек.Қажетті мағлұматтар:
1. егер функция мән қайтармаса, void типі көрсетіледі;
2. функция денесі блок болып табылады, сондықтан фигуралы жақшаға алынады;
3. әрбір оператор үтір-нүктемен аяқталады.
Айнымалыларды хабарлаудың негізгі формасының түрі:
Тип айнымалылар_тізімі;
Мысалы: int x, y, z;
Сипаттау кезінде айнымалыға бастапқы мән беруге болады, оны инициализация деп атайды. Инициализаторды екі түрлі формада беруге болады:
теңдік белгісімен
=мән немесе жай жақшамен (мән). Тұрақты хабарлау кезінде инициализациялануы тиіс. Мысалы: const char с=`с';
Блок ішінде анықталған айнымалы жергілікті, ал блок сыртында анықталған айнымалы ауқымды деп аталады. Кез-келген программада есептеулер жүргізіледі. Мәндерді есептеу үшін өрнектер қолданылады. Өрнектер операндтардан, операция таңбаларынан, жақшалардан тұрады. Әрбір операнд өз кезегінде өрнек, болмаса оның жеке жағдайы - тұрақты немесе айнымалы болып табылады. Өрнектің нәтижесі мәнмен немесе типпен сипатталады.
2. Шартты операторлар
Қандай да бір шарттың орындалуынан тәуелді құрастырғышты тармақталу деп атаймыз. Тармақталу операторлары: if, switch. if шартты операторы есептеу үрдісінің екі бағытта тармақталуы үшін қолданылады. Оператор форматы:
if (өрнек) оператор_1; [оператор_2;]
Шартты оператордың құрылымдық схемасы:
Мысалы:
#include iostream.h
#include math.h
int main () {
float x, y; int san;
cout "нысананың координаталарын енгізіңіз:\n";
cinxy;
if (x*x+y*y1) san=2;
else
if ((x*x+y*y1)&&(x*x+y*y4)) san=1;
else san=0;
cout"\n Ұпай саны"san;
return 0;}
Үтір (,) операторы - бір жолда жазылған 2 өрнекті тізбектеп орындауға мүмкіндік береді. Нәтижесінде үтірдің оң жағында орналасқан өрнектің мәні қабылданады.
Мысалы:
#include iostream.h
#include math.h
int main () {
float x, y; int san;
cout "нысананың координаталарын енгізіңіз:\n";
cinxy;
if (x*x+y*y1) san=2;
else
if ((x*x+y*y1)&&(x*x+y*y4)) san=1;
else san=0;
cout"\n Ұпай саны"san;
return 0;}
Үтір (,) операторы - бір жолда жазылған 2 өрнекті тізбектеп орындауға мүмкіндік береді. Нәтижесінде үтірдің оң жағында орналасқан өрнектің мәні қабылданады. switch операторы есептеу үрдісін бірнеше бағытта тармақтау үшін арналған.
Оператор форматы:
switch (өрнек) {
case тұрақты өрнек_1: [1_ оператор_ тізімі]
case тұрақты өрнек_2: [2_ оператор_ тізімі]
...
case тұрақты өрнек_n: [n_ оператор_ тізімі]
[default: операторлар]
}
switch оператор ын ың құрылымдық схемасы:
Мысалы:
#include iostream.h
#include math.h
int main () {
int a, b, c; char op;
cout "\n 1-ші операндты енгізіңіз:"; cina;
cout "\n Операция таңбасын енгізіңіз:"; cinop;
cout "\n 2-ші операндты енгізіңіз:"; cinb;
bool f=true;
switch (op) {
case `+': c=a+b; break;
case `-': c=a-b; break;
case `*': c=a*b; break;
case `': c=ab; break;
default: cout"\n Белгісіз операция"; f=false;
}
if (f) cout"\n ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz