Задача этой книги дать краткое и четкое изложение языка С++ в соответствии со стандар том iso/iec 14882. Она предназначена для студентов, изучающих язык «с нуля»



Download 2 Mb.
bet103/232
Sana29.03.2022
Hajmi2 Mb.
#516205
TuriЗадача
1   ...   99   100   101   102   103   104   105   106   ...   232
Bog'liq
Т. А. Павловская C C . Программирование на языке высокого уровня

Вариант 16


Cîñò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íèя.

Вариант 17


Ía ìåæäóãîðîäíîé òåëåôîííîé ñòaíöèè êaðòîòåê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;

  • âûâîäèò èçâåùåíèå ía îïëaòó òåëåôîííîãî ðaçãîâîða.

Ïðîãðaììa äîëæía îáåñïå÷èâaòü äèaëîã ñ ïîìîùüþ ìåíþ è êîíòðîëü îøèáîê ïðè ââîäå.

Вариант 18


Ía ìåæäóãîðîäíîé òåëåôîííîé ñòaíöèè êaðòîòåê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;

  • âûâîäèò èçâåùåíèå ía îïëaòó òåëåôîííîãî ðaçãîâîða.

Ïðîãðaììa äîëæía îáåñïå÷èâaòü äèaëîã ñ ïîìîùüþ ìåíþ è êîíòðîëü îøèáîê ïðè ââîäå.

Вариант 19


Àâòîì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öèîííóþ ñèñòåìó è ôîðìèðîâaíèå ëèíåéíîãî ñïèñêa;

  • ïðîèçâîäèò âûâîä âñåãî ñïèñêa;

  • ââîäèò íîìåð ïîåçäa è âûâîäèò âñå äaííûå îá ýòîì ïîåçäå;

  • ââîäèò íaçâaíèå ñòaíöèè íaçía÷åíèя è âûâîäèò äaííûå îáî âñåõ ïîåçäaõ, ñëå- äóþùèõ äî ýòîé ñòaíöèè.

Ïðîãðaììa äîëæía îáåñïå÷èâaòü äèaëîã ñ ïîìîùüþ ìåíþ è êîíòðîëü îøèáîê ïðè ââîäå.

Вариант 20


Àâòîì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öèîííóþ ñèñòåìó è ôîð- ìèðîâaíèå äâîè÷íîãî äåðåâa;

  • ïðîèçâîäèò âûâîä âñåãî äåðåâa;

  • ââîäèò íîìåð ïîåçäa è âûâîäèò âñå äaííûå îá ýòîì ïîåçäå;

  • ââîäèò íaçâaíèå ñòaíöèè íaçía÷åíèя è âûâîäèò äaííûå î âñåõ ïîåçäaõ, ñëå- äóþùèõ äî ýòîé ñòaíöèè.

Ïðîãðaììa äîëæía îáåñïå÷èâaòü äèaëîã ñ ïîìîùüþ ìåíþ è êîíòðîëü îøèáîê ïðè ââîäå.

ЧАСТЬ II




Объектноdориентированное программирование
 îêîí÷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.
C ðîñòîì îáúåìa ïðîãðaììû ñòaíîâèòñя íåâîçìîæíûì óäåðæèâaòü â ïaìяòè âñå äåòaëè, è ñòaíîâèòñя íåîáõîäèìûì ñòðóêòóðèðîâaòü èíôîðìaöèþ, âûäåëяòü ãëaâíîå è îòáðañûâaòü íåñóùåñòâåííîå. Ýòîò ïðîöåññ íaçûâaåòñя ïîâûøåíèåì ñòåïåíè aáñòðaêöèè ïðîãðaììû.
Ïåðâûì øaãîì ê ïîâûøåíèþ aáñòðaêöèè яâëяåòñя èñïîëüçîâaíèå ôóínöèñ, ïî- çâîëяþùåå ïîñëå íaïèñaíèя è îòë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âèòü åå â âèäå ìåíüøåãî nîëè÷åñòâa áîëåå nðóïíûõ áëînîâ è ìèíèìèçèðîâaòü ñâяçè ìåxäó íèìè. Ýòî ïîçâîëяåò óïðaâ- ëяòü áîëüøèì îáúåìîì èíôîðìaöèè è, ñëåäîâaòåëüíî, óñïåøíî îòëaæèâaòü áî- ëåå ñëîæíûå ïðîãðaììû.
Ââåäåíèå ïîíяòèя në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ëüíîãî ìèða1, ïîýòîìó â яçûêå ïðîãð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íä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 ça èíòåðôåéñîì (âåäü è â ðåaëüíîì ìèðå ìîæíî, íaïðè- ìåð, óïðaâëяòü aâòîìîáèëåì, íå èìåя ïðåäñòaâëåíèя î ïðèíöèïå âíóòðåííåãî ñãîðaíèя è óñòðîéñòâå äâèãaòåëя, a ïîëüçîâaòüñя òåëåôîíîì — íå çíaя, «êaê èäåò ñèãíaë, ïðèíöèïîâ ñâяçè è êòî êëaë êaáåëü»2). Èíòåðôåéñîì êëañña яâëяþòñя ça- ãîëîâêè åãî ìåòîäîâ. Òaêèì îáðaçîì, êëaññ êaê ìîäåëü îáúåêòa ðåaëüíîãî ìèða яâëяåòñя ÷åðíûì яùèêîì, çaìêíóòûì ïî îòíîøåíèþ ê âíåøíåìó ìèðó.
Èäåя êëaññîâ яâëяåòñя îñíîâîé îáúåêòíî-îðèåíòèðîâaííîãî ïðîãðaììèðîâaíèя (ÎÎÏ). Îñíîâíûå ïðèíöèïû ÎÎÏ áûëè ðaçðaáîòaíû åùå â яçûêaõ Simula-673 è Smalltalk, íî â òî âðåìя íå ïîëó÷èëè øèðîêîãî ïðèìåíåíèя èç-ça òðóäíîñòåé îñâîåíèя è íèçêîé ýôôåêòèâíîñòè ðåaëèçaöèè.  C++ ýòè êîíöåïöèè ðåaëèçîâa- íû ýôôåêòèâíî, êðañèâî è íåïðîòèâîðå÷èâî, ÷òî è яâèëîñü îñíîâîé óñïåøíîãî ðañïðîñòðaíåíèя ýòîãî яçûêa è âíåäðåíèя ïîäîáíûõ ñðåäñòâ â äðóãèå яçûêè ïðî- ãðaììèðîâaíèя.
ÎÎÏ — ýòî íå ïðîñòî íaáîð íîâûõ ñðåäñòâ, äîáaâëåííûõ â яçûê (ía C++ ìîæíî óñïåøíî ïèñaòü è áåç èñïîëüçîâaíèя ÎÎÏ, è íaîáîðîò, âîçìîæíî íaïèñaòü îáú-


1 Íaïðèìåð, Á. Còðaóñòðóï ðaçðaáîòaë C++ äëя ìîäåëèðîâaíèя òåëåôîííûõ êîììóòaöè- îííûõ ñèñòåì.
2 © ÁÃ
3 Îáð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êòîð, èìåþùèé ìèíèìóì âîçìîæíîñòåé, êîòîðûì ìîæíî ça 10 ìèíóò îáó÷èòü äaæå ñîáñòâåííóþ áaáóøêó; ïîäãîòîâêa ñòaòüè ñ ôîðìóëaìè ïîòðåáóåò îñâîåíèя áîëåå ñëîæíîãî òåêñòîâîãî ïðîöåññîða òèïa Microsoft Word, 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þòñя ýnçåìïëяðaìè nëañña, èëè îáúånò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ììíîãî êîäa1.



Download 2 Mb.

Do'stlaringiz bilan baham:
1   ...   99   100   101   102   103   104   105   106   ...   232




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish