Studrb.ru банк рефератов
Консультация и поддержка студентов в учёбе

Главная » Бесплатные рефераты » Бесплатные рефераты по информатике »

Курсовая работа: Алгоритмы сортировки

Алгоритмы сортировки [23.04.11]

Тема: Алгоритмы сортировки

Раздел: Бесплатные рефераты по информатике

Тип: Курсовая работа | Размер: 219.62K | Скачано: 340 | Добавлен 23.04.11 в 08:48 | Рейтинг: +1 | Еще Курсовые работы

Вуз: ВЗФЭИ

Год и город: Липецк 2011


Оглавление

Введение……………………………………………………………….……….3

Теоретическая часть

1.    Основные понятия……………..………………………………………..4

2.    Классификация   элементов алгоритма сортировки………………….5

3.    Характеристика    методов сортировки………………………………..9

Заключение……………………………………………………………………19

Практическая часть (вариант № 7)    20   

4.    Общая характеристика задачи………………………………………..20

5.    Описание алгоритма решения задачи………………………………..22

Список  литературы    …27

 

Введение

Разработкой программного обеспечения занимается  такая  отрасль  науки,  как программирование. Программирование содержит целый ряд важных внутренних  задач.  Одной  из наиболее важных задач для программирования  является задача  сортировки.  Под сортировкой   обычно   понимают    перестановки    элементов    любой последовательности в определенном порядке. Эта  задача  является  одной  из  важнейших потому, что  ее  целью  является  облегчение  последующей  обработки   определенных  данных   и, в первую очередь, задачи поиска.

Данная курсовая работа состоит из двух частей: теоретической и практической.

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

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

Краткие характеристики ПК и программного обеспечения, использованных для выполнения и оформления курсовой работы:

Теоретическая часть

  1. Основные понятия

Алгоритм – это точно определенная последовательность действий, которую необходимо выполнить над исходными данными для достижения решения задачи.

Сортировка - это процесс упорядочения некоторого множества элементов в некотором определенном порядке. Определенный порядок (например, упорядочение в алфавитном порядке, по возрастанию или убыванию количественных характеристик, по классам, типам и т.п.) в последовательности объектов необходимо для удобства работы с этим объектом. Сортировка применяется во всех без исключения областях программирования, будь то базы данных или математические программы.

Алгоритм сортировки — это алгоритм для упорядочения элементов в списке. В случае, когда элемент списка имеет несколько полей, поле по которому производится сортировка, называется ключом сортировки. На практике, в качестве ключа часто выступает число, а в остальных полях хранятся какие-либо данные, никак не влияющие на работу алгоритма.

Сортировка применяется во всех без исключения областях программирования, будь то базы данных или математические программы.

Практически каждый алгоритм сортировки можно разбить на три части:

  1. сравнение, определяющее упорядоченность пары элементов;
  2. перестановку, меняющую местами пару элементов;
  3. собственно сортирующий алгоритм, который осуществляет сравнение и перестановку элементов до тех пор, пока все элементы множества не будут упорядочены.

Целью алгоритмов сортировки является упорядочение последовательности элементов  данных.

 

2. Классификация элементов алгоритма сортировки

Алгоритм обладает рядом свойств, связанных с необходимостью выполнения определенных требований к процессу вычисления. Это следующие свойства: 1) определённость; 2) массовость; 3) результативность; 4) дискретность.

Определённость алгоритма означает,  что каждый шаг алгоритма должен быть точен, общепонятен, и исключать возможность различного толкования, другими словами алгоритм должен быть таким, чтобы его мог повторить любой пользователь. Массовость заключается в том, что алгоритм предназначен для решения целого класса задач, которые отличаются только своими входными условиями. Результативность означает, что пошаговый процесс решения задачи в соответствии с алгоритмом должен заканчиваться через определенное конечное число шагов. Дискретность алгоритма означает, что он исполняется по шагам: каждое действие, предусмотренное алгоритмом, исполняется только после того, как закончилось исполнение предыдущего.

Формы представления алгоритма:

1. Словесная форма;

2. Словесно-аналитическая форма;

3. В виде блок-схемы (графическое изображение алгоритма);

4. В виде программы на алгоритмическом языке программирования.

Виды алгоритмических структур:

1. Линейный алгоритм, в котором все команды выполняются последовательно одна за другой.

2. Разветвляющийся алгоритм, в котором в зависимости от условия выполнения либо одна серия команд, либо другая.

3. Циклический алгоритм, в котором многократно повторяется некоторый участок алгоритма.

Имеется два вида алгоритмов сортировки: сортировка массивов и сортировка последовательных файлов.

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

Основное отличие между сортировкой массивов и сортировкой последовательных файлов заключается в том, что каждый элемент массива является доступным в любое время. Это значит, что в любое время любой элемент массива может сравниваться с любым другим элементом массива и любые два элемента массива могут обмениваться местами. Напротив, в последовательном файле в каждый момент времени доступен лишь один элемент. Из-за этих отличий методы сортировки существенно отличаются для этих двух видов сортировки.

Классификация параметров оценки алгоритмов:

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

Память. Ряд алгоритмов требует выделения дополнительной памяти под временное хранение данных. При оценке используемой памяти не будет учитываться место, которое занимает исходный массив и независящие от входной последовательности затраты, например, на хранение кода программы.

Устойчивость. Устойчивая сортировка не меняет взаимного расположения равных элементов. Такое свойство может быть очень полезным, если они состоят из нескольких полей, а сортировка происходит по одному из них.

Естественность поведения — эффективность метода при обработке уже отсортированных, или частично отсортированных данных. Алгоритм ведёт себя естественно, если учитывает эту характеристику входной последовательности и работает лучше.

Ещё одним важным свойством алгоритма является его сфера применения. Здесь основных типов упорядочения два:

В современных архитектурах персональных компьютеров широко применяется подкачка и кэширование памяти. Алгоритм сортировки должен хорошо сочетаться с применяемыми алгоритмами кэширования и подкачки.

Доступ к носителю осуществляется последовательным образом: в каждый момент времени можно считать или записать только элемент, следующий за текущим.

Объём данных не позволяет им разместиться в ОЗУ (оперативно запоминающие устройство).

Также алгоритмы классифицируются по:

Существует множество методов сортировки, каждый из которых имеет свои достоинства и недостатки. Рассмотрим лишь некоторые из них:

  1. Сортировка пузырьком.
  2. Сортировка перемешиванием.
  3. Сортировка методом вставок.
  4. Сортировка подсчетом.
  5. Сортировка слиянием.
  6. Цифровая сортировка.
  7. Сортировка методом выбора.
  8. Сортировка методом Шелла.
  9. Обменная поразрядная сортировка.
  10. Пирамидальная сортировка.
  11. Сортировка массивом (хеширование).
  12. Быстрая сортировка (метод Хоара).
  13. Блочная сортировка.

 

3. Характеристика методов сортировки

  1. Сортировка пузырьком.

Наиболее известной (и наиболее "бесславной") является сортировка пузырьковым методом. Ее популярность объясняется запоминающимся названием и простотой алгоритма. Однако, эта сортировка является одной из самых худших среди всех когда-либо придуманных сортировок. Метод очень прост и состоит в следующем: берется пара рядом стоящих элементов, и если элемент с меньшим индексом оказывается больше элемента с большим индексом, то мы меняем их местами. Эти действия продолжаем, пока есть такие пары. Легко понять, что когда таких пар не останется, то данные будут отсортированными. Для упрощения поиска таких пар данные просматриваются по порядку от начала до конца. Из этого следует, что за такой просмотр находится максимум, который помещается в конец массива, а потому следующий раз достаточно просматривать уже меньшее количество элементов. Максимальный элемент как бы всплывает вверх, отсюда и название алгоритма. Так как каждый раз на свое место становится, по крайней мере, один элемент, то не потребуется более N проходов, где N — количество элементов.

 

Схема 1. Алгоритм сортировки методом «пузырька»

  1. Сортировка перемешиванием.

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

  1. Сортировка методом вставок.

Сортировка методом вставок (англ. insertion sort) — простой алгоритм сортировки. Хотя этот метод сортировки намного менее эффективен, чем более сложные алгоритмы (такие как быстрая сортировка), у него есть ряд преимуществ: прост в реализации; эффективен на небольших наборах данных; эффективен на наборах данных, которые уже частично отсортированы; это устойчивый алгоритм сортировки (не меняет порядок элементов, которые уже отсортированы); может сортировать список по мере его получения.

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

 

Схема 2. Алгоритм сортировки методом вставок

  1. Сортировка подсчетом.

Алгоритм сортировки массива, при котором подсчитывается число одинаковых элементов. Алгоритм выгодно применять, когда в массиве много элементов, но все они достаточно малы. Идея сортировки указана в её названии — нужно подсчитывать число элементов, а затем выстраивать массив. Пусть, к примеру, имеется массив A из миллиона натуральных чисел, меньших 100. Тогда можно создать вспомогательный массив B из 99 (1..99) элементов, «пробежать» весь исходный массив и вычислять частоту встречаемости каждого элемента — то есть если A[i]=a, то B[a] следует увеличить на единицу. Затем «пробежать» счетчиком i массив B, записывая в массив A число i B[i] раз.

  1. Сортировка слиянием.

Сортировка слиянием (англ. merge sort) — алгоритм сортировки, который упорядочивает списки (или другие структуры данных, доступ к элементам которых можно получать только последовательно, например — потоки) в определённом порядке. Алгоритм был изобретён Джоном фон Нейманом в 1945 году.

  1. Цифровая сортировка.

Цифровая сортировка (англ. pigeonhole sort) обладает линейной вычислительной сложностью (О(n)), что является лучшей возможной производительностью для алгоритма сортировки, так как в любом таком алгоритме каждый сортируемый элемент необходимо просмотреть хотя бы однажды. Однако, применение алгоритма цифровой сортировки целесообразно лишь тогда, когда сортируемые предметы имеют (или их можно отобразить) в диапазон возможных значений, который достаточно мал по сравнению с сортируемым списком. Эффективность алгоритма падает всякий раз, когда несколько различных элементов попадает в одну ячейку. Необходимость сортировки внутри ячеек лишает алгоритм смысла, так как каждый элемент придётся просматривать более одного раза. Так что, для простоты и с целью отличить «классическую» цифровую сортировку от её многочисленных вариантов, укажем, что подсчёт должен быть обратимым: если два элемента попадают в одну ячейку, то они должны иметь одинаковое значение. Несколько элементов с одним значением в одной ячейке не портят картину — их можно просто вставить в отсортированный список рядом, один за другим (это позволяет применять цифровую сортировку в качестве устойчивой).

Алгоритм цифровой сортировки действует следующим образом:

  1. Создаём массив изначально пустых «ячеек», по одной для каждой величины из диапазона ключей.
  2. Просматриваем изначальный массив, помещая каждый его элемент в свою ячейку.
  3. Проходим по массиву ячеек в нужном порядке и переносим элементы из непустых ячеек обратно в первоначальный массив.

Эффективность этого алгоритма сильно зависит от плотности элементов в массиве ячеек. Если элементов этого массива намного больше, чем сортируемых предметов, то шаги 1 и 3 будут относительно медленными. Сортировку подсчётом применяют редко, потому что её требования редко удовлетворяются, и часто бывает проще применить другие, более гибкие и почти такие же быстрые алгоритмы сортировки. В некотором роде, быстрая сортировка представляет собой обобщённую сортировку подсчётом (всего с двумя ячейками в каждый момент времени).

  1. Сортировка методом выбора.

Один из самых простых методов сортировки работает следующим образом: находим наименьший элемент в массиве и обмениваем его с элементом находящимся на первом месте. Потом повторяем процесс со второй позиции в файле и найденный элемент обмениваем со вторым элементном и так далее пока весь массив не будет отсортирован. Этот метод называется сортировка выбором, поскольку он работает, циклически выбирая наименьший из оставшихся элементов.

Этот метод работает очень хорошо для небольших файлов. Его «внутренний цикл» состоит из сравнения a[i]min] (плюс код необходимый для увеличения j и проверки на то, что он не превысил N), что вряд ли можно еще упростить.

Кроме того, хотя сортировка выбором является методом «грубой силы», он имеет очень важное применение: поскольку каждый элемент передвигается не более чем раз, то он очень хорош для больших записей с маленькими ключами.

 

Схема 3. Алгоритм сортировки методом выбора

  1. Сортировка методом Шелла.

Идея алгоритма состоит в обмене элементов, расположенных не только рядом, как в сортировке методом вставок, но и далеко друг от друга, что значительно сокращает общее число операций перемещения элементов.

Для примера возьмем файл из 16 элементов. Сначала просматриваются пары с шагом 8. Это пары элементов 1-9, 2-10, 3-11, 4-12, 5-13, 6-14, 7-15, 8-16. Если значения элементов в паре не упорядочены по возрастанию, то элементы меняются местами. Назовем этот этап 8-сортировкой. Следующий этап — 4-сортировка, на котором элементы в файле делятся на четверки: 1-5-9-13, 2-6-10-14, 3-7-11-15, 4-8-12-16. Выполняется сортировка в каждой четверке.

Следующий этап — 2-сортировка, когда элементы в файле делятся на 2 группы по 8: 1-3-5-7-9-11-13-15 и 2-4-6-8-10-12-14-16. Выполняется сортировка в каждой восьмерке. Наконец весь файл упорядочивается методом вставок. Поскольку дальние элементы уже переместились на свое место или находятся вблизи от него, этот этап будет значительно менее трудоемким, чем при сортировке вставками без предварительных «дальних» обменов.

Время выполнения сортировки пропорционально n1.2. Эта зависимость значительно лучше квадратичной зависимости n2, которой подчиняется большинство простых алгоритмов сортировки.

 

Схема 4. Алгоритм сортировки методом Шелла

  1. Обменная поразрядная сортировка.

Этот метод, совершенно отличен от всех схем сортировки, которые рассматривались прежде; в нем используется двоичное представление ключей, и потому он предназначен исключительно для двоичных машин. Вместо того чтобы сравнивать между собой два ключа, в этом методе проверяется, равны ли 0 или 1 отдельные биты ключа. В других отношениях он обладает характеристиками обменной сортировки и на самом деле очень напоминает быструю сортировку. Так как он зависит от разрядов ключа, представленного в двоичной системе счисления, мы называем его "обменной поразрядной сортировкой". В общих чертах этот алгоритм можно описать следующим образом:

  1. Последовательность сортируется по старшему значащему двоичному биту так, чтобы все ключи, начинающиеся с 0, оказались перед всеми ключами, начинающимися с 1. Для этого надо найти самый левый ключ Ki, начинающийся с 1, и самый правый ключ Kj, начинающийся с 0, после чего Ri и Rj меняются местами, и процесс повторяется, пока не станет i > j.
  2. Пусть F0—множество элементов, начинающихся с 0, а F1—все остальные. Применим к F0 поразрядную сортировку (начав теперь со второго бита слева, а не со старшего) до тех пор, пока множество F0 не будет полностью отсортировано; затем проделаем то же с F1.
  1. Пирамидальная сортировка.

Пирамидальная сортировка — алгоритм сортировки, работающий в худшем, в среднем и в лучшем случае (т.е. гарантированно) за О(n log n) операций при сортировке n элементов.

Сортировка пирамидой использует сортирующее дерево. Сортирующее дерево – это такое двоичное дерево, у которого выполнены условия:

  1. Каждый лист имеет глубину либо d либо d-1
  2. Значение в любой вершине больше, чем значения ее потомков.

Удобная структура данных для сортирующего дерева – такой массив Array, что Array[1] – элемент в корне, а потомки элемента Array[i] - Array[2i] и Array[2i+1].

Алгоритм сортировки будет состоять из двух основных шагов:

1. Выстраиваем элементы массива в виде сортирующего дерева. Этот шаг требует О(n) операций.

2. Будем удалять элементы из корня по одному за раз и перестраивать дерево. Процесс продолжается до тех пор, пока в сортирующем дереве не останется один элемент. Тогда Array[1], Array[2], ... , Array[n] - упорядоченная последовательность.

Этот шаг требует О(n log n) операций.

  1. Сортировка массивом (хеширование).

Это самый быстрый метод сортировки, однако, существует множество существенных недостатков.

Суть метода заключается в заполнении вспомогательного массива, содержащего элементы несколько больше, чем исходная последовательность. Заполнение этого вспомогательного массива происходит таким образом: вычисляются значения некоторой монотонной функции, называемой хэш-функция, на элементах сортируемой последовательности и эти значения считаются индексами этих элементов в заполняемом массиве. Если же окажется, что подлежащий заполнению элемент вспомогательного массива уже занят, то происходит сдвиг соответствующих элементов этого массива так, чтобы образовалось “окно” для вносимого элемента и сохранялась упорядоченность между элементами. Функция должна выбираться так, чтобы ее значения лежали внутри диапазона индексов вспомогательного массива. Например, если известно, что сортируемая последовательность состоит из натуральных чисел от 1 до N, то в качестве искомой функции можно взять , . В общем случае, в качестве такой функции рекомендуется взять:

,

где A – это исходная последовательность (массив), Max(A) и Min(A) максимальный и минимальный элемент A,B – это вспомогательный массив, а Size(B) – это его размер. Эта монотонная (почти линейная) функция гарантирует, что ее значение на элементах сортируемого массива будут лежать в диапазоне от 1 до Size(B). Она определена только при Max(A) ≠ Min(A). Если же Max(A) = Min(B), то это означает, что массив состоит из одинаковых элементов, то есть он отсортирован.

  1. Быстрая сортировка (метод Хоара).

Быстрая сортировка (англ. quicksort) — широко известный алгоритм сортировки, разработанный английским информатиком Чарльзом Хоаром. Даёт в среднем O(n log n) сравнений при сортировке n элементов. В худшем случае, однако, получается O(n2) сравнений. Обычно на практике быстрая сортировка значительно быстрее, чем другие алгоритмы с оценкой O(n log n), по причине того, что внутренний цикл алгоритма может быть эффективно реализован почти на любой архитектуре, и на большинстве реальных данных можно найти решения, которые минимизируют вероятность того, что понадобится квадратичное время.

Интересно, что Хоар разработал этот метод применительно к машинному переводу: дело в том, что в то время словарь хранился на магнитной ленте, и если отсортировать все слова в тексте, их переводы можно получить за один прогон ленты.

Быстрая сортировка использует стратегию «разделяй и властвуй». Шаги алгоритма таковы:

  1. Выбираем в массиве некоторый элемент, который будем называть .
  2. Операция массива: реорганизуем массив таким образом, чтобы все элементы, меньшие или равные опорному элементу, оказались слева от него, а все элементы, большие опорного — справа от него.
  3. Рекурсивно сортируем подсписки, лежащие слева и справа от опорного элемента.

Базой рекурсии являются списки, состоящие из одного или двух элементов, которые уже отсортированы. Алгоритм всегда завершается, поскольку за каждую итерацию он ставит по крайней мере один элемент на его окончательное место.

При выборе опорного элемента из данного диапазона случайным образом, худший случай становится очень маловероятным и ожидаемое время выполнения алгоритма сортировки - O(n log n).

  1. Блочная сортировка.

Блочная сортировка (Карманная сортировка, корзинная сортировка, англ. Bucket sort) — алгоритм сортировки, в котором сортируемые элементы распределяются между конечным числом отдельных блоков (карманов, корзин) так, чтобы все элементы в каждом следующем по порядку блоке были всегда больше (или меньше), чем в предыдущем. Каждый блок затем сортируется отдельно, либо рекурсивно тем же методом, либо другим. Затем элементы помещаются обратно в массив. Этот тип сортировки может обладать линейным временем исполнения.

Данный алгоритм требует знаний о природе сортируемых данных, выходящих за рамки функций "сравнить" и "поменять местами", достаточных для сортировки слиянием, сортировки пирамидой, быстрой сортировки, сортировки Шелла, сортировки вставкой.

Преимущества: относится к классу быстрых алгоритмов с линейным временем исполнения O(N) (на удачных входных данных).

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

 

Заключение

Решая конкретную экономическую задачу, необходимо выбрать множество данных, представляющих реальную ситуацию. Затем надлежит выбрать способ представления этой информации. Однако очень важную роль играют и свойства самих данных, операций, которые должны выполняться над ними. Современные средства программирования позволяют оперировать с множествами, массивами, записями, файлами (очередями).

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

Какой алгоритм, из множества известных сейчас самый быстрый?

Ответа на этот вопрос не существует. Нет самого оптимального алгоритма в абстрактном смысле. Выбор его очень сильно зависит от условия задачи, которую необходимо решить.

 

 Практическая часть (вариант № 7)

4. Общая характеристика задачи

Постановка задачи:  

    Используя ППП (пакет прикладных программ) необходимо подвести итоги о результатах расчета стоимости по полученному заказу за октябрь 2006  года  фирмы ООО «Стройдизайн» по каждому виду работ.

Текст задачи:

Фирма ООО «Стройдизайн» осуществляет деятельность, связанную с выполнением работ по ремонту помещений. Прайс-лист на выполнение работы приведен на рис. 7.1. Данные о заказанных работах указаны               на рис. 7.2.

  1. Построить таблицы по приведенным ниже данным.
  2. Выполнить расчет стоимости выполняемых работ по полученному заказу, данные расчета занести в таблицу (рис. 7.2.)
  3. Организовать межтабличные связи для автоматического формирования счета, выставляемого клиенту для оплаты выполняемых работ.
  4. Сформировать и заполнить счет на оплату (рис. 7.3.)
  5. Результаты расчета стоимости каждого вида работ по полученному заказу представить в графическом виде.

Прайс - лист

Наименование работы

Единица измерения

Цена за ед. (руб.)

Замена батарей

шт.

250

Замена ванны

шт.

210

Замена труб

м

240

Наклейка обоев

м²

50

Настилка паркета

м²

75

Побелка потолка

м²

15

Рисунок 7.1  Прайс-лист на выполняемые работы.

 

Расчет стоимости выполняемых работ

Наименование работы

Единица измерения

Объем выполняемых работ

Цена за ед.изм.,руб.

Стоимость работ, руб.

Замена батарей

шт.

4

 

 

Наклейка обоев

М ²

20

 

 

Замена труб

м

4

 

 

Настилка паркета

м²

15

 

 

Рисунок 7.2. Данные о поступившем заказе

 

Счет

ООО "Стройдизайн"

 

 

 

 

 

 

СЧЕТ № 1

Дата

_._.20_

ФИО клиента

____________________________________

 

 

№ п /п

Наименование работы

Единица измерения

Объем выполняемых работ

Цена за ед.изм.,руб.

Стоимость работ, руб.

1

Замена батарей

шт.

 

 

 

2

Наклейка обоев

м²

 

 

 

3

Замена труб

м

 

 

 

4

Настилка паркета

м²

 

 

 

 

ИТОГО:

 

НДС:

 

СУММА С НДС:

Гл. бухгалтер

 

 

 

 

 

 

Рисунок 7.3. Форма счета на оплату выполненных работ.

5. Описание алгоритма решения задачи

1. Запустить табличный процессор MS Excel.

2. Создать книгу с именем «Стройдизайн».

3. Лист 1 переименовать в лист с названием Работы.

4. На рабочем листе Работы MS Excel создать таблицу базового прайс-листа.

5. Заполнить таблицу базового прайс-листа исходными данными (рис. 1).

 

Рис 1. Прайс-лист на выполняемые работы

6. Лист 2 переименовать в лист с названием Расчет.

7. На рабочем листе Расчет MS Excel создать таблицу, в которой будут содержаться данные о поступившем заказе (рис.2).

 

Рис 2. Данные о поступившем заказе.

8. Заполнить таблицу с данными о поступившем заказе. Заполнить графы Цена за ед. изм., руб., Стоимость работ, руб., находящейся на листе Расчет (рис. 3).

Заполнить ячейку Цена за ед. изм., руб. следующим образом:

Занести в ячейку D3 формулу:

 

Размножить введенную в ячейку Е3 формулу для остальных ячеек (с D3 по D6) данной графы.

Таким образом, будет выполняться цикл, управляющим параметром которого является Цена за ед. изм., руб. 

Заполнить графу Стоимость работ, руб., таблицы «Данные о поступившем заказе», находящейся на листе Расчет следующим образом:

Занести в ячейку E3 формулу:

 

Размножить введенную в ячейку E3 формулу для остальных ячеек (с E3 по E6) данные графы.

Таким образом, будет выполняться цикл, управляющим параметром которого является Стоимость работ, руб.

 

Рис 3.

9. Лист 3 переименовать с названием Формы счета.

10. Заполнить таблицу Форма счета на оплату выполненных работ.

11. На рабочем листе Форма счета MS Excel создать форму заказа.

12. Путем создания межтабличных связей заполнить созданную форму полученными данными из таблицы «Данные о поступившем заказе» (рис. 4).

13. Заполнить графу Цена за ед. изм., руб., таблицы «Форма счета на оплату выполненных услуг», находящейся на листе Форма счета следующим образом:

Занести в ячейку Е7 формулу:

 

Размножить введенную в ячейку Е7 формулу для остальных ячеек (с Е7 по Е10) данной графы.

14. Заполнить графу Объем выполняемых работ, таблицы «Форма счета на оплату выполненных услуг», находящейся на листе Форма счета следующим образом:

Занести в ячейку D7 формулу:

 

Размножить введенную в ячейку D7 формулу для остальных ячеек (с D7 по D10) данной графы.

15. Заполнить графу Стоимость работ, руб., таблицы «Форма счета на оплату выполненных услуг», находящейся на листе Форма счета следующим образом:

Занести в ячейку Е7 формулу:

 

Размножить введенную в ячейку Е7 формулу для остальных ячеек (с Е7 по Е10) данной графы.

16. В ячейку F11 занести формулы суммы значений ячеек с F7 по F10:

=СУММ(F7:F10)

17. В ячейку F12 занести значение НДС 18%, для этого выбрать формат ячейки "процентный".

18. В ячейку F13 вводим формулу:

=F11-(F11*F12)

 

Рис 4. Форма счета на оплату выполняемых работ

19.Лист 4 переименовать в лист с названием График.

20.На рабочем листе График MS Excel создать сводную таблицу. Путем создания межтабличных связей автоматически заполнить графы Наименование работы и  Стоимость работ, руб.

21. Заполнить графу Стоимость работ, руб., сводной таблицы, находящейся на листе График следующим образом:

В ячейку B4 вводим формулу:

= ЕСЛИ(A4="";"";ПРОСМОТР(A4;Расчет!$A$3:$A$6;Расчет!$E$3:$E$6)).

Размножить введенную в ячейку B4 формулу для остальных ячеек (с B4 по B7) данной графы.

В ячейку B9 занести формулы суммы значений ячеек с B4 по B7:

=СУММ(B4:B8)

22. Результаты вычислений каждого вида работ по полученному заказу за октябрь 2006г. представить графически на рабочем листе График MS Excel (рис. 5).

 

Рис 5. Сводная таблица и графическое представление результатов вычислений

Анализ решения.

Организация ООО «Стройдизайн» выполняет заказы по ремонту помещений. На диаграмме продемонстрирован заказ на различные виды работ, поступивший в октябре 2006г. По приведенным данным видно, что наибольшая стоимость работ приходится на настилку паркета, которая составляет в данном заказе 1125 руб., замена батарей и наклейка обоев, обойдется заказчику в одинаковую сумму по 1000 руб., а замена труб составила 960 руб. Цены указаны до вычета налога. На каждый вид работ приходится разный объем работ. Итого, счет в целом, обойдется заказчику в 4085 руб. до вычета налога, с вычетом обязательных налогов НДС- 3349,70 руб.

 

Список литературы

1. Информатика: Методические указания по выполнению курсовой работы для самостоятельной работы студентов II курса (первое высшее образование). – М.: Вузовский учебник, 2006, - 60с.

2. Информатика: учеб. Пособие для студ. высш. пед. Учеб. заведений / А.В.Могилев, Е.К.Хеннер, Н.И.Пак ; под ред. А.В.Могилева. – М.: Изд. Центр «Академия», 2006. – 336 с.

3. Информатика: Практикум по технологии работы на компьютере / Под ред. Н.В.Макаровой. – М.: Финансы и статистика, 1997. – 384 с.: ил.

4. Информационные системы в экономике: Учеб. пособие / Под ред. проф. А. Н. Романова, проф. Б. Е. Одинцова – М.: Вузовский учебник, 2008. – 411 с.

5. Программирование на языке высокого уровня: Текст лекций / Н.В. Ефимушкина, С.П. Орлов, В.М. Чухонцев; Самар. гос. техн. ун-т. - Самара, 2002. 182с.

6. Симонович С. В., Евсеев Г. А. Практическая информатика: Универсальный курс. – М.: АСТ-ПРЕСС: Инфорком-Пресс, 2001, - 480с.

7. Ткачук В.  Алгоритмы сортировки - http://base.vingrad.ru/view/130-Algoritmyi-sortirovki

8. Ткачук В. Все о программировании - http://www.ru-coding.com/algoritm_1.php

9. Экономическая информатика: Учебник / Под ред. В.П.Косарева. –   2-е изд., перераб. И доп. – М.: Финансы и статистика, 2005. – 529 с.: ил.

Внимание!

Если вам нужна помощь в написании работы, то рекомендуем обратиться к профессионалам. Более 70 000 авторов готовы помочь вам прямо сейчас. Бесплатные корректировки и доработки. Узнайте стоимость своей работы

Бесплатная оценка

+1
Размер: 219.62K
Скачано: 340
Скачать бесплатно
23.04.11 в 08:48 Автор:

Понравилось? Нажмите на кнопочку ниже. Вам не сложно, а нам приятно).


Чтобы скачать бесплатно Курсовые работы на максимальной скорости, зарегистрируйтесь или авторизуйтесь на сайте.

Важно! Все представленные Курсовые работы для бесплатного скачивания предназначены для составления плана или основы собственных научных трудов.


Друзья! У вас есть уникальная возможность помочь таким же студентам как и вы! Если наш сайт помог вам найти нужную работу, то вы, безусловно, понимаете как добавленная вами работа может облегчить труд другим.

Добавить работу


Если Курсовая работа, по Вашему мнению, плохого качества, или эту работу Вы уже встречали, сообщите об этом нам.


Добавление отзыва к работе

Добавить отзыв могут только зарегистрированные пользователи.


Похожие работы

Консультация и поддержка студентов в учёбе