Äìèòðèåâà Ìàðèíà Âàëåðüåâíà Ïàâëîâà Ìàðèàííà Âëàäèìèðîâíà ÝËÅÌÅÍÒÛ ÒÅÎÐÈÈ ÌÍÎÆÅÑÒÂ. ÑÈÑÒÅÌÀ: ÅÅ ÑÒÐÓÊÒÓÐÀ È ÑÎÑÒÎßÍÈÅ. Ì...
3 downloads
282 Views
164KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Äìèòðèåâà Ìàðèíà Âàëåðüåâíà Ïàâëîâà Ìàðèàííà Âëàäèìèðîâíà ÝËÅÌÅÍÒÛ ÒÅÎÐÈÈ ÌÍÎÆÅÑÒÂ. ÑÈÑÒÅÌÀ: ÅÅ ÑÒÐÓÊÒÓÐÀ È ÑÎÑÒÎßÍÈÅ. Ìíîæåñòâà è îïåðàöèè íàä íèìè. Ìíîæåñòâîì íàçûâàþò îïðåäåëåííóþ ñîâîêóïíîñòü îáúåêòîâ. Îäèí èç ñîçäàòåëåé òåîðèè ìíîæåñòâ Ãåîðã Êàíòîð(1845-1918) ñêàçàë : ″Ìíîæåñòâî åñòü ìíîãîå, ìûñëèìîå íàìè êàê åäèíîå″. Ñòðîãîãî îïðåäåëåíèÿ ìíîæåñòâà íåò, òàê êàê ýòî ïîíÿòèå, èç êîòîðîãî âûâîäÿòñÿ ìíîãèå ïîíÿòèÿ ìàòåìàòèêè, òîãäà êàê îíî íå âûâîäèòñÿ èç äðóãèõ ïîíÿòèé è íå îïðåäåëÿåòñÿ. Ïîíÿòèå ìíîæåñòâà ñòîëü æå ïåðâè÷íî êàê ïîíÿòèå òî÷êè èëè ÷èñëà. Ñèíîíèìàìè ñëîâà ″ìíîæåñòâî″ ìîæíî ñ÷èòàòü òàêèå ñëîâà êàê ″ñîâîêóïíîñòü″, ″êîëëåêöèÿ″, ″ñåìåéñòâî″, ″ñîáðàíèå″.  äàëüíåéøåì ïîíÿòèå ìíîæåñòâà áóäåò ðàçúÿñíåíî íà ïðèìåðàõ. Îïðåäåëåíèå: Îáúåêòû, èç êîòîðûõ ñîñòàâëåíî ìíîæåñòâî, íàçûâàþòñÿ ýëåìåíòàìè äàííîãî ìíîæåñòâà. Íåò íèêàêèõ îãðàíè÷åíèé íà ïðèðîäó ýëåìåíòîâ, ñîñòàâëÿþùèõ ìíîæåñòâî. Íàïðèìåð: ðàçëè÷íûå ïðåäìåòû ìåáëèðîâêè êîìíàòû îáðàçóþò ìíîæåñòâî. Ìíîæåñòâàìè ÿâëÿþòñÿ êíèãè íåêîòîðîé áèáëèîòåêè, ó÷àùèåñÿ êëàññà, áóêâû àëôàâèòà, àâòîìîáèëè íà äîðîãàõ ãîðîäà, öåëûå ÷èñëà îò 1 äî 1000, àòîìû ñåðåáðà â äàííîé ìîíåòå èëè âñåâîçìîæíûå èäåè, êîòîðûå èìåëî ÷åëîâå÷åñòâî. Îïðåäåëåíèå: ìíîæåñòâî, èìåþùåå êîíå÷íîå ÷èñëî ýëåìåíòîâ, íàçûâàåòñÿ êîíå÷íûì. Âñå ðàññìîòðåííûå ðàíåå ïðèìåðû ñëóæàò ïðèìåðàìè êîíå÷íûõ ìíîæåñòâ. Îïðåäåëåíèå: ìíîæåñòâî íàçûâàåòñÿ áåñêîíå÷íûì, åñëè îíî ñîñòîèò èç áåñêîíå÷íîãî ÷èñëà ýëåìåíòîâ. Íàïðèìåð, ìíîæåñòâî âñåõ âåùåñòâåííûõ ÷èñåë áåñêîíå÷íî. Îïðåäåëåíèå: ìíîæåñòâî, â êîòîðîì íåò íè îäíîãî ýëåìåíòà, íàçûâàþò ïóñòûì ìíîæåñòâîì. Ôàêòè÷åñêîå ñîäåðæàíèå êóðñà èíôîðÍàïðèìåð, ìíîæåñòâî ëåòàþùèõ áåãåìîòîâ ïóñòî. ìàòèêè â ñðåäíåé øêîëå ñóùåñòâåííî Äëÿ îáîçíà÷åíèÿ ìíîæåñòâà èñïîëüçóþò çàãëàâíûå çàâèñèò îò òåõíè÷åñêîé îñíàùåííîñòè áóêâû ëàòèíñêîãî àëôàâèòà, à â ôèãóðíûõ ñêîáêàõ ÷åðåç çàïÿòóþ âûïèñûâàþò åãî ýëåìåíòû. Ïóñòîå ìíîæåñòâî øêîëû, íàëè÷èÿ è êà÷åñòâà êîìïüþòåðíûõ çàïèñûâàþò êàê {} èëè ∅. Åñëè íåêîòîðûé ýëåìåíò êëàññîâ.  òî æå âðåìÿ òåîðåòè÷åñêàÿ ïðèíàäëåæèò ìíîæåñòâó, òî ýòî îáîçíà÷àþò çíàêîì ″∈″, ÷àñòü êóðñà, ñïîñîáñòâóþùàÿ îâëàäåíèþ îñíîâíûìè êîíöåïöèÿìè è áàçîâûìè à åñëè íå ïðèíàäëåæèò, òî çíàêîì ″∉″. Íàïðèìåð: A={3,5,6}; M={♠,♣,♦,♥}; L={}; 5∈A;
♦∈M; 2∉A; ♣∉L.
Ñóùåñòâóåò äâà ñïîñîáà çàäàíèÿ êîíå÷íûõ ìíîæåñòâ. Ìîæíî ëèáî äàòü ïîëíûé ïåðå÷åíü ýëåìåíòîâ ýòîãî ìíîæåñòâà, ëèáî óêàçàòü ïðàâèëî äëÿ îïðåäåëåíèÿ òîãî, ïðèíàäëåæèò èëè íåò ðàññìàòðèâàåìîìó ìíîæåñòâó äàííûé îáúåêò. Ïåðâûé ñïîñîá íàçûâàåòñÿ ïåðå÷èñëåíèåì ìíîæåñòâà, à âòîðîé - îïèñàíèåì. Äëÿ áåñêîíå÷íûõ ìíîæåñòâ âîçìîæåí ëèøü âòîðîé ñïîñîá. Íàïðèìåð, ïåðå÷èñëåíèå {2,4,6,8} èëè îïèñàíèå ″×åòíûå ÷èñëà áîëüøèå 0 è ìåíüøèå 10″; ïåðå÷èñëåíèå {âòîðíèê, ñðåäà, ÷åòâåðã} èëè îïèñàíèå ″Ïåðâûé, âòîðîé
êîìïîíåíòàìè èíôîðìàöèîííûõ òåõíîëîãèé, ëèøåíà ýòîé çàâèñèìîñòè. Ðåäàêöèÿ æóðíàëà â ýòîì è ïîñëåäóþùèõ âûïóñêàõ íàìåðåíà ïðåäëàãàòü âíèìàíèþ ó÷èòåëåé è ó÷àùèõñÿ èçëîæåíèå ðàçëè÷íûõ ðàçäåëîâ êóðñà, àâòîðàìè êîòîðûõ ÿâëÿþòñÿ îïûòíûå ïðåïîäàâàòåëè, íàó÷íûå ðàáîòíèêè è ñïåöèàëèñòû â îáëàñòè èíôîðìàòèêè. Âïîëíå âåðîÿòíî, ÷òî ïðåäëàãàåìûå âàðèàíòû îêàæóòñÿ óÿçâèìûìè äëÿ êðèòèêè. Ðåäàêöèÿ áóäåò áëàãîäàðíà âñåì, êòî âûñêàæåò êðèòè÷åñêèå çàìå÷àíèÿ, ïðåäëîæèò ñâîé âàðèàíò èçëîæåíèÿ, ïðåäëîæèò äðóãèå òåìû èëè çàäàñò âîïðîñû, îòâåòû íà êîòîðûå ðåäàêöèÿ ïîñòàðàåòñÿ íàéòè ó ñîîòâåòñòâóþùèõ ñïåöèàëèñòîâ.
è òðåòèé äíè ïîñëå ïîíåäåëüíèêà″. Îïðåäåëåíèå: ìíîæåñòâî, ñîñòîÿùåå èç íåêîòîðûõ ýëåìåíòîâ äðóãîãî ìíîæåñòâà, íàçûâàåòñÿ åãî ïîäìíîæåñòâîì. Óòâåðæäåíèå, ÷òî ìíîæåñòâî A ÿâëÿåòñÿ ïîäìíîæåñòâîì ìíîæåñòâà B, çàïèñûâàþò òàê: A ⊆ B. Ñ÷èòàåòñÿ, ÷òî ïóñòîå ìíîæåñòâî ÿâëÿåòñÿ ïîäìíîæåñòâîì ëþáîãî ìíîæåñòâà. Íàïðèìåð, ìíîæåñòâà {4,8} è {6} ÿâëÿþòñÿ ïîäìíîæåñòâàìè ìíîæåñòâà {2,4,6,8};÷èñëà 2,4,6,8-åãî ýëåìåíòû. Ìíîæåñòâî { {},{2},{4},{6},{8},{2,4},{2,6},{2,8},{4,6},{4,8},{6,8},{2,4,6},{2,4,8},{2,6,8},{4,6,8},{2,4,6,8} } ÿâëÿåòñÿ ìíîæåñòâîì âñåõ ïîäìíîæåñòâ èñõîäíîãî ìíîæåñòâà. Èç ïîñëåäíåãî ïðèìåðà âèäíî, ÷òî ìíîæåñòâà ñàìè ìîãóò áûòü ýëåìåíòàìè êàêîãî-òî ìíîæåñòâà. Ó ëþáîãî ìíîæåñòâà åñòü îáÿçàòåëüíî õîòÿ áû äâà ïîäìíîæåñòâà: ïóñòîå ìíîæåñòâî è ñàìî ìíîæåñòâî. Ýòè äâà ïîäìíîæåñòâà íàçûâàþòñÿ íåñîáñòâåííûìè ïîäìíîæåñòâàìè. Ëþáîå ïîäìíîæåñòâî, îòëè÷íîå îò íåñîáñòâåííîãî, íàçûâàåòñÿ ñîáñòâåííûì ïîäìíîæåñòâîì äàííîãî ìíîæåñòâà.
67
Íåòðóäíî âèäåòü, ÷òî ó ïóñòîãî ìíîæåñòâà íåò ñîáñòâåííûõ ïîäìíîæåñòâ, à îáà íåñîáñòâåííûõ ïîäìíîæåñòâà ðàâíû ìåæäó ñîáîé. Ó ëþáîãî îäíîýëåìåíòíîãî ìíîæåñòâà òàêæå íåò ñîáñòâåííûõ ïîäìíîæåñòâ, íî åãî íåñîáñòâåííûå ïîäìíîæåñòâà ðàçëè÷íû. Ó ëþáîãî äâóõýëåìåíòíîãî ìíîæåñòâà åñòü óæå äâà ñîáñòâåííûõ ïîäìíîæåñòâà. Ñ ðîñòîì êîëè÷åñòâà ýëåìåíòîâ â ìíîæåñòâå êîëè÷åñòâî ñîáñòâåííûõ ïîäìíîæåñòâ ðàñòåò. Íàïðèìåð, åñëè F={s, t}, òî ñîáñòâåííûìè ïîäìíîæåñòâàìè ìíîæåñòâà F áóäóò ÿâëÿòüñÿ ìíîæåñòâà {s} è {t}. Îïðåäåëåíèå: ìíîæåñòâà, ñîñòîÿùèå èç îäíèõ è òåõ æå ýëåìåíòîâ, íàçûâàþòñÿ ðàâíûìè. Ïðè ýòîì ïîðÿäîê ïåðå÷èñëåíèÿ ýëåìåíòîâ ìíîæåñòâà çíà÷åíèÿ íå èìååò. Íàïðèìåð: ðàâíû ìíîæåñòâî ðàâíîñòîðîííèõ òðåóãîëüíèêîâ è ìíîæåñòâî ðàâíîóãîëüíûõ òðåóãîëüíèêîâ; ðàâíû ìíîæåñòâà {7,4,1},{1,4,7} è {7,1,4}. Îïðåäåëåíèå: ìîùíîñòüþ êîíå÷íîãî ìíîæåñòâà (ðàçìåðîì êîíå÷íîãî ìíîæåñòâà) - íàçûâàþò êîëè÷åñòâî åãî ýëåìåíòîâ. Ìîùíîñòü ïóñòîãî ìíîæåñòâà ðàâíà íóëþ. Íàïðèìåð: ìîùíîñòü ìíîæåñòâà óãëîâ ëþáîé òðàïåöèè ðàâíà ÷åòûðåì, à ìîùíîñòü ìíîæåñòâà ÷åòíûõ ÷èñåë, ïðèíàäëåæàùèõ îòðåçêó [1, 10] ðàâíà 5. Ñóùåñòâóþò íåñêîëüêî îñíîâíûõ îïåðàöèé íàä ìíîæåñòâàìè. Ñ èõ ïîìîùüþ ìîæíî ñòðîèòü íîâûå ìíîæåñòâà. Îïðåäåëåíèå: îáúåäèíåíèåì ìíîæåñòâ À è  íàçûâàåòñÿ ìíîæåñòâî, ñîäåðæàùåå âñå ýëåìåíòû èç À è âñå ýëåìåíòû èç Â. Îáúåäèíåíèåì ëþáîãî ìíîæåñòâà ñ ïóñòûì ÿâëÿåòñÿ ñàìî ýòî ìíîæåñòâî. Îáúåäèíåíèå ìíîæåñòâ îáîçíà÷àåòñÿ çíàêîì ″∪″. Íàïðèìåð, ïóñòü A={5,7,9}, B={6,1}. Òîãäà C=A∪B={1,5,6,7,9}. Îïðåäåëåíèå: ïåðåñå÷åíèåì ìíîæåñòâ À è  íàçûâàåòñÿ ìíîæåñòâî, ñîñòîÿùåå èç òåõ ýëåìåíòîâ, êîòîðûå ïðèíàäëåæàò îáîèì ìíîæåñòâàì. Åñëè â ïåðåñå÷åíèè ìíîæåñòâ ýëåìåíòîâ íåò, òî ãîâîðÿò, ÷òî îíè íå ïåðåñåêàþòñÿ èëè ÷òî èõ ïåðåñå÷åíèå - ïóñòîå ìíîæåñòâî. Ïåðåñå÷åíèå ëþáîãî ìíîæåñòâà ñ ïóñòûì ÿâëÿåòñÿ ïóñòûì ìíîæåñòâîì. Ïåðåñå÷åíèå ìíîæåñòâ îáîçíà÷àåòñÿ çíàêîì ″∩″. Íàïðèìåð, ïóñòü A={4,5,7,9,10}, B={3,7,9}. Òîãäà C=A∩B={7,9}. Îïðåäåëåíèå: ðàçíîñòüþ ìíîæåñòâ À è  íàçûâàåòñÿ ìíîæåñòâî òåõ ýëåìåíòîâ èç À, êîòîðûå íå ïðèíàäëåæàò ìíîæåñòâó Â. Åñëè èç ëþáîãî ìíîæåñòâà A âû÷åñòü ïóñòîå ìíîæåñòâî, òî ðåçóëüòàòîì âû÷èòàíèÿ áóäåò ñàìî ìíîæåñòâî A. Ðàçíîñòü ìíîæåñòâ îáîçíà÷àåòñÿ çíàêîì ″\″. Íàïðèìåð, ïóñòü A={1,3,5,6,7}, B={6}. Òîãäà C=A \ B={1,3,5,7}. Åñëè G={ãóñü, êîò, ï¸ñ, óòêà, êóðèöà, èíäþê}, H={êîò, ï¸ñ}, òî R=G\H= {ãóñü, óòêà, êóðèöà, èíäþê}, à T=H \ ∅=H. Îòíîøåíèÿ è èõ ñâîéñòâà. Ìû ðàññìîòðåëè ìíîæåñòâà, ñîñòîÿùèå èç êàêèõ-òî ýëåìåíòîâ, íî íè÷åãî íå ãîâîðèëè î ñâîéñòâàõ ýòèõ ýëåìåíòîâ è èõ îòíîøåíèÿõ äðóã ñ äðóãîì. Ðàññìîòðèì òåïåðü íåêîòîðîå êîíå÷íîå ìíîæåñòâî ýëåìåíòîâ: A={a1,a2,...aN}, êîòîðîå áóäåì íàçûâàòü ïðåäìåòíîé îáëàñòüþ. Îïðåäåëåíèå: ôóíêöèÿ íàçûâàåòñÿ ëîãè÷åñêîé, åñëè îáëàñòü å¸ çíà÷åíèé ñîñòîèò èç äâóõ ëîãè÷åñêèõ êîíñòàíò èñòèíà è ëîæü, èëè äðóãèìè ñëîâàìè, åñëè âñå å¸ çíà÷åíèÿ ïðèíàäëåæàò ìíîæåñòâó {èñòèíà, ëîæü} Îïðåäåëåíèå: ïðåäèêàòîì íàçûâàåòñÿ ëîãè÷åñêàÿ ôóíêöèÿ, îïðåäåëåííàÿ íà ïðåäìåòíîé îáëàñòè. Ïðåäèêàòû äåëÿòñÿ íà äâà âèäà: ïîíÿòèÿ è îòíîøåíèÿ. Îïðåäåëåíèå: ïîíÿòèå - ñâîéñòâî îäíîãî îáúåêòà ïðåäìåòíîé îáëàñòè. Íàïðèìåð, åñëè ïðåäìåòíàÿ îáëàñòü - íåêîòîðûé îòðåçîê íàòóðàëüíîãî ðÿäà, òî ïðåäèêàò ÷åòíîñòè - ýòî ñâîéñòâî êàêîãî-òî ýëåìåíòà (÷èñëà) èç ýòîãî îòðåçêà áûòü èëè íå áûòü ÷åòíûì. Ïîíÿòèÿ íàçûâàþòñÿ îäíîìåñòíûìè ïðåäèêàòàìè. Îïðåäåëåíèå: îòíîøåíèå - ñâîéñòâî ïàð, òðîåê, ÷åòâåðîê è ò.ä. îáúåêòîâ äàííîé ïðåäìåòíîé îáëàñòè. Íàïðèìåð, ñâîéñòâî îäíîãî ýëåìåíòà ëåæàòü ìåæäó äâóìÿ äðóãèìè ÿâëÿåòñÿ îòíîøåíèåì (òðåõìåñòíûì ïðåäèêàòîì ). Íàïîìíèì, ÷òî âñå ýëåìåíòû, ïðî êîòîðûå ìû âûÿñíÿåì, íàõîäÿòñÿ ëè îíè â äàííîì îòíîøåíèè, äîëæíû ïðèíàäëåæàòü ðàññìàòðèâàåìîé ïðåäìåòíîé îáëàñòè. ×àùå âñåãî ðàññìàòðèâàþò äâóìåñòíûå îòíîøåíèÿ è èñïîëüçóþò ñëåäóþùèå îáîçíà÷åíèÿ: < - ìåíüøå, ≤ - ìåíüøå èëè ðàâíî, = - ðàâíî, > - áîëüøå, ≥ - áîëüøå èëè ðàâíî, ≠ - íå ðàâíî. Åñëè â êà÷åñòâå ïðåäìåòíîé îáëàñòè ðàññìîòðåòü A - îòðåçîê íàòóðàëüíîãî ðÿäà îò 3 äî 100, òî îòíîøåíèå x < y, ãäå x, y ∈A, èìååò çíà÷åíèå èñòèíà, íàïðèìåð, ïðè x=6, y=123. Îòíîøåíèå x = y èìååò çíà÷åíèå ëîæü, íàïðèìåð, ïðè x=50, y=49, à îòíîøåíèå x ≠ y èìååò çíà÷åíèå èñòèíà ïðè òåõ æå çíà÷åíèÿõ ïåðåìåííûõ. Íåòðóäíî ïðèâåñòè ïðèìåðû è äðóãèõ íå ñòîëü èçâåñòíûõ îòíîøåíèé. Òàê îòíîøåíèåì áóäåò ÿâëÿòüñÿ
68
ëîãè÷åñêàÿ ôóíêöèÿ, êîòîðàÿ çàäàíà íà ìíîæåñòâå íàòóðàëüíûõ ÷èñåë, îïðåäåëÿþùàÿ, áóäåò ëè îäíî íàòóðàëüíîå ÷èñëî äåëèòüñÿ íà äðóãîå íàòóðàëüíîå ÷èñëî áåç îñòàòêà. Îòíîøåíèåì òàêæå ÿâëÿåòñÿ ôóíêöèÿ, âûÿñíÿþùàÿ, êàêàÿ èç äâóõ ëàìïî÷åê ãîðèò ÿð÷å. Êðîìå òîãî, ïðèìåðàìè îòíîøåíèé ñëóæàò ïðåäèêàòû, îïðåäåëÿþùèå ñîñòîÿò ëè äâà ÷åëîâåêà â áðàêå, ÿâëÿåòñÿ ëè îäèí ÷åëîâåê ðîäèòåëåì äðóãîãî è ò. ï. Ðàññìîòðèì ñâîéñòâà äâóìåñòíûõ îòíîøåíèé. Áóäåì îáîçíà÷àòü ″Θ″ - çíàê îòíîøåíèÿ. Òîãäà îòíîøåíèå f Θ g ìîæåò îáëàäàòü ñëåäóþùèìè ñâîéñòâàìè: îòíîøåíèå íàçûâàåòñÿ ðåôëåêñèâíûì, åñëè f Θ f äëÿ ëþáîãî f ∈ A; Íàïðèìåð, ðåôëåêñèâíîñòü èìååò ìåñòî äëÿ îòíîøåíèé = , <=, >= , ò.ê. 5=5, 7≤7, 9≥9. îòíîøåíèå íàçûâàåòñÿ òðàíçèòèâíûì, åñëè èç òîãî, ÷òî f Θ g è g Θ h ñëåäóåò, ÷òî f Θ h äëÿ ëþáûõ f, g, h∈A . Íàïðèìåð, òðàíçèòèâíîñòüþ îáëàäàþò îòíîøåíèÿ =, <=, >=, <, >, òàê êàê èç òîãî, ÷òî 5 < 7 è 7 < 10 ñëåäóåò, ÷òî 5 < 10. îòíîøåíèå íàçûâàåòñÿ ñèììåòðè÷íûì, åñëè èç òîãî, ÷òî f Θ g ñëåäóåò, ÷òî g Θ f äëÿ ëþáûõ f è g ∈A. Íàïðèìåð, ïóñòü ïðåäìåòíàÿ îáëàñòü - îòðåçîê öåëûõ ÷èñåë îò 2 äî 10000. Ðàññìîòðèì îòíîøåíèÿ: à) ñâîéñòâî x è y èìåòü îáùèé äåëèòåëü, á) ñâîéñòâî x è y áûòü ðàâíûìè. Î÷åâèäíî, ÷òî îáà ýòè îòíîøåíèÿ áóäóò ñèììåòðè÷íû. îòíîøåíèå íàçûâàåòñÿ àíòèñèììåòðè÷íûì, åñëè èç òîãî, ÷òî f Θ g è g Θ f ñëåäóåò, ÷òî f = g äëÿ ëþáûõ f, g ∈A . Íàïðèìåð, àíòèñèììåòðè÷íûìè ÿâëÿþòñÿ îòíîøåíèÿ ≤ è ≥, ïîñêîëüêó, åñëè x≤y è y≤x, òî y=x äëÿ ëþáûõ x,y∈A. Îòíîøåíèå, êîòîðîå îïðåäåëÿåò äåëèòñÿ ëè îäíî ÷èñëî áåç îñòàòêà íà äðóãîå, àíòèñèììåòðè÷íî, òàê êàê åñëè x äåëèòñÿ íà y, à y äåëèòñÿ íà x, òî x=y. Çàìåòèì, ÷òî ñèììåòðè÷íîñòü è àíòèñèììåòðè÷íîñòü íå ÿâëÿþòñÿ âçàèìîèñêëþ÷àþùèìè ñâîéñòâàìè. Íàïðèìåð, ïóñòü ìíîæåñòâî A - ìíîæåñòâî ëþäåé. Îïðåäåëèì îòíîøåíèå β òàê, ÷òî äëÿ ëþáûõ x, y ∈ A îòíîøåíèå x β y èñòèííî òîãäà è òîëüêî òîãäà, êîãäà x áðàò y.  ñåìüå, ãäå äâà áðàòà p è q è ñåñòðà r, òî åñòü íà ïðåäìåòíîé îáëàñòè A={p, q, r} îòíîøåíèå β íå ÿâëÿåòñÿ ñèììåòðè÷íûì, òàê êàê p β r (p ÿâëÿåòñÿ áðàòîì r), íî íåâåðíî, ÷òî r β p (r íå ÿâëÿåòñÿ áðàòîì p). Ýòî îòíîøåíèå íå ÿâëÿåòñÿ è àíòèñèììåòðè÷íûì, òàê êàê p β q (p áðàò q) è q β p (q áðàò p), õîòÿ p è q ðàçëè÷íû. Èñïîëüçîâàíèå ìíîæåñòâ ïðè ðåøåíèè çàäà÷ íà êîìïüþòåðå. Äëÿ òîãî, ÷òîáû ïðîäåìîíñòðèðîâàòü, êàê èñïîëüçóþòñÿ îòíîøåíèÿ, ìíîæåñòâà è îïåðàöèè íàä íèìè â ïðîãðàììèðîâàíèè, ìû âûáðàëè ÿçûê Ïàñêàëü, òàê êàê èìåííî íà íåì ìîæíî îïèñûâàòü è îáðàáàòûâàòü äàííûå òèïà ìíîæåñòâî. Ìíîæåñòâî ìîæåò ñòðîèòüñÿ èç îáúåêòîâ ïåðå÷èñëèìîãî òèïà èëè òèïà äèàïàçîíà. Òèï ìíîæåñòâî - ñîñòàâíîé òèï, è åãî îïèñàíèå âûãëÿäèò ñëåäóþùèì îáðàçîì: Type ìíîæåñòâî=set of òèï-ýëåìåíòà, ãäå ″ìíîæåñòâî″- èäåíòèôèêàòîð îïðåäåëÿåìîãî òèïà, à ″òèï-ýëåìåíòà″ - îïèñàòåëü òèïà ýëåìåíòîâ ìíîæåñòâà. Îáû÷íî êàæäàÿ ñèñòåìà ïðîãðàììèðîâàíèÿ íà Ïàñêàëå íàêëàäûâàåò äîïîëíèòåëüíûå îãðàíè÷åíèÿ íà âîçìîæíûå òèïû ýëåìåíòîâ. Äëÿ ïðåäñòàâëåíèÿ ìíîæåñòâ â ïðîãðàììå ñëóæèò ñïåöèàëüíàÿ êîíñòðóêöèÿ, ïîçâîëÿþùàÿ çàäàòü íàáîð ýëåìåíòîâ, ïðåäñòàâëÿþùèõ êàêîå-ëèáî ìíîæåñòâî. Êîíñòðóêöèÿ ïðåäñòàâëÿåò ñîáîé íàáîð âûðàæåíèé, ïåðå÷èñëåííûõ ÷åðåç çàïÿòóþ, çàêëþ÷åííûé â êâàäðàòíûå ñêîáêè. Ïåðå÷èñëåííûå âûðàæåíèÿ è çàäàþò çíà÷åíèÿ ýëåìåíòîâ ìíîæåñòâà, íàïðèìåð, ['A', 'D', 'N'] [5, i+1, j-7, k, 43] ['a', 's', 'f', 'j', 'l'] [x] [3,8,4,2,6,1,5,7] Ïóñòîå ìíîæåñòâî çàäàåòñÿ òàê: []. Äëÿ çàäàíèÿ â êà÷åñòâå ýëåìåíòîâ ìíîæåñòâà ïîñëåäîâàòåëüíîñòè èç íåñêîëüêèõ ïîäðÿä èäóùèõ çíà÷åíèé ìîæíî óêàçàòü â èçîáðàæåíèè ìíîæåñòâà ïåðâîå è ïîñëåäíåå èç âêëþ÷àåìûõ çíà÷åíèé, ñîåäèíèâ èõ ñèìâîëîì ″..″, íàïðèìåð: [23..67] [2..5, 8..34] ['0'..'9'] ['A'..'Z', 'a'..'z'] ['à'..'ÿ'] ['×','Ù'..'Ý','ß'] Äëÿ ðàáîòû ñ ìíîæåñòâàìè îïðåäåëåíû îïåðàöèè, ïîçâîëÿþùèå ñðàâíèâàòü ìíîæåñòâà ìåæäó ñîáîé, îïðåäåëÿòü ïðèíàäëåæíîñòü ýëåìåíòà ìíîæåñòâó, âûïîëíÿòü îáû÷íûå òåîðåòèêî-ìíîæåñòâåííûå îïåðàöèè íàõîæäåíèÿ îáúåäèíåíèÿ, ïåðåñå÷åíèÿ è ðàçíîñòè ìíîæåñòâ. Ïðèâåäåì òàáëèöó äîïóñòèìûõ îïåðàöèé íàä ìíîæåñòâàìè, ïîÿñíèâ êàæäóþ îïåðàöèþ ýêâèâàëåíòíîé çàïèñüþ, ïðèíÿòîé â òåîðèè ìíîæåñòâ.  òàáëèöå Ì, Ì1 è Ì2 îçíà÷àþò ìíîæåñòâà ñ ýëåìåíòàìè îäíîãî è òîãî æå òèïà, x - çíà÷åíèå ýëåìåíòà ìíîæåñòâà Ì. Îïåðàöèÿ ïðèíàäëåæíîñòè IN îòíîñèòñÿ ê ãðóïïå îïåðàöèé îòíîøåíèÿ òàê æå, êàê è îïåðàöèè îòíîøåíèÿ ñî çíàêàìè ″>″, ″<″ , ″=″ , ″<>″, ″<=″, ″>=″. Ïîëüçóÿñü ýòèìè îïåðàöèÿìè, ìîæíî âûðàçèòü òàêèå ýëåìåíòàðíûå äåéñòâèÿ, êàê äîáàâëåíèå â ìíîæåñòâî èëè óäàëåíèå èç íåãî îäíîãî èëè íåñêîëüêèõ ýëåìåíòîâ è äðóãèå. Íàïðèìåð, ðåçóëüòàòîì èñïîëíåíèÿ ïðèñâàèâàíèÿ Ì:= Ì+[x] áóäåò äîáàâëåíèå ýëåìåíòà ñî çíà÷åíèåì x â
69
ìíîæåñòâî Ì. Àíàëîãè÷íî, â ðåçóëüòàòå âûïîëíåíèÿ îïåðàòîðà ïðèñâàèâàíèÿ Ì:=Ì-[x] ýëåìåíò x áóäåò óäàëåí èç ìíîæåñòâà Ì.  ÿçûêå Ïàñêàëü
 òåîðèè ìíîæåñòâ
x IN Ì Ì1=Ì2 Ì1<>Ì2 Ì1<=Ì2 Ì1>=Ì2 Ì1+Ì2 Ì1 * Ì2 Ì1-Ì2
x ∈M Ì1≡Ì2 Ì1≠Ì2 Ì1⊆Ì2 Ì1⊇Ì2 Ì1∪Ì2 Ì1∩Ì2 Ì1\ Ì2
Ïîëüçóÿñü àïïàðàòîì òåîðèè ìíîæåñòâ, ïðèâåäåì ðåøåíèå íåñêîëüêèõ çàäà÷. Ïðèìåð 1.  ïîñëåäîâàòåëüíîñòè íàòóðàëüíûõ ÷èñåë i (i<256) îïðåäåëèòü ÷èñëî ðàçëè÷íûõ ÷èñåë è âûâåñòè èõ â ïîðÿäêå óáûâàíèÿ. Ïðèçíàêîì êîíöà ïîñëåäîâàòåëüíîñòè ñëóæèò ÷èñëî 0. Áóäåì ïðîñìàòðèâàòü ïîñëåäîâàòåëüíîñòü è ôîðìèðîâàòü ìíîæåñòâî ÷èñåë Z, âõîäÿùèõ â ýòó ïîñëåäîâàòåëüíîñòü. Çàòåì âûâåäåì âñå ýëåìåíòû ïîñòðîåííîãî ìíîæåñòâà. program p1; type set_byte=set of byte; var Z: set_byte; m:byte; k: integer; begin writeln('Ââåäèòå ïîñëåäîâàòåëüíîñòü ÷èñåë, 0- ïðèçíàê êîíöà:'); read(m); Z:=[]; while m <>0 do begin Z := Z+[m]; read(m) end; k:=0; writeln('×èñëà â ïîðÿäêå óáûâàíèÿ:'); for m:= 255 downto 1 do if m in Z then begin write(m, ); inc(k) end; writeln; writeln('Êîëè÷åñòâî ðàçëè÷íûõ ÷èñåë â ïîñëåäîâàòåëüíîñòè : ',k) end. Ïðèìåð 2 . Íàéòè âñå ïðîñòûå ÷èñëà, ìåíüøèå çàäàííîãî N. Ìîæíî ïðåäëîæèòü àëãîðèòì, â êîòîðîì âñå ÷èñëà ïåðåáèðàþòñÿ ïî î÷åðåäè è äëÿ êàæäîãî èç ÷èñåë ïðîèçâîäèòñÿ ïðîâåðêà, ÿâëÿåòñÿ ëè îíî ïðîñòûì. Îäíàêî óæå â Äðåâíåé Ãðåöèè áûë èçâåñòåí áîëåå ýôôåêòèâíûé àëãîðèòì, ïîëó÷èâøèé íàçâàíèå ″ðåøåòà Ýðàòîñôåíà″. Ñîãëàñíî ýòîìó àëãîðèòìó, ñíà÷àëà ðàññìàòðèâàåòñÿ ìíîæåñòâî âñåõ ÷èñåë îò 2 äî N, à çàòåì èç íåãî ïîñëåäîâàòåëüíî óäàëÿþòñÿ ýëåìåíòû, íå ÿâëÿþùèåñÿ ïðîñòûìè ÷èñëàìè. Äëÿ ýòîãî íà êàæäîì øàãå àëãîðèòìà âûáèðàåòñÿ íàèìåíüøèé ýëåìåíò ìíîæåñòâà è âû÷åðêèâàþòñÿ èç ìíîæåñòâà âñå ýëåìåíòû êðàòíûå âûáðàííîìó. Ñàì ýëåìåíò ÿâëÿåòñÿ ïðîñòûì ÷èñëîì è â äàëüíåéøåì íå ðàññìàòðèâàåòñÿ. Áóäåì ñ÷èòàòü, ÷òî â ïðîãðàììå îïðåäåëåí òèï ìíîæåñòâà resheto è ïåðåìåííàÿ òèïà ìíîæåñòâà simple , òî åñòü âûïîëíåíû îïèñàíèÿ: ñonst N = 255; type resheto = set of 2..N; var simple: resheto; {Ôîðìèðóåìîå ìíîæåñòâî} Ïîñëå âûïîëíåíèÿ îïåðàòîðà ïðèñâàèâàíèÿ simple :=[2..N] ïåðåìåííàÿ simple ñîäåðæèò ìíîæåñòâî öåëûõ çíà÷åíèé èç äèàïàçîíà 2..N. Âûáèðàåì èç ýòîãî ìíîæåñòâà íàèìåíüøåå ïðîñòîå ÷èñëî Ê. Î÷åâèäíî, ÷òî ïåðâûì âûáðàííûì ÷èñëîì áóäåò ÷èñëî 2. Äàëåå èñêëþ÷àåì èç ýòîãî ìíîæåñòâà âñå ÷èñëà êðàòíûå äâóì. Âî âðåìÿ ðàáîòû öèêëà â ìíîæåñòâå simple ñîäåðæàòñÿ âñå ïðîñòûå ÷èñëà, íå ïðåâîñõîäÿùèå Ê, à ñðåäè ýëåìåíòîâ, áîëüøèõ Ê, ñîäåðæàòñÿ âñå ÷èñëà, êðîìå êðàòíûõ ýòèì ïðîñòûì ÷èñëàì. Êîãäà Ê ïðîáåæèò çíà÷åíèÿ äî SQRT(N+1), â ìíîæåñòâå simple îñòàíóòñÿ ëèøü ïðîñòûå ÷èñëà. Ñëåäóþùàÿ ïðîãðàììà ðåàëèçóåò îïèñàííûé àëãîðèòì: program simpleres; const N = 255; type resheto = set of 2..N; var simple: resheto; i,K,l: integer; begin writeln; writeln ('Ïðîñòûå ÷èñëà ìåíüøèå ',N, ': '); simple :=[2..N]; L := trunc(sqrt(N+1)); K := 1; while K <= L do begin repeat K := K+1 until K in simple ; write(K:3,' '); for i := 2 to N div K do simple := simple - [K*i] end; for K := L+1 to N do if K in simple then write(K:3, ) end.
70
 ïðîãðàììàõ îáðàáîòêè òåêñòîâ èíîãäà óäîáíî èñïîëüçîâàòü ìíîæåñòâà ñèìâîëîâ. Òèï òàêîãî ìíîæåñòâà ìîæíî îïèñàòü òàê: Type set_sym= set of char Èñïîëüçîâàíèå ìíîæåñòâ ÷àñòî îêàçûâàåòñÿ ýôôåêòèâíåå äðóãèõ êîíñòðóêöèé äàæå â òåõ ïðîãðàììàõ, êîòîðûå âïðÿìóþ íå ñâÿçàíû ñ îáðàáîòêîé ìíîæåñòâ, íàïðèìåð, âìåñòî âûðàæåíèÿ (C >='0') and (C<='9') or (C >='A') and (C<='Z') ïðîùå è ïîíÿòíåå íàïèñàòü C IN ['0'..'9', 'A'..'Z'], ïðè÷åì ïîñëåäíÿÿ êîíñòðóêöèÿ áóäåò, êàê ïðàâèëî, è áîëåå ýôôåêòèâíîé. Ïðèìåð 3. Îïðåäåëèòü êàêèå èç ñèìâîëîâ çàäàííîãî òåêñòà ÿâëÿþòñÿ óíèêàëüíûìè, òî åñòü âñòðå÷àþòñÿ â òåêñòå ëèøü îäèí ðàç. Äëÿ ðåøåíèÿ çàäà÷è óäîáíî èñïîëüçîâàòü ìíîæåñòâà ñèìâîëîâ. Ïðè àíàëèçå òåêñòà áóäåì ôîðìèðîâàòü äâà ìíîæåñòâà, â ìíîæåñòâî M âêëþ÷èì âñå ñèìâîëû, êîòîðûå âñòðå÷àëèñü â òåêñòå õîòÿ áû ðàç, â ìíîæåñòâî MM âêëþ÷èì ñèìâîëû, êîòîðûå âñòðå÷àëèñü â òåêñòå áîëåå îäíîãî ðàçà. Ïåðâîíà÷àëüíî îáà ìíîæåñòâà ïóñòû. Ïîñëå ïðîñìîòðà òåêñòà íóæíîå íàì ìíîæåñòâî ñèìâîëîâ ïîëó÷àåòñÿ êàê ðàçíîñòü ìíîæåñòâ M è MM. Äëÿ òîãî, ÷òîáû âûâåñòè ðåçóëüòàòû, íåîáõîäèìî ïåðåáèðàòü âñå ñèìâîëû è äëÿ êàæäîãî ñèìâîëà ïðîâåðÿòü, ïðèíàäëåæèò ëè îí ìíîæåñòâó. Ïðèâåäåì ïðîãðàììó, ðåàëèçóþùóþ ýòîò àëãîðèòì: program mn3; type set_let = set of char; var M1,M,MM : set_let; s: string; c : char; i:byte; begin writeln('Ââåäèòå èñõîäíûé òåêñò: '); readln(s); M:=[]; MM:=[]; for i := 1 to length(s) do begin c:= s[i]; if c in M then {ñèìâîë óæå ðàíåå âñòðå÷àëñÿ} MM:= MM+[c] else {ñèìâîë âñòðåòèëñÿ âïåðâûå} M:= M+[c] end; M1:= M-MM; Writeln ('Ìíîæåñòâî óíèêàëüíûõ ñèìâîëîâ: '); if M1 = [] then writeln ('ïóñòî') else for c := chr(0) to chr (255) do if c in M1 then write(c,' '); Writeln; end. Ïðèìåð 4. Íàïèñàòü ïðîãðàììó, êîòîðàÿ ïðîâåðÿåò, ñîñòîÿò ëè äâà çàäàííûõ òåêñòà èç îäèíàêîâûõ ñèìâîëîâ.  ïðîãðàììå îïèøåì ïðîöåäóðó, êîòîðàÿ ïî çàäàííîé ñòðîêå s ôîðìèðóåò ìíîæåñòâî ðàçëè÷íûõ ñèìâîëîâ m, èç êîòîðûõ ñòðîêà ñîñòîèò: procedure settex (var s : string; var m : set_let); var i : byte; begin m:=[]; for i := 1 to length (s) do m := m + [s[i]] end. Òåïåðü äëÿ ðåøåíèÿ çàäà÷è íàì äîñòàòî÷íî ïî êàæäîìó èç òåêñòîâ ïîñòðîèòü ñîîòâåòñòâóþùåå ìíîæåñòâî è çàòåì ýòè äâà ìíîæåñòâà ñðàâíèòü. Ïîëíîñòüþ ïðîãðàììà ìîæåò âûãëÿäåòü òàê: Program pm4; type set_let = set of char; var m1,m2 : set_let; s: string; c : char; procedure settex (var s : string; var m : set_let); var i : byte; begin m:=[]; for i := 1 to length (s) do m := m + [s[i]] end; begin writeln('Ââåäèòå ïåðâûé òåêñò:'); readln(s); settex(s,m1); writeln('Ââåäèòå âòîðîé òåêñò:'); readln(s); settex(s,m2); if m1 = m2 then writeln('Òåêñòû ñîñòîÿò èç îäèíàêîâûõ ñèìâîëîâ') else writeln('Òåêñòû ñîñòîÿò èç ðàçëè÷íûõ ñèìâîëîâ'); end.
71
Èñïîëüçóÿ ìíîæåñòâà, ëåãêî ðåøàòü ñëåäóþùèå çàäà÷è àíàëèçà òåêñòà: íàéòè âñå ñèìâîëû, êîòîðûå âñòðå÷àþòñÿ â äâóõ çàäàííûõ òåêñòàõ; îïðåäåëèòü ñèìâîëû, êîòîðûå âñòðå÷àþòñÿ â ïåðâîì òåêñòå, íî íå âñòðå÷àþòñÿ âî âòîðîì; îïðåäåëèòü, ñêîëüêî ðàçëè÷íûõ ñèìâîëîâ â òåêñòå è ò.ï. Ðàññìîòðèì åùå îäíó çàäà÷ó, â êîòîðîé òðåáóåòñÿ ïðîàíàëèçèðîâàòü òåêñò. Ïðåäïîëîæèì, ÷òî íàñ èíòåðåñóþò â òåêñòå òîëüêî áóêâû. Ïðèìåð 5.  çàäàííîì òåêñòå íàéòè áóêâû, ïðè÷åì îòäåëüíî ñôîðìèðîâàòü áóêâû ëàòèíñêîãî è ðóññêîãî àëôàâèòîâ. Ïðè àíàëèçå òåêñòà ñôîðìèðóåì ìíîæåñòâî ðàçëè÷íûõ ñèìâîëîâ, âõîäÿùèõ â òåêñò, à çàòåì ñ ïîìîùüþ îïåðàöèè ïåðåñå÷åíèÿ ìíîæåñòâ âûäåëèì ñîîòâåòñòâóþùèå ìíîæåñòâà. Ïóñòü â ïðîãðàììå ïåðåìåííàÿ mlatìíîæåñòâî áóêâ ëàòèíñêîãî àëôàâèòà, mrus- ðóññêîãî, m-ìíîæåñòâî ðàçëè÷íûõ ñèìâîëîâ òåêñòà. Äëÿ òîãî, ÷òîáû îïðåäåëèòü ìíîæåñòâî áóêâ, âñòðå÷àþùèõñÿ â òåêñòå, äîñòàòî÷íî ñôîðìèðîâàòü ìíîæåñòâî m*(mrus+mlat). Ïðèâåäåì ïðîãðàììó, ðåøàþùóþ çàäà÷ó: program mn5; type set_let = set of char; var mlat, mrus, m, rus, lat, lit : set_let; s: string; c : char; i: word; procedure settex (var s : string; var m : set_let); var i : byte; begin m:=[]; for i := 1 to length (s) do m := m + [s[i]] end; begin mlat := ['A'..'Z','a'..'z']; mrus := ['À'..'ß','à'..'ï','ð'.. 'ÿ']; writeln; writeln('Ââåäèòå òåêñò:'); readln(s); settex(s,m); writeln('Ðàçëè÷íûå ñèìâîëû, âõîäÿùèå â òåêñò:'); for c := chr(0) to chr (255) do if c in m then write(c); writeln; writeln('Áóêâû ðóññêîãî àëôàâèòà, âõîäÿùèå â òåêñò:'); rus:=m*mrus; for c := chr(0) to chr (255) do if c in rus then write(c); writeln; writeln('Áóêâû ëàòèíñêîãî àëôàâèòà â çàäàííîì òåêñòå:'); lat:=m*mlat; for c := chr(0) to chr (255) do if c in lat then write(c); writeln; writeln('Òåêñò ñîäåðæèò áóêâû:'); lit:=m*(mrus+mlat); for c := chr(0) to chr (255) do if c in lit then write(c); writeln; end. Ïðèìåð 6. Çàäàí òåêñòîâûé ôàéë, ñîäåðæàùèé ðóññêèå è ëàòèíñêèå áóêâû, à òàêæå, âîçìîæíî, äðóãèå ñèìâîëû. Ïåðåïèñàòü åãî â äðóãîé ôàéë, ïåðåêîäèðîâàâ ðóññêèå áóêâû â ëàòèíñêèå èëè ñî÷åòàíèÿ ëàòèíñêèõ áóêâ ñëåäóþùèì îáðàçîì: Òàáëèöà ïåðåêîäèðîâêè
à
á
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
í
î
ï
a
b
v
g
d
e
sz
z
i
j
k
l
m
n
o
p
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
ÿ
r
s
t
u
f
h
c
ch
sh
sch
-
y
-
e
ju
ja
72
Ñòðîêîâàÿ ñòðóêòóðà òåêñòîâîãî ôàéëà, à òàêæå âñå ñèìâîëû, íå ÿâëÿþùèåñÿ ðóññêèìè áóêâàìè, äîëæíû ñîõðàíèòüñÿ. Äëÿ ðåøåíèÿ ýòîé çàäà÷è ñîñòàâèì òàáëèöó ïåðåêîäèðîâêè Tabcod, â êîòîðîé ñîïîñòàâèì êàæäîé ðóññêîé áóêâå åå ëàòèíñêèé ýêâèâàëåíò. Îñîáûì îáðàçîì äîëæíû îáðàáàòûâàòüñÿ áóêâû 'Æ','×','Ø','Ù','Ü','Ú','Þ','ß', ïîýòîìó ñîñòàâèì èç ýòèõ áóêâ ìíîæåñòâî, êîòîðîå íàäî îáðàáàòûâàòü îñîáûì îáðàçîì. Ñîîòâåòñòâèå çàäàåòñÿ â ïðîãðàììå ñ ïîìîùüþ äâóõ ñòðîê, ñîäåðæàùèõ êîäèðóåìûå áóêâû (rusalf) è çíà÷åíèÿ êîäîâ (latalf). Ïîñòðîåíèå ïåðåêîäèðîâî÷íîé òàáëèöû ïðîèçâîäèòñÿ ïðîöåäóðîé InitTab. Ïîñëå ýòîãî îáðàáîòêà ôàéëà îñóùåñòâëÿåòñÿ â ñîîòâåòñòâèè ñ ïîñòðîåííîé òàáëèöåé InitTab. Ïðîãðàììó, ðåøàþùóþ çàäà÷ó, ìîæíî îïèñàòü ñëåäóþùèì îáðàçîì: program pcodfile; var Tabcod: array [char] of char; f, g : text; {Ïðîöåäóðà InitTab ôîðìèðóåò òàáëèöó TabCode, â êîòîðîé êàæäîé } { áóêâå ðóññêîãî àëôàâèòà ñîïîñòàâëÿåòñÿ îäíà áóêâà ëàòèíñêîãî } procedure InitTab; var rusalf, latalf : string; i: byte; c: char; begin rusalf:='àáâãäåçèéêëìíîïðñòóôõéûý'; latalf:='abvgdezijklmnoprstufhcye'; for c := chr(0) to chr(255) do Tabcod[c] := c; for i :=1 to length(latalf) do Tabcod[rusalf[i]] := latalf[i] end ; procedure CodeFile(var f,g : text); var lr: set of char; c: char; begin lr:= ['æ','÷','ø','ù','ü','ú','þ','ÿ']; {ìíîæåñòâî îñîáûõ ñèìâîëîâ } while not eof(f) do begin while not eoln(f) do begin read(f,c); if c in lr then case c of 'æ': write(g,'sz'); '÷': write(g,'ch'); 'ø': write(g,'sh'); 'ù': write(g,'sch'); 'ü','ú':; 'þ': write(g,'ju'); 'ÿ': write(g,'ja'); end else write (g, Tabcod[c]) end; readln(f); writeln(g) end end; begin InitTab; Assign(f, 'fcod.pas'); Assign(g, 'gcod.pas'); Reset(f); Rewrite(g); writeln ('Íà÷àëè îáðàáîòêó ôàéëîâ'); CodeFile(f,g); writeln ('Êîí÷èëè îáðàáîòêó ôàéëîâ'); Close (f); Close (g) end. Ïîíÿòèå ñèñòåìû, åå ñòðóêòóðà è ôóíêöèÿ. Âèäû ñèñòåì. Ïîä ñèñòåìîé ïîíèìàþò ñîâîêóïíîñòü âçàèìîñâÿçàííûõ è âçàèìîäåéñòâóþùèõ îáúåêòîâ, ïîä÷èíåííûõ îïðåäåëåííîé åäèíîé öåëè. Ýòî ïîíÿòèå îñíîâûâàåòñÿ íà ïîíÿòèÿõ ìíîæåñòâî è îòíîøåíèå, íî ãîðàçäî ñëîæíåå ïîñëåäíèõ. Åñëè ìû ðàññìîòðèì íàáîð äåòàëåé, èç êîòîðûõ ìîæíî ñîáðàòü êîìïüþòåð, òî ïîêà îíè ëåæàò íà ñòîëå îòäåëüíî äðóã îò äðóãà, èõ ìîæíî ðàññìàòðèâàòü êàê êîíå÷íîå ìíîæåñòâî äåòàëåé. Åñëè ìû áóäåì ñðàâíèâàòü ýòè äåòàëè ìåæäó ñîáîé ïî êàêîìó-òî ïðèçíàêó, íàïðèìåð, ïî âåñó èëè ñòîèìîñòè, òî ýòî óæå ìîæíî ðàññìàòðèâàòü
73
êàê îïðåäåëåííîå îòíîøåíèå íà çàäàííîé ïðåäìåòíîé îáëàñòè. Åñëè æå èç ýòèõ äåòàëåé ñîáðàòü äåéñòâóþùèé êîìïüþòåð, òî ýòî óæå áóäåò ñèñòåìà. Êàæäàÿ äåòàëü, âçàèìîäåéñòâóÿ ñ äðóãèìè, âíåñ¸ò ñâîé âêëàä â ðàáîòó ñèñòåìû. Ñèñòåìà ñàìà ìîæåò ÿâëÿòüñÿ ÷àñòüþ äðóãîé áîëåå ñëîæíîé ñèñòåìû. Íàïðèìåð, óæå ðàññìîòðåííûé íàìè êîìïüþòåð áóäåò âõîäèòü êàê ÷àñòü â ñèñòåìó, ïðåäñòàâëÿþùóþ ñîáîé ðàáî÷åå ìåñòî ïðîãðàììèñòà. Êðîìå íåãî, â ðàáî÷åå ìåñòî ìîãóò âõîäèòü, íàïðèìåð, ïðèíòåð, ìîäåì, ãðàôîïîñòðîèòåëü, çâóêîâàÿ êàðòà ñ êîëîíêàìè è äðóãèå ñèñòåìû. Ñèñòåìà ñ÷èòàåòñÿ îïèñàííîé, åñëè îïðåäåëåíû ñòðóêòóðà ñèñòåìû è ôóíêöèÿ ñèñòåìû. Ñòðóêòóðà è ôóíêöèîíèðîâàíèå ñèñòåìû îïðåäåëÿþòñÿ ïîñòàâëåííûìè ïåðåä íåé öåëÿìè. Öåëüþ äëÿ êîìïüþòåðà ÿâëÿåòñÿ àâòîìàòèçàöèÿ âûïîëíåíèÿ àëãîðèòìîâ ïðè ïîìîùè ïðîãðàìì, à äëÿ ðàáî÷åãî ìåñòà ïðîãðàììèñòà íàïðèìåð, âîçìîæíîñòü ïðîèçâåñòè ðàñïå÷àòêó è ïåðåñûëêó ðåçóëüòàòîâ, ïîëó÷åííûõ ïðè ïðîãðàììèðîâàíèè, èëè ïðè íàáîðå òåêñòà â íåêîòîðîì ðåäàêòîðå, èëè ïðè ðàáîòå ñ êàêîé-òî áàçîé äàííûõ. Ñòðóêòóðà ñèñòåìû ýòî ìíîæåñòâî ýëåìåíòîâ, èç êîòîðûõ ñîñòîèò ñèñòåìà, è âçàèìîñâÿçè ( îòíîøåíèÿ) ìåæäó íèìè. Ñòðóêòóðà ïîçâîëÿåò â íàãëÿäíîé ôîðìå ïîêàçàòü, èç êàêèõ ýëåìåíòîâ ñîñòîèò ñèñòåìà è êàê ýòè ýëåìåíòû ñâÿçàíû äðóã ñ äðóãîì. Äëÿ ïðåäñòàâëåíèÿ ñòðóêòóðû ñèñòåìû èñïîëüçóþò ðàçëè÷íûå ñõåìû, ïîäîáíî òîìó, êàê äëÿ ïðåäñòàâëåíèÿ ñòðóêòóðû ïðîãðàììû èñïîëüçóþò áëîê-ñõåìû. Äëÿ îïèñàíèÿ ñèñòåì íà ñòðîãîì ìàòåìàòè÷åñêîì ÿçûêå èñïîëüçóåòñÿ ïîíÿòèå ãðàôà. Îñíîâàòåëåì òåîðèè ãðàôîâ ÿâëÿåòñÿ Ýéëåð (1707 1782). Ñåé÷àñ òåîðèÿ ãðàôîâ èñïîëüçóåòñÿ ïðàêòè÷åñêè âî âñåõ îáëàñòÿõ íàóêè è ïîçâîëÿåò íàãëÿäíî, ÿñíî è âìåñòå ñ òåì ñòðîãî îïèñûâàòü ìíîãèå àáñòðàêòíûå ñòðóêòóðû. Îïðåäåëåíèå: ãðàôîì G íàçûâàåòñÿ ïàðà ìíîæåñòâ (V, E), ãäå V íåïóñòîå êîíå÷íîå ìíîæåñòâî ýëåìåíòîâ, íàçûâàåìûõ âåðøèíàìè ãðàôà, à E êîíå÷íîå ìíîæåñòâî ïàð (óïîðÿäî÷åííûõ èëè íåóïîðÿäî÷åííûõ) ýëåìåíòîâ èç ìíîæåñòâà V, íàçûâàåìûõ ðåáðàìè èëè äóãàìè ãðàôà.  òåðìèíàõ òåîðèè ãðàôîâ ýëåìåíòû ñèñòåìû ïðåäñòàâëÿþò ñîáîé âåðøèíû ãðàôà, à ñâÿçè ìåæäó íèìè äóãè. Äëÿ íàãëÿäíîãî èçîáðàæåíèÿ ñèñòåìû ïîñðåäñòâîì ãðàôà íóæíî òî÷êàìè íà ïëîñêîñòè èçîáðàçèòü å¸ ýëåìåíòû, à ëèíèÿìè, ñâÿçûâàþùèìè ìåæäó ñîáîé íåêîòîðûå èç ýòèõ òî÷åê ñâÿçè ìåæäó íèìè. Ïðè ýòîì ðàñïîëîæåíèå òî÷åê íà ïëîñêîñòè çíà÷åíèÿ íå èìååò. Äóãè òàêæå ìîãóò áûòü îòðåçêàìè èëè ÷àñòÿìè êàêèõòî êðèâûõ, ãëàâíîå, ÷òîáû îíè îäíîçíà÷íî è ïðàâèëüíî îòðàæàëè, êàêèå ýëåìåíòû ñ êàêèìè âçàèìîäåéñòâóþò. Ôóíêöèÿ ñèñòåìû ïðåäñòàâëÿåò ñîáîé îïèñàíèå âñåõ äîïóñòèìûõ ïðîöåññîâ, êîòîðûå ìîãóò èìåòü ìåñòî â äàííîé ñèñòåìå. Ôóíêöèè îïèñûâàþò â ìàòåìàòè÷åñêîé ôîðìå â âèäå óðàâíåíèé, ñèñòåì óðàâíåíèé èëè íåðàâåíñòâ. Èíîãäà òàêîå îïèñàíèå èç-çà ñëîæíîñòè ïðîöåññîâ íåâîçìîæíî â ïîëíîì îáú¸ìå.  ýòîì ñëó÷àå íåêîòîðûìè äåòàëÿìè èíôîðìàöèè (÷àñòüþ ïàðàìåòðîâ, çàäàþùèõ ñèñòåìó) ïðèõîäèòñÿ ïðåíåáðåãàòü. Íåîáõîäèìî ñëåäèòü, ÷òîáû îòáðîøåííûé ïàðàìåòð íå áûë ñóùåñòâåííûì ñ òî÷êè çðåíèÿ öåëåé, ðàäè êîòîðûõ ñèñòåìà ñòðîèòñÿ. Ëþáàÿ ñèñòåìà îáëàäàåò âàæíûì ñâîéñòâîì: öåëîå, îáðàçîâàííîå èç ìíîæåñòâà âçàèìîñâÿçàííûõ è âçàèìîäåéñòâóþùèõ ýëåìåíòîâ, îáëàäàåò òåìè êà÷åñòâàìè, êîòîðûå íå ïðèñóùè îòäåëüíûì ÷àñòÿì ýòîãî öåëîãî. Ïîýòîìó ñèñòåìó íåëüçÿ ðàññìàòðèâàòü êàê ïðîñòóþ ñóììó ñîñòàâëÿþùèõ å¸ ýëåìåíòîâ.  êàæäûé ìîìåíò âðåìåíè ñèñòåìà íàõîäèòñÿ â êàêîì-òî ñîñòîÿíèè, íàçûâàåìîì òåêóùèì. Òåêóùåå ñîñòîÿíèå ñèñòåìû îïðåäåëÿåòñÿ íàáîðîì çíà÷åíèé âñåõ ñîñòàâëÿþùèõ å¸ ïàðàìåòðîâ. Ñèñòåìà íàçûâàåòñÿ äåòåðìèíèðîâàííîé, åñëè â ëþáîé ìîìåíò âðåìåíè ìîæíî îäíîçíà÷íî îïðåäåëèòü å¸ ñîñòîÿíèå â ñëåäóþùèé ìîìåíò âðåìåíè. Ìîæíî ïðåäñòàâèòü ñåáå òàêèå ñèñòåìû, â êîòîðûõ íåçàâèñèìî îò òîãî, íàñêîëüêî ïîëíî îïðåäåëåíû ñîñòîÿíèÿ è íàñêîëüêî òî÷íî çàäàíû çíà÷åíèÿ ïàðàìåòðîâ, íåâîçìîæíî òî÷íî îïðåäåëèòü ïîñëåäóþùèå ñîñòîÿíèÿ. Òàêèå ñèñòåìû íàçûâàþòñÿ íåäåòåðìèíèðîâàííûìè. Ïî ñïîñîáó âçàèìîäåéñòâèÿ ìåæäó ñîáîé îòäåëüíûõ ÷àñòåé (êîìïîíåíò) ñèñòåìû äåëÿòñÿ íà íåñêîëüêî òèïîâ. Åñëè êîìïîíåíòû ñèñòåìû ìîãóò ðàáîòàòü äðóã çà äðóãîì ñòðîãî ïîî÷åðåäíî, òî ãîâîðÿò î ïîñëåäîâàòåëüíîé ñèñòåìå. Åñëè àêòèâíîñòü êîìïîíåíò ìîæåò èìåòü ìåñòî îäíîâðåìåííî, òî ãîâîðÿò î ïàðàëëåëüíî ðàáîòàþùåé ñèñòåìå. Åñëè òàêèå ñèñòåìû ïîñòðîåíû èç îòäåëüíûõ, óäàëåííûõ äðóã îò äðóãà â ïðîñòðàíñòâå êîìïîíåíò, òî ãîâîðÿò î ðàñïðåäåëåííûõ ñèñòåìàõ. Àðõèòåêòóðà ÝÂÌ ìîæåò áûòü îïèñàíà êàê ðàñïðåäåëåííàÿ ñèñòåìà. Äðóãèìè ïðèìåðàìè ñèñòåì ìîãóò áûòü êðóïíûå ïðîèçâîäñòâåííûå, òðàíñïîðòíûå è èíôîðìàöèîííûå ñèñòåìû, ñëîæíûå ýëåêòðîííûå óñòðîéñòâà, íåðâíàÿ ñèñòåìà, ñîëíå÷íàÿ ñèñòåìà, îòîïèòåëüíàÿ ñèñòåìà. Àâòîìàòèçèðîâàííûå ñèñòåìû ïðåäñòàâëÿþò ñîáîé ñîâîêóïíîñòü óïðàâëÿåìîãî îáúåêòà è àâòîìàòè÷åñêèõ óïðàâëÿþùèõ óñòðîéñòâ, ãäå ÷àñòü ôóíêöèé óïðàâëåíèÿ âûïîëíÿåò ÷åëîâåê (îïåðàòîð).  íåé àâòîìàòè÷åñêèå óñòðîéñòâà îñóùåñòâëÿþò ñáîð èíôîðìàöèè ñ îáúåêòà óïðàâëåíèÿ, åå ïåðåäà÷ó, ïðåîáðàçîâàíèå è îáðàáîòêó, ôîðìèðîâàíèå óïðàâëÿþùèõ êîìàíä è èõ âûïîëíåíèå íà óïðàâëÿåìîì îáúåêòå, òî åñòü òå ôóíêöèè, êîòîðûå ëåã÷å âñåãî ïîääàþòñÿ ôîðìàëèçàöèè. ×åëîâåê-îïåðàòîð îïðåäåëÿåò öåëè óïðàâëåíèÿ è êîððåêòèðóåò ñèñòåìó ïðè èçìåíåíèè óñëîâèé.
74
Ðàññìîòðèì ïðèìåð ïðîñòîé ðàñïðåäåëåííîé ñèñòåìû:
À
Â
Ñèäèò çà ñòîëîì
Âõîäèò â êîìíàòó
Âñòàåò
Ïîäõîäèò ê À
À è Â ïîæèìàþò äðóã äðóãó ðóêè
À ñàäèòñÿ
 ñàäèòñÿ
Çäåñü ñàìûé ñóùåñòâåííûé ïàðàìåòð - âðåìÿ, åñëè åãî íå ó÷åñòü, òî ïîëó÷èòñÿ ñèñòåìà, ëèøåííàÿ ñìûñëà. Ëèòåðàòóðà. 1. Þ.À.Øèõàíîâè÷. Ââåäåíèå â ñîâðåìåííóþ ìàòåìàòèêó. Ì.: Íàóêà, 1965. 2. Ä.Êóê, Ä.Áåéç. Êîìïüþòåðíàÿ ìàòåìàòèêà. Ì.: Íàóêà, 1990. 3. ßí Ñòþàðò. Êîíöåïöèè ñîâðåìåííîé ìàòåìàòèêè. Ìèíñê: Âûøåéøàÿ øêîëà, 1980. 4. Äæ.Êåìåíè, Äæ.Ñíåëë, Äæ.Òîìïñîí. Ââåäåíèå â êîíå÷íóþ ìàòåìàòèêó, Èíîñòðàííàÿ ëèòåðàòóðà, 1963. 5. Ì.Â.Äìèòðèåâà, À.À.Êóáåíñêèé. Ýëåìåíòû ñîâðåìåííîãî ïðîãðàììèðîâàíèÿ, Èçä-âî ÑàíêòÏåòåðáóðãñêîãî Óíèâåðñèòåòà,1991.
Äìèòðèåâà Ìàðèíà Âàëåðüåâíà, äîöåíò êàôåäðû èíôîðìàòèêè Ñàíêò-Ïåòåðáóðãñêîãî ãîñóäàðñòâåííîãî óíèâåðñèòåòà. Ïàâëîâà Ìàðèàííà Âëàäèìèðîâíà, ñòàðøèé ïðåïîäàâàòåëü êàôåäðû èíôîðìàòèêè ÑÏáÃÓ, ïðåïîäàâàòåëü øêîëû-ëèöåÿ N 419.
ÍÀØÈ
ÀÂÒÎÐÛ
75