Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Лабораторная работа: Оцінка трудомісткості алгоритму

Название: Оцінка трудомісткості алгоритму
Раздел: Рефераты по информатике, программированию
Тип: лабораторная работа Добавлен 10:21:23 03 июня 2011 Похожие работы
Просмотров: 346 Комментариев: 21 Оценило: 2 человек Средний балл: 5 Оценка: неизвестно     Скачать

Міністерство освіти і науки, молоді та спорту України

Тернопільський національний технічний університет ім. І.Пулюя

Кафедра комп’ютерних систем та мереж

Звіт

до лабораторної роботи №4

на тему Оцінка трудомісткості алгоритму

з дисципліни Комп’ютерні системи

Виконав:

Студент групи СІ 22

Никорчук Володимир

Перевірив:

Хомів Богдан Арсенович

Тернопіль2011


Частина 1 . Засвоєння засобів аналізу трудомісткості обчислювальних алгоритмів

Короткі теоретичні відомості:

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

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

ϴ - середня кількість процесорних операцій, необхідних для однієї реалізації алгоритму;

N1 ,N2 ,…NH – середня кількість запитів до файлів за один прогін програми;

L1 ,L2 ,…LH - середня кількість інформації, що передається за одне звернення до файлів F1 ,F2 ,…FH .

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

Для розрахунку трудомісткості алгоритму необхідно знати ймовірності переходів з логічних вершин при одиничному значенні логічної умови. Якщо відповідну ймовірність визначити через p, тоді ймовірність виходу з логічної вершини при нульовому логічному значенні умови, що перевіряється буде дорівнювати l-p . Для подальших розрахунків схему алгоритму раціонально зображати в вигляді графа алгоритму. Для цього пропонується перенумерувати всі оператори схеми алгоритму. У логічних операторів замість логічних умов «1» і «0» будемо записувати відповідну даному виходу ймовірність. Ймовірність виходу з операторної вершини дорівнює 1. Граф алгоритму можна істотно спростити, якщо трудомісткість виконання логічних вершин незначна в порівнянні з трудомісткістю виконання операторних вершин. Тоді стани, що відповідають логічними вершинами, можна злити з станами, що випереджають відповідні операторні вершини.

Хід роботи:

1. Побудова блок-схеми за логічною схемою алгоритмів.

Поч. X11 А В X22 С X33 Е X44 К М Кін.

Блок-схема даного алгоритму зображена на рис.1.

Рисунок 1


2. Побудова графа даного алгоритму з отриманої вище блок-схеми, що показано на рис.2.

Рисунок 2


3. Мінімізація графа даного алгоритму, що показано на рис. 3.

Рисунок 3

4. Подання графа у вигляді стохастичної матриці зображено в таблиці1.

алгоритм граф трудомісткість excel

Таблиця1

S1 S2 S3 S4 S5 S6 S7 Sk
S0 0.8 0.2
S1 1
S2 0.2 0.8
S3 0.3 0.7
S4 1
S5 0.8 0.2
S6 1
S7 1

5. Розв`язання системи алгебраїчних рівнянь, рішення яких дає середнє число запитів до операторів, що показано в таблиці 2.

Таблиця 2

n0= 1 n0= 1
n1= 0.8n0 n1= 0.8
n2= 1n1+0.2 n2+0.8 n5 n2= 5
n3= 0.8n2 n3= 4
n4= 0.3n3 n4= 1.2
n5= 0.7n3+1n4 n5= 4
n6= 0.2n5 n6= 0.8
n7= 0.2 n0+1n6 n7= 1

6. Знаходження середньої кількості процесорних операцій за допомогою програмиMicrosoftExcelпоказана на рис.4.

Рисунок 4

7. Знаходження кількості звернень до файлів та довжин за допомогою програми MicrosoftExcelзображено на рис.5.


Рисунок 5

Частина 2 . Компіляція програми

Операційна система Linuxмає багато вбудованих компіляторів, практично під кожну мову програмування високого рівня. Два найбільш поширені компілятори – це gccта g++ для мов програмування С та С++ відповідно. В даній лабораторній роботі я використовував компілятор g++, з допомогою якого скомпілював програму, що обчислює числа Фібоначчі. Ця програма складається з двох файлів lab.cpp та fib.h. Перший містить головну функцію програми і слугує для вводу виводу чисел. Другий проводить математичні операції з числами. Результат виконання програми об’єднується і записується в один об’єктний файл lab1. Щоб зібрати всі файли в один, потрібно використати ключ –о, наприклад: g++ lab.cppfib.h –olab1. Виконуємо отриманий файл за допомогою команди ./lab1 .

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

Лістинг 2.1 lab.cpp

#include <iostream>

#include "fib.h"

using namespace std;

int main()

{

long n;

cout<<"Enter the fibonacci number:"; cin>>n;

cout<<"The "<<n<<" number of fibonacci is:"<<fibonacci(n)<<endl;

return 0;

}

Лістинг 2.2 fib.h

long fibonacci ( long n)

{

if ( n == 0)

{

return 0;

}

else if ( n == 1 )

{

return 1;

}

Else return fibonacci( n -1) + fibonacci(n-2);}


Висновок

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

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Хватит париться. На сайте FAST-REFERAT.RU вам сделают любой реферат, курсовую или дипломную. Сам пользуюсь, и вам советую!
Никита09:41:11 03 ноября 2021
.
.09:41:08 03 ноября 2021
.
.09:41:06 03 ноября 2021
.
.09:41:06 03 ноября 2021
.
.09:41:05 03 ноября 2021

Смотреть все комментарии (21)
Работы, похожие на Лабораторная работа: Оцінка трудомісткості алгоритму

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(294399)
Комментарии (4230)
Copyright © 2005 - 2024 BestReferat.ru / реклама на сайте