- •Уфимский государственный авиационный технический университет
- •Разработка прикладного алгоритма
- •Пояснительная записка
- •Уфимский государственный авиационный технический университет
- •Функция изменения времени вычисления от объема исходных данных
- •Разработка алгоритма программы в виде блок-схемы.
- •Описание функций среды программирования Microsoft Visual Studio 6
- •Создание проекта
- •Описание работы программы.
- •Приложение а
- •Приложение б
- •Приложение в
Создание проекта
ЗДЕСЬ НУЖНО ОПИСАТЬ ИСПОЛЬЗУМЫЕ ВАМИ ФУНКЦИИ , КЛАССЫ, БИБЛИОТЕКИ и т.д.
P.S. Я еще не успел)))
Описание работы программы.
В диалоге программы имеется 4 элемента Edit Box, 3 элемента Button и 1 List Box.
В первое поле Edit Box (соответствующая переменная m_FileName) вводится название создаваемого файла. Если пользователь не введет название файла по каким-либо причинам, то программа автоматически задаст название файла по умолчанию (Поиск.txt)
В следующее поле Edit Box (m_NUM) пользователь вводит количество генерируемых элементов. Если пользователь не вводит в это поле данные, то программа выведет Message Box с просьбой к пользователю ввести значение.
В третье поле Edit Box (m_search) пользователь вводит то число, которое он хочет найти в только что сгенерированном массиве. Если он не вводит значение для поиска, то программа сообщит ему, о том, что он не ввел то, что хочет найти.
В четвертое поле Edit Box (m_SEARCHTIME) выводится время выполнения поиска.
Кнопка
При нажатии на эту кнопку создается одномерный массив сгенерированных данных, который заносятся в заранее определенный файл *.txt
Кнопка
При нажатии на эту кнопку создается массив для хранения сортируемой последовательности, используя указатель pInt (если возникла ошибка динамического выделения памяти, то об этом будет сообщено пользователю и завершено выполнение функции). В него считываются строки из файла *.txt . По окончании программа сообщает о выполнении получения и вывода элементов исходного массива.
Кнопка
При нажатии на эту кнопку происходит поиск в массиве того значения, которое укажет пользователь в поле Edit Box.
Вывод:
В ходе данной курсовой работы был изучен алгоритм быстрого последовательного поиска, а так же основы программирования в среде Microsoft Visual Studio 6.0. Язык С++ называют средой быстрой разработки приложений, что вполне оправдано – для создания аналогичной программы на ассемблере необходимо было бы написать код на сотню страниц. Visual Studio C++ является средой визуальной разработки приложений. Данный подход к программированию является одним из самых перспективных на сегодняшний день и это вполне оправданно как объемом кода для написания программы, так и следствием из этого – экономией времени. А пошаговая отладка позволяет быстро найти и исправить ошибки. Однако, для написания любой программы необходимо знать и уметь составлять алгоритмы решения задачи, что входит исключительно в задачи программиста. В связи с этим, в ходе выполнения работы, были изучены основы программирования на языке С++ , который является базовым для Visual Studio , без знания основ которого не может быть реализован ни один алгоритм. Так что для работы в среде Visual Studio необходимо знание основ как С++, так и объектно ориентированного программирования в целом.
Приложение а
void CSearchDlg::OnDofile()
{ UpdateData(1);
if (m_FileName.IsEmpty()) m_FileName = "Поиск";
CStdioFile m_File;
if ( !m_File.Open(m_FileName+CString(".txt"),
CFile::modeCreate | CFile::modeWrite | CFile::typeText) )
{MessageBox("(!) Ошибка открытия файла", "Информация", MB_ICONEXCLAMATION);
return;
}
if (m_NUM==0)
{ this->RedrawWindow();
CClientDC MyDC(GetDlgItem(IDC_NUM));
CRect Rect;
CWnd *pWnd = MyDC.GetWindow();
pWnd->GetClientRect( &Rect );
MyDC.FillSolidRect( &Rect, RGB(255,0,0) );
{MessageBox("Введите количество генерируемых элементов", "Информация", MB_ICONEXCLAMATION);
return;
}}
this->RedrawWindow();
CString str;
for (int n=0; n < m_NUM; n++)
{ str.Format("%i\n", m_NUM * rand());
m_File.WriteString(str);
}
m_DATABOX.ResetContent();
m_SEARCHTIME.Empty();
UpdateData(0);
m_File.Close();
CString f;
f.Format("Успешно сгенерированно %i элемента(ов)",n);
MessageBox(f, "Информация", MB_ICONINFORMATION);
}}