Лабораториялық жұмыстың мақсаты: Студенттерде абстрактілі кластардан мұралаумен байланысты дағдыларды қалыптастыру.
Лабораториялық жұмысты орындау нәтижесінде студенттер келесі қабілеттерге ие болады:
Абстрактілі базалық класты құру;
Базалық кластан мұралайтын туынды класты құру.
Тапсырма:8-дәріс материалдарын қайта қарастырып, төменде берілген тапсырмаларды нұсқаңызға сәйкес орындаңыз.
Тапсырмалар 1-нұсқа Фигура абстрактылы базалық класын құрып, оның құрамында аудан мен периметрді есептейтін абстрактылы әдістерді анықтаңыз. Бұл кластан туынды Шеңбер және Трапеция кластарын құрып, олардың құрамында аудан мен периметрді есептеу әдістерін қайта анықтаңыз. Аталған кластар құрамында қажетті өрістерді және оларды базалық немесе туынды класта анықтаудың дұрыстығы туралы шешімді өзіңіз қабылдаңыз.
2-нұсқа Array абстрактылы базалық класын құрыңыз. Құрамында қосындыны табу және жиымды элементтік өңдеу әдістерін жариялаңыз. AndArray және OrArray туынды кластарын құрыңыз. AndArray класында қосындыны табу операциясы жиындардың қиылысуы ретінде, ал өңдеу әдісі квадрат түбірді табу арқылы жүзеге асырылады. OrArray класында қосындыны табу операциясы жиындардың бірігуі ретінде, ал өңдеу әдісі логарифмді табу арқылы жүзеге асырылады.
3-нұсқа Валюта абстрактылы базалық класын құрып, оның құрамында теңгеге аудару және экранға шығару абстрактылы әдістерін анықтаңыз. Бұл кластан туынды Доллар және Рубль кластарын құрып, олардың құрамында теңгеге аудару және экранға шығару әдістерін қайта анықтаңыз. Аталған кластар құрамында қажетті өрістерді және оларды базалық немесе туынды класта анықтаудың дұрыстығы туралы шешімді өзіңіз қабылдаңыз.
4-нұсқа Pair абстрактілі базалық класын анықтап, құрамында қосу және азайту әдістерін жариялаңыз. Fuzzy және Fraction туынды кластарын құрыңыз, Fuzzy класының өрістері: үштігі, әдістерді жүзеге асыру ережелері: қосу: A+B=(A+B-a1-b1, A+B, A+B+a2+b2); азайту: A-B=(A-B-a1-b1, A-B, A-B+a2+b2). Fraction класының өрістері: санның алымы мен бөлімін білдіретін екі бүтін сан, қосу және азайту әдістерін кластың мағынасына сәйкес жүзеге асырыңыз.
5-нұсқа Үштік (үш бүтін сандық өрістен тұратын класс) абстрактылы базалық класын құрып, оның құрамында әрбір өрістің мәнін бірге арттыратын жеке абстрактылы әдістерді анықтаңыз. Бұл кластан туынды Мерзім (Дата) және Уақыт кластарын құрып, олардың құрамында әрбір өріс мәнін бірге арттыратын әдістерді қайта анықтаңыз. Аталған кластар құрамында қажетті өрістерді және оларды базалық немесе туынды класта анықтаудың дұрыстығы туралы шешімді өзіңіз қабылдаңыз.
6-нұсқа Прогрессия абстрактылы базалық класын құрыңыз, құрамында n-ші элементті және n-ші қосындыны табу операцияларын жариялаңыз. Туынды кластары: арифметикалық және геометриялық. Туынды кластарда операциялардың жүзеге асырылу ережелерін анықтаңыз.
7-нұсқа Түбір абстрактылы базалық класын құрып, оның құрамында түбірлерді есептеп, нәтижені экранға шығару абстрактылы әдістерін анықтаңыз. Бұл кластан туынды Сызықтық және Квадрат кластарын құрып, олардың құрамында сәйкесінше, сызықтық және квадрат теңдеулер түбірлерін табу және экранға шығару әдістерін қайта анықтаңыз. Аталған кластар құрамында қажетті өрістерді және оларды базалық немесе туынды класта анықтаудың дұрыстығы туралы шешімді өзіңіз қабылдаңыз.
8-нұсқа Pair абстрактілі базалық класын анықтап, құрамында қосу және азайту әдістерін жариялаңыз. Қаражат және Комплекс туынды кластарын құрыңыз, Қаражат класының өрістері: теңге мен тиын түріндегі қаражат, қосу және азайту әдістерін жүзеге асырыңыз. Комплекс класының өрістері: санның нақты және жорамал бөліктері, қосу және азайту әдістері келесі ережелер бойынша жүзеге асырыңыз: қосу: (a,b)+(c,d)= (a+b,c+d); азайту: (a,b)-(c,d)= (a-b,c-d);
9-нұсқа Сан абстрактылы базалық класын құрып, оның құрамында негізгі арифметикалық операцияларды орындайтын абстрактылы әдістерді анықтаңыз. Бұл кластан туынды Бүтін және Бөлшек (санның алымы мен бөлімін білдіретін екі бүтін сандық өрістен тұрады) кластарын құрып, олардың құрамында арифметикалық операцияларды орындау әдістерін қайта анықтаңыз. Аталған кластар құрамында қажетті өрістерді және оларды базалық немесе туынды класта анықтаудың дұрыстығы туралы шешімді өзіңіз қабылдаңыз.
10-нұсқа Үштік абстрактілі базалық класын құрыңыз. Құрамында өрістердің мәндерін бірге арттыру әдістерін жариялаңыз. Туынды Дата және Уақыт кластарын құрып, өрістер мәндерін бірге арттыру әдістерін анықтаңыз.
11-нұсқа Норма абстрактылы базалық класын құрып, оның құрамында норманы және модульді есептеуге арналған абстрактылы әдістерді анықтаңыз. Бұл кластан туынды Комплекс_сан және Үшөлшемді_вектор кластарын құрып, олардың құрамында норманы және модульді есептеуге арналған әдістерді қайта анықтаңыз. Аталған кластар құрамында қажетті өрістерді және оларды базалық немесе туынды класта анықтаудың дұрыстығы туралы шешімді өзіңіз қабылдаңыз.
12-нұсқа Геометриялық_дене абстрактылы базалық класын құрып, оның құрамында толық бетінің ауданын және көлемін есептеуге арналған абстрактылы әдістерді анықтаңыз. Бұл кластан туынды Цилиндр және Текше кластарын құрып, олардың құрамында денелердің толық бетінің ауданын және көлемін есептеуге арналған әдістерді қайта анықтаңыз. Аталған кластар құрамында қажетті өрістерді және оларды базалық немесе туынды класта анықтаудың дұрыстығы туралы шешімді өзіңіз қабылдаңыз.