Інформація про навчальний заклад

ВУЗ:
Національний університет водного господарства та природокористування
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2012
Тип роботи:
Інші
Предмет:
Математика

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки, молоді та спорту України Національний університет водного господарства та природокористування Кафедра обчислювальної математики   Підготував: Студент І курсу Факультету ФіК Група ОіА-11 (дист) Савчук Роман Перевірив: Савич В.М. Рівне 2012 План. І. Табличний редактор MS Word. Програмні засоби для архівування даних. Прийоми і методи роботи із архівними даними. ІІ. Табличний процесор MS EXCEL. Розв’язати систему лінійних алгебраїчних рівнянь АХ=В матричним способом та методом Крамера. Зробити перевірку. Розв’язування нелінійних рівнянь. Побудова таблиці значень і графіка функції що задана полярними координатами. За дослідними даними зобразити поле розсіювання, побудувати лінію тренду та відтворити на графіку. Обчислити прогнозовану величину. На основі аналізу динамічного ряду росту прибутку побудувати функцію. ІІІ. Програмування. Написати програму. І.1. Характерною особливістю більшості типів даних є їх надлишковість. Ступінь надлишковості даних залежить від типу даних. Наприклад, для відеоданих ступі нь надлишковості в декілька разів більша ніж для графічних даних, а ступінь надлишковості графічних даних, у свою чергу, більша за ступінь надлишковості текстових даних. Іншим фактором, що впливає на ступінь надлишковості є прийнята система кодування. Прикладом систем кодування можуть бути звичайні мови спілкування, які є ні чим іншим, як системами кодування понять та ідей для висловлення думок. Так, встановлено, що кодування текстових даних за допомогою засобів української мови дає в середньому надлишковість на 20-25% більшу ніж кодування аналогічних даних засобами англійської мови. Для людини надлишковість даних часто пов'язана з якістю інформації, оскільки надлишковість, як правило, покращує зрозумілість та сприйняття інформації. Однак, коли мова йде про зберігання та передачу інформації засобами комп'ютерної техніки, то надлишковість відіграє негативну роль, оскільки вона приводить до зростання вартості зберігання та передачі інформації. Особливо актуальною є ця проблема у випадку необхідності обробки величезних обсягів інформації при незначних об'ємах носіїв даних. У зв'язку з цим постійно виникає проблема позбавлення надлишковості або стиснення даних. Коли методи стиснення даних застосовуються до готових файлів, то часто замість терміну "стиснення даних" вживають термін "архівування даних", стиснений варіант даних називають архівом, а програмні засоби, що реалізують методи стиснення називаються архіваторами. В залежності від того, в якому об'єкті розміщені дані, що підлягають стисненню розрізняють: Стиснення (архівування) файлів: використовується для зменшення розмірів файлів при підготовці їх до передавання каналами зв'язку або до транспортування на зовнішніх носіях малої ємності; Стиснення (архівування) папок: використовується як засіб зменшення обсягу папок перед довготерміновим зберіганням, наприклад, при резервному копіюванні; Стиснення (ущільнення) дисків: використовується для підвищення ефективності використання дискового простору шляхом стиснення даних при записі їх на носії інформації (як правило, засобами операційної системи). Існує багато практичних алгоритмів стиснення даних, але всі вони базуються на трьох теоретичних способах зменшення надлишковості даних. Перший спосіб полягає в зміні вмісту даних, другий - у зміні структури даних, а третій - в одночасній зміні як структури, так і вмісту даних. Якщо при стисненні даних відбувається зміна їх вмісту, то метод стиснення є незворотнім, тобто при відновленні (розархівуванні) даних з архіву не відбувається повне відновлення інформації. Такі методи часто називаються методами стиснення з регульованими втратами інформації. Зрозуміло, що ці методи можна застосовувати тільки для таких типів даних, для яких втрата частини вмісту не приводить до суттєвого спотворення інформації. До таких типів даних відносяться відео- та аудіодані, а також графічні дані. Методи стиснення з регульованими втратами інформації забезпечують значно більший ступінь стиснення, але їх не можна застосовувати до текстових даних. Прикладами форматів стиснення з втратами інформації можуть бути: JPEG (Joint Photographic Experts Group) для графічних даних; MPG - для для відеоданих; MP3 - для аудіоданих. Якщо при стисненні даних відбувається тільки зміна структури даних, то метод стиснення є зворотнім. У цьому випадкові з архіву можна відновити інформацію повністю. Зворотні методи стиснення можна застосовувати до будь-яких типів даних, але вони дають менший ступінь стиснення у порівнянні з незворотними методами стиснення. Приклади форматів стиснення без втрати інформації: GIF (Graphics Interchange Format), TIFF (Tagged Image File Format) - для графічних даних; AVI - для відеоданих; ZIP, ARJ, RAR, CAB, LH - для довільних типів даних. Існує багато різних практичних методів стиснення без втрати інформації, які, як правило, мають різну ефективність для різних типів даних та різних обсягів. Однак, в основі цих методів лежать три теоретичних алгоритми: алгоритм RLE (Run Length Encoding); алгоритми групи KWE(KeyWord Encoding); алгоритм Хафмана. Алгоритм RLE В основі алгоритму RLE лежить ідея виявлення послідовностей даних, що повторюються, та заміни цих послідовностей більш простою структурою, в якій вказується код даних та коефіцієнт повторення. Наприклад, нехай задана така послідовність даних, що підлягає стисненню: 1 1 1 1 2 2 3 4 4 4 В алгоритмі RLE пропонується замінити її наступною структурою: 1 4 2 2 3 1 4 3, де перше число кожної пари чисел -це код даних, а друге - коефіцієнт повторення. Якщо для зберігання кожного елементу даних вхідної послідовності відводиться 1 байт, то вся послідовність займатиме 10 байт пам'яті, тоді як вихідна послідовність (стиснений варіант) займатиме 8 байт пам'яті. Чим менше значення коефіцієнта стиснення, тим ефективніший метод стиснення. Зрозуміло, що алгоритм RLE буде давати кращий ефект стиснення при більшій довжині послідовності даних, що повторюється. У випадкові розглянутого вище прикладу, якщо вхідна послідовність матиме такий вигляд: 1 1 1 1 1 1 3 4 4 4, то коефіцієнт стиснення буде рівний 60%. У зв'язку з цим найбільша ефективність алгоритму RLE досягається при стисненні графічних даних (особливо для однотонових фонових зображень). Алгоритми групи KWE В основі алгоритму стиснення за ключовими словами покладено принцип кодування лексичних одиниць групами байт фіксованої довжини. Прикладом лексичної одиниці може бути звичайне слово. На практиці, в ролі лексичних одиниць вибираються послідовності символів, що повторюються, які кодуються ланцюжком символів (кодом) меншої довжини. Результат кодування зводиться в таблицю, утворюючи так званий словник. Існує досить багато реалізацій цього алгоритму, серед яких найбільш поширеними є алгоритм Лемпеля-Зіва (алгоритм LZ) та його модифікація алгоритм Лемпеля-Зіва-Велча (алгоритм LZW). Словником в даному алгоритмі є потенційно нескінченний список фраз. Алгоритм починає роботу з майже пустого словника, що містить тільки один закодований рядок, так званий NULL-рядок. Коли зчитується черговий символ вхідної послідовності даних, він додається до поточного рядка. Процес продовжується доти, поки поточний рядок відповідає якій-небудь фразі з словника. Але рано або пізно поточний рядок перестає відповідати якій-небудь фразі словника. У цей момент, коли поточний рядок являє собою останній збіг зі словником плюс щойно прочитаний символ повідомлення, кодер видає код, що складається з індексу збігу і наступного за ним символа, що порушив збіг рядків. Крім того, нова фраза, що складається з індексу збігу і наступного за ним снмвола, додається в словник. У наступний раз, коли ця фраза з'явиться в повідомленні, вона може бути використана для побудови більш довгої фрази, що підвищує міру стиснення інформації. Алгоритм LZW побудований навколо таблиці фраз (словника), яка відображає рядки символів стиснуваного повідомлення в коди фіксованої довжини. Таблиця володіє так званою властивістю передування, тобто для кожної фрази словника, що складається з деякої фрази w і символа К фраза w також міститься в словнику. Якщо всі частинки словника повністю заповнені кодування перестає бути адаптивним (кодування відбувається виходячи з вже існуючих в словнику фраз). Алгоритми стиснення цієї групи найефективніші для текстових даних великих обсягів і малоефективні для файлів малих розмірів (за рахунок необхідності зберігання словника). Алгоритм Хафмана В основі алгоритму Хафмана лежить ідея кодування бітовими групами. Спочатку проводиться частотний аналіз вхідної послідовності даних, тобто встановлюється частота входження кожного символу, що зустрічається у ній. Після цього символи сортуються по спаданню частоти входження. Основна ідея полягає в наступному: чим частіше зустрічається символ, тим меншою кількістю біт він кодується. Результат кодування зводиться в словник, що необхідний для декодування. Розглянемо простий приклад, що ілюструє роботу алгоритму Хафмана. Нехай задано текст, в якому літера 'А' входить 10 разів, літера 'B' - 8 раз, 'C'- 6 разів , 'D' - 5 разів, 'E' і 'F' - по 4 рази. Тоді один з можливих варіантів кодування за алгоритмом Хафмана наведений у таблиці 1. Таблиця 1. Символ Частота входження Бітовий код  A 10 00  B 8 01  C 6 100  D 5 101  E 4 110  F 4 111  Як видно з таблиці 1, розмір вхідного тексту до стиснення рівний 37 байт, тоді як після стиснення - 93 біт, тобто майже 12 байт (без врахування довжини словника). Коефіцієнт стиснення рівний 32%. Алгоритм Хафмана універсальний, тобто його можна застосовувати для стиснення даних будь-яких типів, але він малоефективний для файлів малих розмірів (за рахунок необхідності зберігання словника). На практиці програмні засоби стиснення даних синтезують ці три "чистих" алгоритми, оскільки їх ефективність залежить від типу та обсягу даних. У таблиці 2 наведені найпоширеніші формати стиснення та відповідні їм програми-архіватори, що використовуються на практиці. Таблиця 2. Формат стиснення Операційна система MS DOS Операційна система Windows   Програма архівування Програма розархівування Програма архівування Програма розархівування  ARJ Arj.exe Arj.exe WinArj.exe WinArj.exe  RAR Rar.exe Unrar.exe WinRar.exe WinRar.exe  ZIP Pkzip.exe Pkunzip.exe WinZip.exe WinZip.exe  Крім того, сучасні архіватори надають користувачеві повний спектр послуг для роботи з архівами, основними з яких є: створення нового архіву; додавання файлів в існуючий архів; розпакування файлів з архіву; створення архівів, що саморозпаковуються (self-extractor archive); створення розподілених архівів фіксованих розмірів для носіїв малої ємності; захист архівів паролями від несанкціонованого доступу; перегляд вмісту файлів різних форматів без попереднього розархівування; пошук файлів і даних всередині архіву; перевірка на віруси в архіві до розпакування; вибір та налаштування коефіцієнта стиснення. A B C D  1 АХ=В        2 Метод крамера        3          4   3 4 9  5 А= 1 2 -1  6   5 0 11  7          8   31      9 В= -1      10   33      11          12   31 4 9  13 А1= -1 2 -1  14   33 0 11  15          16   3 31 9  17 А2= 1 -1 -1  18   5 33 11  19          20   3 4 31  21 А2= 1 2 -1  22   5 0 33  23          24 ∆А= =МОБР(B4:D6)      25          26 ∆А1= =МОПРЕД(B12:D14)      27 ∆А2= =МОПРЕД(B16:D18)      28 ∆А3= =МОПРЕД(B20:D22)      29          30 х1= =B26/B24      31 х2= =B27/B24      32 х3= =B28/B24      33          34          35   =МУМНОЖ(B5:D6;B30:B32)      36 АХ= =МУМНОЖ(B5:D6;B30:B32)      37   =МУМНОЖ(B5:D6;B30:B32)      ІІ.2. метод крамера. Матричний спосіб А В С D  1 АХ=В        2 Матричний спосіб        3 А-1*АХ=А-1*В        4 Х=А-1*В        5          6   3 4 9  7 А= 1 2 -1  8   5 0 11  9          10   31      11 В= -1      12   33      13          14   =МОБР(B6:D8) =МОБР(B6:D8) =МОБР(B6:D8)  15 А-1= =МОБР(B6:D8) =МОБР(B6:D8) =МОБР(B6:D8)  16   =МОБР(B6:D8) =МОБР(B6:D8) =МОБР(B6:D8)  17          18 ∆А= =МОБР(B6:D8)      19          20 х1= =МУМНОЖ(B14:D16;B10:B12)      21 х2= =МУМНОЖ(B14:D16;B10:B12)      22 х3= =МУМНОЖ(B14:D16;B10:B12)       А В С D  1             2       (-5;0)  3 а= -0,01   (0;5)  4 в= 0,01   (-1;1)  5 dx= =(B4-B3)/(B6-1)      6 n= 20      7 K x y    8 1 =B$3+A8*B$5 =B8^3-B8^2+4    9 2 =B$3+A9*B$5 =B9^3-B9^2+4    10 3 =B$3+A10*B$5 =B10^3-B10^2+4    11 4 =B$3+A11*B$5 =B11^3-B11^2+4    12 5 =B$3+A12*B$5 =B12^3-B12^2+4    13 6 =B$3+A13*B$5 =B13^3-B13^2+4    14 7 =B$3+A14*B$5 =B14^3-B14^2+4    15 8 =B$3+A15*B$5 =B15^3-B15^2+4    16 9 =B$3+A16*B$5 =B16^3-B16^2+4    17 10 =B$3+A17*B$5 =B17^3-B17^2+4    18 11 =B$3+A18*B$5 =B18^3-B18^2+4    19 12 =B$3+A19*B$5 =B19^3-B19^2+4    20 13 =B$3+A20*B$5 =B20^3-B20^2+4    21 14 =B$3+A21*B$5 =B21^3-B21^2+4    22 15 =B$3+A22*B$5 =B22^3-B22^2+4    23 16 =B$3+A23*B$5 =B23^3-B23^2+4    24 17 =B$3+A24*B$5 =B24^3-B24^2+4    25 18 =B$3+A25*B$5 =B25^3-B25^2+4    26 19 =B$3+A26*B$5 =B26^3-B26^2+4    27 корінь рівняння -1,31474 =B12^3-B12^2+4    28   0,01 =B26^3-B26^2+4    29                                                                                                                4. A B C D E F G H  1                     2                            3 а= 0              4 в= 6,28              5 dx= 5,28              6 n= 20              7 K Фі R x y        8 1 6,28 -0,49996 -0,49996 0,001593        9 2 7,28 0,331616 0,318841 0,278473        10 3 8,28 0,066441 0,06632 0,060503        11 4 9,28 -0,41847 -0,41771 -0,06037        12 5 10,28 0,480625 0,449351 -0,36274        13 6 11,28 -0,20984 -0,2056 0,20141        14 7 12,28 -0,2063 -0,20595 0,058275        15 8 13,28 0,479538 0,456107 0,313897        16 9 14,28 -0,42059 -0,38467 -0,41631        17 10 15,28 0,070295 0,070265 0,029174        18 11 16,28 0,328695 0,323505 -0,17794        19 12 17,28 -0,49999 -0,43879 0,499993        20 13 18,28 0,32494 0,319965 -0,17523        21 14 19,28 0,075204 0,075166 0,031381        22 15 20,28 -0,42325 -0,38662 -0,41909        23 16 21,28 0,47811 0,455018 0,312064        24 17 22,28 -0,20177 -0,20144 0,057476        25 18 23,28 -0,21433 -0,20981 0,205871        26 19 24,28 0,481969 0,450568 -0,36296                                                                                                                                                                                                                                                                                                             Завдання 7. Function SortAscending(ByRef a() As String) As String n = UBound(a) For i = 1 To n - 1 For j = 0 To i - 1 If CDbl(a(j)) > CDbl(a(i)) Then tmp = a(j) a(j) = a(i) a(i) = tmp End If Next Next SortAscending = "" For i = 0 To n - 1 SortAscending = SortAscending + a(i) + " " Next Exit Function End Function Function SortDescending(ByRef a() As String) As String n = UBound(a) For i = 1 To n - 1 For j = 0 To i - 1 If CDbl(a(j)) < CDbl(a(i)) Then tmp = a(j) a(j) = a(i) a(i) = tmp End If Next Next SortDescending = "" For i = 0 To n - 1 SortDescending = SortDescending + a(i) + " " Next Exit Function End Function Private Sub Command1_Click() myVariant = 5 Label1.Caption = "" If Right(Text1.Text, 1) <> " " Then Text1.Text = Text1.Text + " " End If Dim a() As String a = Split(Text1.Text, " ") n = UBound(a) If n < 4 Then Label1.Caption = "Cannot output 2 elements on parity indexes" Else If n Mod 2 = 0 Then ind = n - 3 Else ind = n - 4 End If Label1.Caption = Str(a(ind)) + "; " + Str(a(ind + 2)) End If If myVariant Mod 2 = 0 Then Text2.Text = SortDescending(a) Else Text2.Text = SortAscending(a) End If End Sub
Антиботан аватар за замовчуванням

24.12.2012 18:12-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!