Луганський нацІональнИй унІверситет 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Луганський нацІональнИй унІверситет



ДЕРЖАВНИЙ ЗАКЛАД

Луганський нацІональнИй унІверситет

ІМЕНІ Тараса ШЕВЧЕНКА

 

Методичні вказівки

До виконання курсовой роботи з дисципліни

«Об'єктно-орієнтоване програмування»

для студентів спеціальності

Програмна інженерії»

 

 

Луганськ

«Альма-матер»


УДК [004:519.6](076)

ББК 22.19 p3:32.973 p3

K 77

Рецензенти:

Могильний Г. А. – кандидат технічних наук, доцент, завідувач кафедри інформаційних технологій та систем Луганського національного університету імені Тараса Шевченка.

Лахно В.А. – кандидат технічних наук, доцент кафедри

економічної кібернетики Луганського національного аграрного університету.

 

K 77 Донченко В.Ю. Курсовий проект: Методичні рекомендації до виконання курсового проекту з об’єктно-орієнтованого програмування для студентів спеціальності 6.050103 «Програмна інженерія». – Луганськ: Альма-матер, 2011. – с.

 

Методичні рекомендації призначені для виконання курсової роботи з об’єктно-орієнтованого програмування. Методичні рекомендації містять орієнтовну тематику курсових робіт, організацію виконання, структуру пояснювальної записки, змісти розділів, вимоги згідно ЄСКД України до оформлення пояснювальної записки курсової роботи, приклади оформлення окремих структурних елементів. Мета методичних рекомендацій – допомогти студентам при виконанні курсової роботи, призначеної для закріплення знань, отриманих при вивченні теоретичної частини курсу, і отримання практичних навичок розробки об'єктно-орієнтованих програм, а також оформленні пояснювальної записки.

Рекомендовані для студентів спеціальності 6.050103 «Програмна інженерія», можуть бути використані студентами інших спеціальностей.

 

УДК [004:519.6](076)

ББК 22.19 p3:32.973 p3

 

Рекомендовано до друку навчально-методичною радою

Луганського національного університету

імені Тараса Шевченка

(протокол № __ від __.__.__)

 

© Донченко В.Ю.

© Альма-матер, 2011


ЗМІСТ

 


ВСТУП

Курсова робота - це перша самостійна наукова праця майбутнього програмного інженера. При її виконанні студент поглиблює знання з фундаментальних та професійно-орієнтованих дисциплін, засвоює методику експериментальних досліджень, оволодіває навичками співставлення результатів своїх досліджень із літературними даними, аналізу, узагальнення і літературного оформлення одержаних результатів з теми дослідження, набуває вміння вести науковий пошук, що розвиває в молодого інженера творчий підхід до роботи.

Курсова робота з об'єктно-орієнтованого програмування передбачає знання студентами об’єктно-орієнтованого проектування та програмування і є завершальним етапом вивчення у рамках курсу об'єктно-орієнтоване програмування підготовки студентів спеціальності 6.050103 «Програмна інженерія» кваліфікаційного рівня,,Бакалавр’’ та виконується протягом IV семестру.

МЕТА ТА ЗАВДАННЯ КУРСОВОЇ РОБОТИ

Метою курсової роботи є закріплення, поглиблення та узагальнення знань, якими студент оволодів під час вивчення курсу, в набутті навичок використання основ алгоритмізації та програмування на алгоритмічних мовах високого рівня з використанням принципів об’єктно-орієнтованого проектування та програмування, методики розробки програмних модулів та програмного забезпечення комп’ютерних систем управління, набуття студентами теоретичних знань та практичних навичок в області використання сучасних систем візуального проектування програмних засобів комп’ютерних систем управління та освоєння принципів та методів сучасних технологій програмування, набуття навичок професійних та практики наукових досліджень з оформленням відповідного текстового, програмного та ілюстративного матеріалу у формі наукового звіту.

Виконання курсової роботи (КР) направлено на закріплення знань, отриманих при вивченні теоретичної частини курсу, і набуття практичних навичок розробки об'єктно-орієнтованих програм. В результаті виконання курсової роботи студент повинен освоїти:

- концепції об'єктно-орієнтованого програмування;

- спеціалізовані засоби розробки програмного забезпечення мовою С +;

- основи уніфікованої мови моделювання UML.

знати: загальні питання побудови та використання сучасних систем об’єктно-орієнтованного та візуального проектування програмних засобів комп’ютерних систем управління; основні поняття та методи об’єктно-орієнтованного проектування та програмування, основні засоби розробки програм з використанням багато ієрархічних структур об’єктів та класів об’єктів;

вміти: самостійно вибирати середовище проектування програмних засобів, проектувати, розробляти, налагоджувати та супроводжувати сучасне програмне забезпечення комп’ютерних систем управління.

Під час виконання курсової роботи студент повинен продемонструвати:

- вміння збирати і аналізувати відповідні матеріали про об’єкт дослідження, використовуючи сучасні джерела інформації, включаючи Інтернет ресурси;

- спроможність проводити необхідні обґрунтування для розробки програмних засобів систем управління різного призначення, тощо;

- здатність доводити розв'язання поставленої задачі до логічного кінця;

- - вміння аналізувати отримані результати і робити з них висновки.

КР складається з двох взаємопов'язаних частин. Для виконання першої частини КР потрібно побудувати детальну об'єктну модель запропонованої предметної області. Друга частина КР передбачає безпосередню розробку об'єктно- орієнтованого програмного забезпечення, реалізує розроблену об'єктну модель.

ЗАВДАННЯ НА ПРОЕКТУВАННЯ

Варіант завдання на КР студенту призначає викладач. Постановки завдань наведені в розділі 3.

Кожна з двох частин КР розглядається, як самостійне завдання і може захищатися окремо. Перша частина КР вирішує питання аналізу та проектування системи, моделює реальну предметну область. Так як запропонований варіант формулювання задачі являє собою лише поверхневий опис предметної області і не претендує на повноту і завершеність, то конкретизація і уточнення покладаються на проектувальника. При цьому може виявитися, що функціональна повнота (забезпечення всіх необхідних характеристик) не може бути досягнута за обмежений час, виділений на розробку. У цьому випадку необхідно узгодити з викладачем підмножину функцій, які будуть складати ядро проектованої системи.

У першій частині КР необхідно:

- зробити опис запропонованої в завданні предметної області;

- визначити набір функцій, які повинна вирішувати система описуваної предметної області;

- виділити з опису предметної області можливі об'єкти і класи;

- підготувати словник даних;

- визначити залежності (зв'язку) між об'єктами (класами);

- визначити атрибути об'єктів;

- виконати груповання і запропонувати ієрархію спадкування класів;

- провести подальше дослідження та удосконалення отриманої моделі;

- написання «скелета» всіх отриманих класів.

Друга частина - безпосередня розробка програмного забезпечення базується на результатах проектування виконаного в першій частині.

При виконанні курсового проекту рекомендується спиратися на бібліографічні джерела [1-5] та іншу літературу з об'єктно- орієнтованого програмування.

Незалежно від варіанту завдання на КР можна виділити кілька формальні критеріїв оцінки програми розробленої студентом:

Коректність програми.

Програма правильно працює з коректними тестовими даними.

Стійкість програми.

Введена інформація піддається логічному контролю. Програма не повинна втрачати працездатності, при будь-яких діях, навіть некоректних діях користувача. Всі дії, які загрожують втратою інформації, виконуються тільки після повторного підтвердження.

Функціональна повнота.

Програма повинна здійснювати протоколювання всіх виконуваних в ній дій. В рамках погодженою з викладачем підмножиною функцій, всі вони повинні бути реалізовані (Приклад: програма повинна дозволяти проводити пошук або вибірку інформації по зробленому фільтру. При невдалому завданні умови запиту забезпечується його коригування, з метою звуження або розширення зони пошуку).

ПРИКЛАД ВИКОНАННЯ ПРОЕКТУ

Постановка завдання

Банк. Відомості про вкладників банку: номер особового рахунку, категорія вкладу, паспортні дані, поточна сума внеску, дата останньої операції. Операції прийому і видачі будь-якої суми, автоматичне нарахування відсотків.

Опис предметної області

Клієнти банку мають пластикові банківські картки (один клієнт може мати декілька карток); картка містить код картки, код банку, код клієнта та іншу інформацію, що забезпечує доступ до рахунку (рахунках) клієнта в цьому банку. Клієнт може вкласти свою картку в термінал (банкомат) і, за умови, що код картки і код банку вірні, почати банківську проводку.

Проводка полягає в узгодженій зміні даних на рахунках клієнта та звітної документації банку, що зберігаються в базі даних банку, відповідно за даними проводки. Проводка включає в себе і перевірку права клієнта на доступ до його рахунках на момент проведення (перевірка безпеки), і перевірку відповідності суми, затребуваної клієнтом, поточним станом його рахунку. Якщо перевірки пройшли успішно, клієнт отримує в терміналі затребувану ним суму грошей і квитанцію, в іншому випадку він отримує тільки квитанцію. Під час здійснення проводки можуть відбутися збої в роботі апаратури, або клієнт може передумати отримувати гроші і скасувати вже проводку,яка почалася. У цьому випадку всі рахунки і звітні документи повинні бути відновлені в тому стані, в якому вони були до початку проведення (відкат).

Для реалізації відкату використовується служба ведення записів про зміни, внесених до бази даних банку при виконанні проводки. Всі дії, пов'язані з виконанням

проводки (в тому числі протоколювання і забезпечення безпеки проводки), виробляються програмним забезпеченням системи управління банківською мережею.

Комп'ютер банку підтримує рахунки клієнтів, тобто зберігає їх у своїй базі даних і виконує проводки над цими рахунками за запитами з банкомату (Дистанційна проводка) або з касових терміналів (проведення касира, дані про якої вводяться касиром).

Побудова об'єктної моделі

Розглянемо процес побудови об'єктної моделі для системи банківського обслуговування в процесі аналізу вимог і попереднього проектування цієї системи.

Для побудови об'єктної моделі даної системи необхідно виконати наступні етапи:

- визначення об'єктів і класів;

- підготовка словника даних;

- визначення залежностей між об'єктами;

- визначення атрибутів об'єктів і зв'язків;

- організація та спрощення класів при використанні спадкування;

- подальше дослідження і вдосконалення моделі.

Підготовка словника даних

Наведемо частину словника даних, яка містить визначення класів, використовуваних в проекті.

Банкомат - термінал, який дає можливість клієнту здійснювати свою власну проводку, використовуючи для ідентифікації свою картку. Банкомат посилає інформацію про проведення в банк для її перевірки. Надалі видає квитанцію клієнту і якщо проводка коректна - видає гроші.

Банк - фінансова організація, яка містить рахунки своїх клієнтів і випускає картки, що санкціонують доступ до рахунків через мережу терміналів.

Картка - пластикова картка, вручена банком своєму клієнтові, яка санкціонує доступ до рахунків через мережу терміналів. Кожна картка містить код банку, номер рахунку та номер картки, закодовані відповідно до національними стандартами на банківські картки. Картка не обов'язково забезпечує доступ до всіх рахунків клієнта. Кожной карткою може володіти тільки один клієнт, але у неї може існувати кілька копій.

Касир - службовець банку, який має право здійснювати проводки, інакше кажучи, може приймати і видавати гроші і чеки клієнтам.

Касовий термінал - термінал, з якого касир здійснює проводки для клієнтів. Коли касир приймає і видає гроші та чеки, касовий термінал друкує квитанції. Касовий термінал взаємодіє з комп'ютером банку, щоб перевірити і виконати проводку.

Клієнт - власник одного або декількох рахунків у банку. Клієнт може складатися з одного чи кількох осіб, або організацій.

Комп'ютер банку - комп'ютер, що належить банку, який взаємодіє з мережею терміналів.

Проводка - одиничний інтегрований запит на виконання деякої послідовності операцій над рахунками одного клієнта. Всі проводки повинні протоколюватися і правильно враховуватися.

Рахунок - одиничний банківський рахунок, над якими виконуються проводки. Рахунки можуть бути різних типів; клієнт може мати кілька рахунків.

2.6. Визначення залежностей (зв'язків) між класами

Необхідно виділити явні і неявні дієслівні обороти з попередньої постановки задачі (опис предметної області) і розглянути їх як імена можливих залежностей.

Дієслівні обороти (явні і неявні):

Банківська мережа включає касирів і термінали

Банк володіє комп'ютером банку

У банку служать касири

Комп'ютер банку підтримує рахунки

Банк володіє всіма терміналами

Касовий термінал взаємодіє з комп'ютером банку

Касир вводить проводку над рахунком

Термінали взаємодіють з комп'ютером банку під час проводки

Термінал приймає картку

Термінал спілкується з користувачем

Термінал видає готівку

Термінал друкує квитанції

Банк надає програмне забезпечення

Система забезпечує протоколювання

Система забезпечує безпеку

Система регулює колективний доступ

Клієнти мають картки

Картка забезпечує доступ до рахунку

Потім необхідно виключить непотрібні або неправильні залежності:

- видаляємо залежності між виключеними класами.

- видаляємо нерелевантні залежності і залежності, пов'язані з реалізацією.

- розбиваємо складні залежності на прості залежності.

- видаляємо похідні залежності.

Таким чином, видаливши надлишкові залежності, отримаємо наступний список залежностей:

Банк володіє комп'ютером банку

Комп'ютер банку підтримує рахунки

Банк володіє касовими терміналами

Термінал взаємодіє з комп'ютером банку

Касир використовує касовий термінал

Касир вводить проводку

Проводка відноситься до рахунку

Банкомат ініціює проводку

Клієнти мають картки

Клієнти використовують банкомати

Картка забезпечує доступ до рахунку

У банку служать касири

Внести зміни і додати невраховані залежності можна буде пізніше, при розробці діаграми класів. Приклад діаграми класів представлений на малюнку 2.2.

Рис. 2.2. - Діаграма класів

Загальні вимоги

Загальними вимогами до пояснювальної записки є логічна послідовність викладання матеріалу, стислість, чіткість і конкретність викладання теоретичних і практичних результатів роботи, доказовість висновків і обґрунтованість рекомендацій.

Записку виконують із розрахунку не більше 40 рядків на сторінці за умови рівномірного її заповнення і висотою літер і цифр не менше 1,8 мм. При написанні тексту необхідно додержуватись таких розмірів полів: верхнє, ліве і нижнє - не менше 20 мм, праве - не менше 10 мм.

Прізвища, назви додатків, організацій, фірм та інші імена наводяться мовою оригіналу.

Пояснювальна записка виконується машинним способом на одній стороні аркушу білого паперу формату А4 (210 х 297 мм) відповідно до ДСТУ 3008-95 "Документація. Звіти в сфері науки і техніки. Структура і правила оформлення" [2]. Наведемо деякі положення цього документу.

Заголовки

Розділи і підрозділи повинні мати заголовки, пункти і підпункти можуть мати заголовки. Заголовки структурних елементів записки і заголовки розділів необхідно розташовувати посередині рядка і друкувати прописними літерами без крапки наприкінці, не підкреслюючи. Заголовки підрозділів, пунктів та підпунктів записки необхідно починати з абзацного відступу і друкувати малими літерами, крім першої прописної, не підкреслюючи, без крапки наприкінці. Абзацний відступ повинен бути однаковим по всьому тексту записки і має дорівнювати п'яти знакам. Якщо заголовок складається з двох або більше речень, їх розділяють крапкою.

Переноси слів у заголовку розділу не припускаються.

Відстань між заголовком і наступним або попереднім текстом повинна бути не менше двох рядків.

Не припускається розміщати найменування розділу, підрозділу, а також пункту і підпункту в нижній частині сторінки, якщо після нього розташований тільки один рядок тексту.

Нумерація сторінок

Нумерувати сторінки необхідно арабськими цифрами, дотримуючи наскрізну нумерацію по всьому тексті. Номер сторінки проставляють у правому верхньому кутку без крапки наприкінці.

Переліки

За необхідністю можуть бути використані переліки. Перед переліком ставлять двокрапку. Перед кожною позицією переліку треба ставити малу літеру алфавіту з дужкою або дефіс (перший рівень деталізації). Для подальшої деталізації переліку треба використовувати арабські цифри з дужкою (другий рівень деталізації).

Приклад:

а) перша версія бібліотеки;

б) друга версія бібліотеки:

1) для персональних комп’ютерів;

2) для мобільних пристроїв;

в) третя версія бібліотеки.

Ілюстрації

Ілюстрації треба розташовувати в пояснювальній записці безпосередньо після тексту, у якому вони вперше згадуються, або на наступній сторінці. На всі ілюстрації повинні бути посилання в пояснювальній записці. Ілюстрації можуть мати назву, що розташовують під ілюстрацією. При необхідності під ілюстрацією ще розташовують пояснювальні дані. Ілюстрація позначається словом “Рисунок”, що разом із назвою поміщають після пояснювальних даних, наприклад, “Рисунок 2.1 - Схема алгоритму”. Ілюстрації необхідно нумерувати арабськими цифрами в межах розділу, за винятком ілюстрацій, наведених у додатках. Номер ілюстрації складається з номера розділу і порядкового номера ілюстрації, розділених крапкою. Якщо ілюстрація не вміщується на одній сторінці, можна переносити її на інші сторінки, при цьому назву ілюстрації розташовують на першій сторінці, пояснювальні дані - на кожній сторінці, і під ними вказують: “Рисунок, аркуш ”.

Таблиці

Таблиці необхідно розташовувати в пояснювальній записці безпосередньо після тексту, у якому вони вперше згадуються, або на наступній сторінці. На всі таблиці повинні бути посилання в пояснювальній записці. Таблиця може мати назву, яку друкують малими літерами (крім першої прописної) і розміщують над таблицею. Якщо рядки або графи таблиці виходять за формат сторінки, таблицю поділяють на частини, розташовуючи одну частину під іншою, або поруч, або переносячи частини таблиці на наступну сторінку. Слово “Таблиця ”, вказують один раз зліва над першою частиною таблиці, над іншими частинами пишуть: “Продовження таблиці ” з вказівкою номера таблиці. Таблиці треба нумерувати арабськими цифрами в межах розділу, за винятком таблиць, наведених у додатках. Номер таблиці складається з номера розділу і порядкового номера таблиці, розділених крапкою.

Формули і рівняння

Формули і рівняння розташовують у пояснювальній записці безпосередньо після тексту, у якому вони вперше згадуються, посередині сторінки. Вище і нижче кожної формули повинно бути залишено не менше одного вільного рядка. Формули і рівняння треба нумерувати арабськими цифрами порядковою нумерацією в межах розділу, за винятком формул і рівнянь, наведених у додатках. Номер формули або рівняння складається з номера розділу і порядкового номера формули або рівняння, розділених крапкою. Номер формули або рівняння вказують на рівні формули або рівняння в дужках у крайньому правому положенні на рядку. Пояснення символів і числові коефіцієнти, що входять до формули або рівняння, варто робити безпосередньо після формули або рівняння в тій послідовності, у якій вони надані у формулі або рівнянні. Пояснення значення кожного символу або числового коефіцієнта необхідно давати з нового рядка. Перший рядок пояснення починають з абзацу словом ”де” без двокрапки. Переносити формули або рівняння на інший рядок припускається тільки на знаках виконуваних операцій, причому знак операції на початку такого рядка повторюють. При переносі формули або рівняння на знаку операції множення застосовують знак “х”. Формули, що прямують одна за одною, і не розділені текстом, відокремлюють комою.

Посилання

Посилання в тексті на джерела необхідно наводити в послідовності їх згадування в записці, вказуючи порядковий номер, виділений двома квадратними дужками, наприклад: [5].

Скорочення

У тексті пояснювальної записки припускається робити тільки загальновживані скорочення (наприклад "і т.д., і т.п., та ін.") або поширені абревіатури. Якщо в пояснювальній записці прийнята специфічна термінологія, або вживаються малопоширені скорочення, нові символи, позначення і ін., їх перелік необхідно надати в окремому списку. Перелік повинен розташовуватися стовпчиком, у якому слова за абеткою наводяться скорочено, а справа - їхнє докладне тлумачення. Якщо спеціальні символи, терміни, скорочення, і позначення наводяться менше трьох разів, перелік їх не складається, а їхнє тлумачення роблять у тексті при першому згадуванні.

Перелік посилань

Перелік посилань оформлюється як розділ пояснювальної записки з нової сторінки відповідно до вимог ГОСТ 7. 1-84 "Библиографическое описание документа. Общие требования и правила составления".

Для оформлення бібліографічних посилань, правильного запису загальноприйнятих скорочень рекомендується використовувати методичні вказівки [3], які складені з урахуванням відповідних стандартів.

 

Додатки

Додатки необхідно оформляти як продовження пояснювальної записки на наступних її сторінках, або в окремій частині, розташовуючи додатки в порядку появи посилань на них у тексті пояснювальної записки. Кожний додаток повинен починатися з нової сторінки і мати заголовок, надрукований вгорі малими літерами з першої прописної, симетрично щодо тексту сторінки. Посередині рядка над заголовком малими літерами з першої прописної повинно бути надруковано слово “Додаток ” і прописна буква, що позначає додаток. Додатки слід позначати послідовно прописними буквами українського алфавіту, за винятком букв Ґ, Є, З, І, Ї, Й, О, Ч, Ь. Один додаток позначається як А. Додатки повинні мати загальну з іншою частиною пояснювальної записки наскрізну нумерацію. Текст кожного додатка, при необхідності, може бути розділений на підрозділи і пункти, що нумеруються арабськими цифрами в межах кожного додатка.

 

ЛІТЕРАТУРА

1. Бадд Т. Объектно-ориентированное программирование в действии: Пер. с англ./Тимоти Бадд. – СПб.: Питер, 1997.– 464 с.

2. Бондарев В.М., Программирование на С++. Учебное пособие. – Харьков: СМИТ, 2004г. – 294 с.

3. Гамма Э. И др. Приемы объектно-ориентированного программирования. - СПб.:Питер, 2001г.

4. Дейтел Х., Дейтел П. Как программировать на С++. Третье издание.-М.:ЗАО „Издательство БИНОМ”, 2001г.-1152с.

5. Дьюхарт С. Старк К. Программирование на С++. Киев: Диалог Софт, 1993г.

6. Ирэ Пол. Объектно-ориентированное программирование с использованием C++: Пер. с англ. - Киев: НИИПФ ДиаСофт Лтд, 1995. 480с.

7. Павловская Т.А. С/С++. Программирование на языке высокого уровня.- СПб.: Питер, 2001.- 464 с.

8. Прата Стивен. Язык программирования С. Лекции и упражнения. Учебник.‑ СПб.: ООО «ДиаСофтЮП», 2002.‑ 896 с.

9. Скляров В.А. Язык C++ и объектно-ориентированное программирование: Справочное издание. - Минск: Вышэйшая школа, 1997. 480с.

10. Страуструп Б. Язык программирования С++. Специальное издание.-М., СПб.:”Издательство БИНОМ” – „Невский Диалект”, 2001г.-1099 с.

11. Сэвитч У. С++ в примерах.-М:Экон, 1997г.

12. Фридман А.Л. Основы объектно-ориентированной разработки программных систем. -М. Финансы и статистика. 2000г.

13. Черепанцев А.С. Введение в С и С++. Таганрог.

14. Шмак Н.К. Основы С++ и объектно-ориентированного программирования. Киев: Диалектика, 1996г.

ПЕРЕЛІК ПОСИЛАНЬ

1. Юркин А.Г. Задачник по программированию. – СПб.: Питер, 2002. – 192 с.

2. ДСТУ 3008-95 "Документація. Звіти в сфері науки і техніки. Структура і правила оформлення" – Державний стандарт України.

3. Методические указания по оформлению библиографических ссылок и списков к курсовым, дипломным и научным работам для студентов всех форм обучения и всех специальностей /Сост. Л.П. Гуданова, А.П.Мальцев, Л.П.Щербакова, А.К.Безуглая. - Харьков: ХИРЭ, 1986. - 36 с.


ДОДАТОК А

Зразок титульної сторінки курсової роботи

Міністерство освіти і науки, МОЛОДІ ТА СПОРТУ україни

Луганський національний університет

 

Інститут інформаційних технологій

Кафедра інформаційних технологій та систем

 

ПОЯСНЮВАЛЬНА ЗАПИСКА

 

до курсової роботи на тему

“Розробка програмного комплексу для автоматизації обліку

платежів абонентів кабельного телебачення”

Спеціальність 6.050103 «Програмна інженерія»

 

Група 2ПІ

Студент Іванов І.І.

Керівник проекту

 

Луганськ, 2011

 

ДЕРЖАВНИЙ ЗАКЛАД

Луганський нацІональнИй унІверситет

ІМЕНІ Тараса ШЕВЧЕНКА

 

Методичні вказівки



Поделиться:


Последнее изменение этой страницы: 2016-08-01; просмотров: 147; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 52.14.33.175 (0.095 с.)