close

Вход

Забыли?

вход по аккаунту

?

Kursovaya rabota.docx

код для вставкиСкачать
ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ
Белгородский государственный технологический университет
Им. В. Г. Шухова
Кафедра программного обеспечения вычислительной техники и автоматизированных систем
КУРСОВАЯ РАБОТА
по дисциплине "программирование на языке высокого уровня"
тема: "Реализация на ЭВМ алгоритма сравнения отпечатков пальцев"
Автор работы: _______________
Царитов Мирон Миронович
ПВ-21
Руководитель работы: ______________
Брусенцева Валентина Станиславовна
Оценка:___________________
Белгород 2013
Введение
В век высоких технологий все системы компьютеризируются. Не обходит стороной этот процесс и системы безопасности. В данной курсовой работе рассматривается проблема сравнения отпечатков пальцев. Сравнение отпечатков пальцев сводится к действиям над вещественными числами и символами, которые позволяют определить совпадение между отпечатками и вернуть всю информацию о людях, с которыми отпечатки совпадают. Целью данной курсовой работы является создание алгоритма, который путем полного перебора будет брать из базы данных информацию о всех преступниках, отпечатки пальцев которых совпадают с отпечатками найденными на месте преступления или сообщать, что таких людей в базе данных нет.
Объектом данной работы является сам этот алгоритм, а предметом будет являться выяснение хранится ли в данной базе данных нужная нам информация..
Постановка задачи
Необходимо разработать программу для решения следующей задачи: "Текстовый файл содержит данные по отпечаткам пальцев известных преступников. Разработать программу, которая печатает информацию обо всех преступниках, чьи отпечатки совпадают с отпечатками, найденными на месте преступления. Отпечаток пальцев может быть представлен кодом из 36 символов и 12 вещественных числе, полученных в результате измерений отпечатка. Отпечатки пальцев считаются идентичными, если 35 из 36 символов совпадают и множества действительных чисел совпадают. Два действительных числа считаются "равными", если разниц между ними составляет не более 5% от большего числа. Два множества измерений считаются совпадающими, если не менее 9 из 12 пар "равны"". Данная программа должна:
1) Быть реализована на си-подобном языке программирования (C, C++, C#) по выбору.
2) Состоять из нескольких файлов.
3) Считывать исходные данные с клавиатуры или из файла.
Алгоритм решения задачи
Для решения задачи используются функции для сравнения данных об отпечатках пальцев, взятых с места преступления с отпечатками пальцев преступников, которые есть в файле. Алгоритм выглядит следующим образом. Входными параметрами являются массив из 36 символов и массив из 12 вещественных чисел. После введения массива из 36 символов происходит сравнение с символьным массивом первого преступника. Если они совпадают, то вводятся данные о вещественной части отпечатков пальцев, взятых с места преступления и сравниваются массивы вещественных чисел отпечатков преступника и отпечатков пальцев с места преступления. Иначе символьный массив сравнивается со следующим преступником, чьи отпечатки занесены в файл. На выходе программы мы получаем информацию о том, есть ли совпадения с отпечатками пальцев преступников отпечатков, найденных на месте преступления и на сколько они различны между собой, либо, если в файле не были найдены схожие отпечатки пальцев, программа выводит информацию о том, что совпадения не найдены.
Блок-схема алгоритма решения задачи
Спецификации алгоритмов
Спецификация функции input_float_array:
1) Заголовок: void input_float_array(double *d1);
2) Назначение: ввод вещественного массива d1.
Блок-схема алгоритма
Спецификация функции compare_string_array:
1) Заголовок: compare_string_array(char *s1, char *s2, int q)
2) Назначение: сравнивает символьные массивы s1 и s2, и возвращает количество найденных ошибок q.
Блок-схема алгоритма:
1) Заголовок: compare_float_array(double *d1, double *d2, int p)
2) Назначение: сравнивает вещественные массивы d1 и d2, и возвращает количество найденных ошибок p.
Блок-схема алгоритма:
Наборы тестовых данных
Для демонстрации программы подготовлен файл с именами преступников и их отпечатками пальцев, и несколько отпечатков пальцев, взятых с места преступления.
Информация в файле:
Имя пруступникаОтпечатки пальцевJirnovoi Genadi Petrovich36 символов: 123456789012345678901234567890123456
12 вещественных чисел
1.23 2.12 3.001 4.002 5.00 6.01 7.00 8.00 9.00 10.0008 1.0001 2.0009Edward Joseph Snowden36 символов
qazwsxedcrfvtgbyhnujmik,ol.p;/[']qaz
12 вещественных чисел
1.00 2.00 3.00 4.00 5.00 6.006 7.007 8.009 9.00 0.00 1.00 2.00Petrov Alexey Ivanovich36 символов
qwertyuiop[]asdfghjkl;'zxcvbnm,./qwe
12 вещественных чисел
1.00 2.00 3.00 4.00 5.00 6.006 7.007 8.009 9.00 0.00 1.00 2.00
Отпечатки пальцев, найденные на месте преступления:
1 отпечаток:
36 символов: qazwsxedcrfvtgbyhnujmik,oll.p;/[']qaz
12 вещественных чисел: 1.00 2.00 3.00 4.00 5.00 6.006 7.007 8.009 9.00 0.00 1.00 2.00
2 отпечаток:
36 символов: /.,mnbvcxzasdfghjkl;'][poiuytrewq/.,
12 вещественных чисел: 23.00 1.02 43.66 35.22 5.33 9.1252 7.00 12.22 25.01 3.33 1.00 2.00
3 отпечаток:
36 символов: 123456789012345678901234567890123456
12 вещественных чисел: 23.00 1.02 43.66 35.22 5.33 9.0123 7.00 12.22 25.01 3.33 1.00 2.00
Результаты работы программы на тестовых данных
Заключение
В результате написания данной курсовой работы можно сделать вывод о том, что существует потребность написания программ для служб безопасности, а значит и потребность в программистах в данной области. Приложение
1
Документ
Категория
Рефераты
Просмотров
59
Размер файла
122 Кб
Теги
kursovaya, rabota, docx
1/--страниц
Пожаловаться на содержимое документа