Cîçäaòü aáñòðaêòíûé êëaññ CVehicle. Ía åãî îñíîâå ðåaëèçîâaòü êëaññû CPlane, CCar è CShip. Êëaññû äîëæíû èìåòü âîçìîæíîñòü çaäaâaòü è ïîëó÷aòü êîîðäè- íaòû, ïaðaìåòðû ñðåäñòâ ïåðåäâèæåíèя (öåía, ñêîðîñòü, ãîä âûïóñêa). Äëя ñaìî- ëåòa äîëæía áûòü îïðåäåëåía âûñîòa, äëя ñaìîëåòa è êîðaáëя — êîëè÷åñòâî ïañ- ñaæèðîâ. Äëя êîðaáëя — ïîðò ïðèïèñêè.
Íaïèñaòü ïðîãðaììó, ñîçäaþùóþ ñïèñîê îáúåêòîâ ýòèõ êëaññîâ â äèíaìè÷åñêîé ïaìяòè. Ïðîãðaììa äîëæía ñîäåðæaòü ìåíþ, ïîçâîëяþùåå îñóùåñòâèòü ïðîâåð- êó âñåõ ìåòîäîâ êëaññîâ.
Вариант 4
Îïèñaòü áaçîâûé êëaññ «Ýëåìåíò». Ïîëя:
èìя ýëåìåíòa (óêaçaòåëü ía ñòðîêó ñèìâîëîâ);
êîëè÷åñòâî âõîäîâ ýëåìåíòa;
êîëè÷åñòâî âûõîäîâ ýëåìåíòa.
Ìåòîäû:
êîíñòðóêòîð êëañña;
äåñòðóêòîð êëañña;
ìåòîä, çaäaþùèé èìя ýëåìåíòa.
Ía îñíîâå êëañña «Ýëåìåíò» îïèñaòü ïðîèçâîäíûé êëaññ «Êîìáèíaöèîí- íûé», ïðåäñòaâëяþùèé ñîáîé êîìáèíaöèîííûé ýëåìåíò (äâîè÷íûé âåíòèëü), êîòîðûé ìîæåò èìåòü íåñêîëüêî âõîäîâ è îäèí âûõîä.
Ïîëя:
óêaçaòåëü, èñïîëüçóåìûé äëя äèíaìè÷åñêîãî ðaçìåùåíèя ïîëåé, ñîäåðæa- ùèõ çía÷åíèя âõîäîâ.
Ìåòîäû:
êîíñòðóêòîð;
êîíñòðóêòîð êîïèðîâaíèя;
äåñòðóêòîð;
ìåòîä, çaäaþùèé çía÷åíèå ía âõîäaõ ýêçåìïëяða êëañña;
ìåòîä, ïîçâîëяþùèé îïðaøèâaòü ñîñòîяíèå îòäåëüíîãî âõîäa ýêçåìïëяða êëañña;
ìåòîä, âû÷èñëяþùèé çía÷åíèå âûõîäa (ïî âaðèaíòó çaäaíèя).
Ía îñíîâå êëañña «Ýëåìåíò» îïèñaòü ïðîèçâîäíûé êëaññ «Ïaìяòü», ïðåäñòaâ- ëяþùèõ ñîáîé òðèããåð. Òðèããåð èìååò âõîäû, ñîîòâåòñòâóþùèå òèïó òðèããåða (ñì. íèæå âaðèaíò çaäaíèя), è âõîäû óñòaíîâêè è ñáðîña. Âñå òðèããåðû ñ÷èòa- þòñя ñèíõðîííûìè, ñaì ñèíõðîâõîä â ñîñòaâ òðèããåða íå âêëþ÷aåòñя.
Ïîëя:
ìaññèâ çía÷åíèé âõîäîâ îáúåêòa êëañña (çaäaåòñя ñòaòè÷åñêè), â ìaññèâå ó÷èòûâaþòñя âñå âõîäû (óïðaâëяþùèå è èíôîðìaöèîííûå);
ñîñòîяíèå ía ïðяìîì âûõîäå òðèããåða;
ñîñòîяíèå ía èíâåðñíîì âûõîäå òðèããåða. Ìåòîäû:
êîíñòðóêòîð (ïî óìîë÷aíèþ ñáðañûâaåò ýêçåìïëяð êëañña);
êîíñòðóêòîð êîïèðîâaíèя;
äåñòðóêòîð;
ìåòîä, çaäaþùèé çía÷åíèå ía âõîäaõ ýêçåìïëяða êëañña;
ìåòîäû, ïîçâîëяþùèå îïðaøèâaòü ñîñòîяíèя îòäåëüíîãî âõîäa ýêçåìïëя- ða êëañña;
ìåòîä, âû÷èñëяþùèé ñîñòîяíèå ýêçåìïëяða êëañña (ïî âaðèaíòó çaäaíèя) â çaâèñèìîñòè îò òåêóùåãî ñîñòîяíèя è çía÷åíèé ía âõîäaõ;
ìåòîä, ïåðåîïðåäåëяþùèé îïåðaöèþ == äëя ýêçåìïëяðîâ êëañña.
Cîçäaòü êëaññ «Ðåãèñòð», èñïîëüçóя êëaññ «Ïaìяòü» êaê âêëþ÷aåìûé êëaññ. Ïîëя:
ñîñòîяíèå âõîäa «Cáðîñ» — îäèí äëя ýêçåìïëяða êëañña;
ñîñòîяíèå âõîäa «Óñòaíîâêa» — îäèí äëя ýêçåìïëяða êëañña;
ñòaòè÷åñêèé ìaññèâ òèïa «Ïaìяòü» çaäaííîé â âaðèaíòå ðaçìåðíîñòè;
ñòaòè÷åñêèé(å) ìaññèâ(û), ñîäåðæaùèå çía÷åíèя ía ñîîòâåòñòâóþùèõ âõî- äaõ ýëåìåíòîâ ìaññèâa òèïa «Ïaìяòü».
Ìåòîäû:
ìåòîä, çaäaþùèé çía÷åíèå ía âõîäaõ ýêçåìïëяða êëañña (æåëaòåëüíî â êa-
÷åñòâå ïaðaìåòðîâ ïåðåäaâaòü ìåòîäó óêaçaòåëè ía ìaññèâû çía÷åíèé);
ìåòîä, ïîçâîëяþùèé îïðaøèâaòü ñîñòîяíèå îòäåëüíîãî âûõîäa ýêçåìïëя- ða êëañña;
ìåòîä, âû÷èñëяþùèé çía÷åíèå íîâîãî ñîñòîяíèя ýêçåìïëяða êëañña.
Âñå ïîëя êëaññîâ «Ýëåìåíò», «Êîìáèíaöèîííûé» è «Ïaìяòü» äîëæíû áûòü îïè- ñaíû ñ êëþ÷åâûì ñëîâîì privatå.
 çaäaíèè ïåðå÷èñëåíû òîëüêî îáяçaòåëüíûå ÷ëåíû è ìåòîäû êëañña. Ìîæíî ça- äaâaòü äîïîëíèòåëüíûå ÷ëåíû è ìåòîäû, åñëè îíè íå îòìåíяþò îáяçaòåëüíûå è îáåñïå÷èâaþò äîïîëíèòåëüíûå óäîáñòâa ïðè ðaáîòå ñ äaííûìè êëaññaìè, íaïðè- ìåð, îïèñaòü ôóíêöèè âû÷èñëåíèя âûõîäa/ñîñòîяíèя êaê âèðòóaëüíûå.
Äëя ïðîâåðêè ôóíêöèîíèðîâaíèя ñîçäaííûõ êëaññîâ íaïèñaòü ïðîãðaììó, èñïîëüçóþùóþ ýòè êëaññû. Â ïðîãðaììå äîëæíû áûòü ïðîäåìîíñòðèðîâaíû âñå ñâîéñòâa ñîçäaííûõ êëaññîâ.
Êîíêðåòíûé òèï êîìáèíaöèîííîãî ýëåìåíòa, òèï òðèããåða è ðaçðяäíîñòü ðåãèñò- ða âûáèðaþòñя â ñîîòâåòñòâèè ñ âaðèaíòîì çaäaíèя.
Вариант
|
Комбинационный элемент
|
Число входов
|
Триггер
|
Разрядность регистра
|
1
|
È-ÍÅ
|
4
|
RS
|
8
|
2
|
ÈËÈ
|
5
|
RST
|
10
|
3
|
ÌÎÄ2-ÍÅ
|
6
|
D
|
12
|
4
|
È
|
8
|
T
|
8
|
5
|
ÈËÈ-ÍÅ
|
8
|
V
|
9
|
6
|
È
|
4
|
RS
|
10
|
7
|
ÈËÈ-ÍÅ
|
5
|
JK
|
11
|
8
|
ÌÎÄ2
|
5
|
D
|
8
|
9
|
È
|
4
|
T
|
10
|
10
|
ÈËÈ
|
3
|
JK
|
8
|
11
|
È-ÍÅ
|
3
|
RS
|
12
|
12
|
ÈËÈ-ÍÅ
|
4
|
RST
|
4
|
13
|
ÌÎÄ2
|
5
|
D
|
10
|
14
|
ÌÎÄ2-ÍÅ
|
6
|
T
|
10
|
15
|
ÈËÈ-ÍÅ
|
8
|
V
|
10
|
Вариант
|
Комбинационный элемент
|
Число входов
|
Триггер
|
Разрядность регистра
|
16
|
È
|
8
|
JK
|
6
|
17
|
È-ÍÅ
|
8
|
RS
|
10
|
18
|
ÈËÈ
|
8
|
T
|
10
|
19
|
ÌÎÄ2
|
6
|
JK
|
8
|
20
|
ÌÎÄ2-ÍÅ
|
5
|
V
|
10
|
Вариант 5
Îïèñaòü áaçîâûé êëaññ CÒÐÎÊÀ. Îáяçaòåëüíûå ïîëя êëañña:
óêaçaòåëü ía Char — õðaíèò aäðåñ äèíaìè÷åñêè âûäåëåííîé ïaìяòè äëя ðaçìå- ùåíèя ñèìâîëîâ ñòðîêè;
çía÷åíèå òèïa int — õðaíèò äëèíó ñòðîêè â áaéòaõ. Îáяçaòåëüíûå ìåòîäû äîëæíû âûïîëíяòü ñëåäóþùèå äåéñòâèя:
êîíñòðóêòîð áåç ïaðaìåòðîâ;
êîíñòðóêòîð, ïðèíèìaþùèé â êa÷åñòâå ïaðaìåòða Cè-ñòðîêó (çaêaí÷èâaåòñя íóëåâûì áaéòîì);
êîíñòðóêòîð, ïðèíèìaþùèé â êa÷åñòâå ïaðaìåòða ñèìâîë;
êîíñòðóêòîð êîïèðîâaíèя;
ïîëó÷åíèå äëèíû ñòðîêè;
î÷èñòêa ñòðîêè (ñäåëaòü ñòðîêó ïóñòîé);
äåñòðóêòîð.
Îïèñaòü ïðîèçâîäíûé îò CÒÐÎÊÀ êëaññ CÒÐÎÊÀ_ÈÄÅÍÒÈÔÈÊÀÒÎÐ.
Còðîêè äaííîãî êëañña ñòðîяòñя ïî ïðaâèëaì çaïèñè èäåíòèôèêaòîðîâ â яçûêå C è ìîãóò âêëþ÷aòü â ñåáя òîëüêî òå ñèìâîëû, êîòîðûå ìîãóò âõîäèòü â ñîñòaâ C-èäåíòèôèêaòîðîâ. Åñëè èñõîäíûå äaííûå ïðîòèâîðå÷aò ïðaâèëaì çaïèñè èäåíòèôèêaòîða, òî ñîçäaåòñя ïóñòaя CÒÐÎÊÀ_ÈÄÅÍÒÈÔÈÊÀÒÎÐ.
Îáяçaòåëüíûå ìåòîäû:
êîíñòðóêòîð áåç ïaðaìåòðîâ;
êîíñòðóêòîð, ïðèíèìaþùèé â êa÷åñòâå ïaðaìåòða Cè-ñòðîêó (çaêaí÷èâaåòñя íóëåâûì áaéòîì);
êîíñòðóêòîð, ïðèíèìaþùèé â êa÷åñòâå ïaðaìåòða ñèìâîë;
êîíñòðóêòîð êîïèðîâaíèя;
ïåðåâîä âñåõ ñèìâîëîâ ñòðîêè â âåðõíèé ðåãèñòð;
ïåðåâîä âñåõ ñèìâîëîâ ñòðîêè â íèæíèé ðåãèñòð;
ïîèñê ïåðâîãî âõîæäåíèя ñèìâîëa â ñòðîêó;
äåñòðóêòîð.
Ïåðåîïðåäåëèòü ñëåäóþùèå îïåðaöèè:
ïðèñâaèâaíèå (=);
ñëîæåíèå (+) — îïåðaöèя êîíêaòåíaöèè ñòðîê;
âû÷èòaíèå (–) — èç ñòðîêè (ïåðâûé îïåðaíä) óäaëяþòñя âñå ñèìâîëû, âõîäя- ùèå â ñòðîêó, — âòîðîé îïåðaíä, ïðè ýòîì ìîæåò ïîëó÷èòüñя ïóñòaя ñòðîêa;
îïåðaòîð — ïðîâåðêa ía áîëüøå. Còðîêa ñ÷èòaåòñя áîëüøå äðóãîé, åñëè êîä ñèìâîëa ïåðâîé ñòðîêè â i-é ïîçèöèè (i èçìåíяåòñя îò 0 äî n–1, ãäå n — äëèía áîëåå êîðîòêîé ñòðîêè) áîëüøå êîäa ñèìâîëa â òîé æå ïîçèöèè âî âòîðîé ñòðîêå, äëèíû ñòðîê ìîãóò íå ñîâïaäaòü.
îïåðaòîð < — ïðîâåðêa ía ìåíüøå. Còðîêa ñ÷èòaåòñя ìåíüøå äðóãîé, åñëè êîä ñèìâîëa ïåðâîé ñòðîêè â i-é ïîçèöèè (i èçìåíяåòñя îò 0 äî n–1, ãäå n — äëèía áîëåå êîðîòêîé ñòðîêè) ìåíüøå êîäa ñèìâîëa â òîé æå ïîçèöèè êîäa ñèìâîëa â òîé æå ïîçèöèè âî âòîðîé ñòðîêå, äëèíû ñòðîê ìîãóò íå ñîâïaäaòü.
Ðaçðaáîò÷èê âïðaâå ââîäèòü ëþáîå (ñ îáîñíîâaíèåì íåîáõîäèìîñòè) ÷èñëî äî- ïîëíèòåëüíûõ ïîëåé è ìåòîäîâ.
Íaïèñaòü òåñòîâóþ ïðîãðaììó, êîòîðaя:
äèíaìè÷åñêè âûäåëяåò ìaññèâ óêaçaòåëåé ía áaçîâûé êëaññ (4–6);
â ðåæèìå äèaëîãa çaïîëíяåò ýòîò ìaññèâ óêaçaòåëяìè ía ïðîèçâîäíûå êëañ- ñû, ïðè ýòîì ýêçåìïëяðû ïðîèçâîäíûõ êëaññîâ ñîçäaþòñя äèíaìè÷åñêè ñ ça- äaíèåì ía÷aëüíûõ çía÷åíèé;
äëя ñîçäaííûõ ýêçåìïëяðîâ ïðîèçâîäíûõ êëaññîâ âûïîëíяåò ïðîâåðêó âñåõ ðaçðaáîòaííûõ ìåòîäîâ ñ âûâîäîì èñõîäíûõ äaííûõ è ðåçóëüòaòîâ ía äèñ- ïëåé.
Äëя êîíñòðóêòîðîâ êîïèðîâaíèя êaæäîãî êëañña ïðåäóñìîòðåòü äèaãíîñòè÷å- ñêóþ ïå÷aòü êîëè÷åñòâa åãî âûçîâîâ â îïðåäåëåííîå ìåñòî äèñïëåя (ðåêîìåíäó- åòñя èñïîëüçîâaòü ñòaòè÷åñêèå ÷ëåíû êëañña).
Ðåæèì äèaëîãa îáåñïå÷èâaåòñя ñ ïîìîùüþ èåðaðõè÷åñêîãî ìåíþ.
Do'stlaringiz bilan baham: |