2. Введение
Описание:
Все мы знаем, как сложно искать нужную информацию в интернете. Особенно сложно самостоятельно постановить диагноз какой-либо болезни. Тем более что есть огромный риск постановить неверный диагноз.
В своем проекте я попробую решить эту проблему. Я напишу компьютерную программу, которая помогает легко и просто определить у себя какое-либо кожное заболевание.
Актуальность и проблема:
Сложность определения проблем со здоровьем с помощью интернета. В наше время очень сложно определить свой недуг с помощью поисковых систем в силу огромного количества информации в интернете.
Неточность информации в интернете. Поисковые системы устроены так, что при поиске какой-либо информации они выдают результаты хоть немного похожие на запрос. А это совершенно не подходит для того, чтобы точно определить проблему со здоровьем
Ошибочные выводы о состоянии здоровья. Но даже если получилось найти какую-то подходящую информацию, есть шанс, что она оказалась неверной. А это может повлечь за собой неприятные последствия.
В цели входят:
Упрощение определения диагноза кожного заболевания.
Сделать диагноз более точным
Уменьшить риск постановки неверного диагноза
Цели проекта:
В результате своего проекта я попробую решить все проблемы, указанные выше. Изучая программирование, я стал замечать проблемы у людей, которые возникают в бытовой жизни. И что большинство этих проблем можно легко и просто решить с помощью компьютерных программ и интернета. Моя программа не стала исключением. И основной целью моего проекта стало решение бытовых проблем с помощью компьютерной программы.
Задачи проекта:
Проект будет полезен тому, у кого появились проблемы с кожей, и он хочет самостоятельно определить диагноз с помощью интернет ресурсов. С помощью разработанной программы он сможет точно определить свое заболевание.
В ходе своего проекта я создам компьютерную программу на языке программирования Python, определяющую кожное заболевание пользователя на основе его симптомов.
Этапы работы над проектом:
Написание теоретической части:
Поиск информации в интернете
Написание практической части:
Использование полученных знаний из интернета
Использование знаний в программировании
Создание программы (продукта)
Фиксируем результаты фотографиями и видео
3. Теоретический раздел
В теоретической части я расскажу об истории поисковых систем, таких как Google и др. Расскажу, почему я решил использовать в своем проекте программу, основанную на поисковой системе. Так же я опишу кожные заболевания, которые я добавил в программу.
История поисковых систем:
Поисковая система - это программно-аппаратный комплекс, предназначенный для осуществления поиска в сети Интернет и реагирующий на запрос пользователя, задаваемый в виде текстовой фразы (поискового запроса), выдачей списка ссылок на источники информации, в порядке релевантности (в соответствии запросу).
Цель всех поисковых систем — найти и отсортировать данные, найденные в интернете. До разработки поисковиков интернет представлял собой набор сайтов, по которым пользователи переходили вводя прямой адрес сайта, или пользовались специализированными каталогами и списками сайтов. По мере того, как список веб-серверов увеличивался в несколько раз, возрастала потребность в улучшенном поиске.
Перенесемся в истории создания и развития поисковых систем на полвека вперед. Публичные FTP-серверы были распространены в конце 1980-х, но не было простого способа найти информацию или файлы, если не известно имя и местоположение документа, а также адрес сервера.
Все это изменилось, когда в 1990 году студент Алан Эмтаж создал Archie, первую поисковую систему, которая индексировала и находила FTP архивы. Веб-каталоги и поисковики постепенно приобрели популярность, став предпочтительным методом поиска в Интернете. Основные этапы истории развития поисковых систем приходятся на период с 1993 по 1998 год.
Первые поисковые системы:
Индексатор файлов Archie:
Archie часто считают первой настоящей поисковой системой. Хотя были и ранее разработанные технологии, Archie вошел в историю поисковых систем как первый инструмент для поиска контента, а не пользователей.
Поиск по заголовком страниц Wandex:
В 1993 году Мэтью Грей разработал Wandex, первый поисковик в той форме, которую мы знаем сегодня. Wandex сканировала сайты и искала по заголовкам проиндексированных страниц в Интернете. В 1994 году поисковик WebCrawler, основанный на технологии Wandex, начал индексировать полный текст сайтов, а не только заголовки.
Каталоги Yahoo!:
Система Yahoo! была основана в 1994 году. Одним из ее крупнейших вкладов в интернет-поиск стала служба каталогов, состоящая из большой коллекции авторитетных сайтов. В 2001 году Yahoo! начал взимать плату за включение в свою подборку.
В октябре 2002 году Yahoo стала поисковиком в привычном понимании и активно его монетизировала. Создатели представили и сделали популярным ряд элементов, которые все еще используются многими, в том числе поиск только по изображениям, только по новостям и так далее.
История создания Google:
Google:
В январе 1996 года студенты Стэнфордского университета Ларри Пейдж и Сергей Брин начали исследовать концепцию нахождения информации в интернете. Они считали, что поисковые системы должны анализировать и ранжировать сайты в зависимости от того, сколько раз слова, используемые при поиске, появлялись на веб-страницах.
Исследования привели к разработке алгоритма анализа ссылок PageRank, которая стала основой для Google. Именно он помогает определить важность сайта при поисковой выдаче.
PageRank оказался отличным способом выявления полезных веб-сайтов, и пользователи быстро поняли, что результаты поиска Google более полезны, чем от других систем. В результате пользователи быстро стекались в Google, а другие поисковики пытались наверстать упущенное.
К 2002 году Google занял лидирующее положение на рынке. Начиная с 2004 года доля Google на рынке неуклонно растет, а компания ежегодно расширяется и выдает новые продукты.
НО в современных поисковых системах интернета я нашел один минус. Из-за которого, в последствии, я решил написать свою собственную поисковую систему.
Современные поисковые системы плохи тем, что они в результате выдают информацию которая может несколько отличаться от запроса. То есть результат становиться неточным. Моя же поисковая система работает иначе – находит исключительно те результаты, имеющие все слова, введенные пользователем.
В качестве образца я решил связать свою поисковую систему со списком кожных заболеваний.
Вот несколько заболеваний из этого большого списка:
Акне (юношеские угри или прыщи) — это воспалительное заболевание сальных желез, в большинстве случаев возникающее у подростков во время полового созревания. Однако это вовсе не означает, что у людей старшего возраста акне не встречается, покраснение, зуд.
Герпес - группа вирусных заболеваний с характерным высыпанием сгруппированных пузырьков на коже и слизистых, вызываемые герпесвирусами.
Ихтиоз — это дерматологическое неинфекционное заболевание, представляющее собой ороговение участков кожи. Специалисты характеризуют его как наследственное. Причина возникновения кроется в генетических мутациях кожных покровов.
Рубромикоз — микотическое заболевание кожных покровов, возбудителем которого считается Trichophyton rubrum. Его высокая ферментативная активность поражает кожу стоп, а иногда и поверхность в складках. Значительно реже происходит поражение пушковых и длинных волос. Существует несколько разновидностей рубромикоза: пушистый, гипсовидный, бархатный.
Практический раздел
До создания этого проекта я изучал программирование на языке Python. Изучил основы, прошел несколько обучающих курсов и даже успел написать несколько других проектов-программ. Так же сейчас я обучаюсь программированию в Лицее «Академии Яндекса».
Сейчас я буду создавать программу и записывать все детали в проект.
Ход работы:
Подготовка компьютера и среды программирования
Создание программы (продукта):
Приветствие пользователя
Запрос симптомов
Алгоритм выполнения программы
Вывод результата
Добавление необходимой информации в программу
Подготовка компьютера и среды программирования:
Для работы конечно же нужно настроить все необходимое на компьютере:
Подготовил все файлы и документы с нужной информацией.
Открыл необходимые источники в интернете.
Запустил консоль разработчика и создал файл, на котором будет храниться программа.
Создание программы (продукта):
Теперь я приступил к написанию уже самой программы.
Конечно же, как и полагается хорошему программисту, нужно определить структуру программы, то, как она будет выглядеть.
Так как я хочу, чтобы моя программа произвела приятное впечатление на пользователя, для начала моя программа поприветствует пользователя, то есть:
Выводим надпись ‘Добро пожаловать!’
Выводим надпись ‘Здесь Вы можете точно определить диагноз вашего заболевания кожи’
Просим пользователя ввести его имя и запоминаем его
Эта часть кода выглядит вот так:
print('Добро пожаловать!')
print('Здесь вы можете с точностью определить диагноз вашего заболевания кожи')
name = input('Введите ваше имя: ')
Далее нужно показать пользователю, какие симптомы принимает программа, попросить ввести его свои симптомы недуга и запомнить их, то есть:
Выводим список допустимых симптомов
Называем пользователя по имени, которому он ввел ранее, запрашиваем его симптомы и заносим их в список
Эта часть кода выглядит вот так:
print('Список допустимых симптомов: бледность, покраснение, пятна, сыпь, зуд, желтизна, прыщи, боль, шелушение')
print(name + ',', end = ' ')
symptoms = input('введите ваши симптомы через пробел: ').split()
Алгоритм выполнения программы:
Теперь нам нужно создать большой список, с множеством различных кожных заболеваний, дальше пишем алгоритм, который находит подходящие заболевания из списка, за счет всех введенных пользователем симптомов и просто прощаемся с пользователем, то есть:
Выводим ‘Возможные заболевания:’
Программа находит заболевания, имеющие все введенные симптомы и выводит их
Если их нет, выводит: ‘совпадающие заболевания не найдены, попробуйте еще раз!’
Прощаемся с пользователем
Эта часть кода выглядит так:
list = ['Акне (юношеские угри) — это воспалит... (дальше идет список)
list1 = []
print('-' * 100)
print('Возможныезаболевания:')
for i in list:
y = 0
for q in symptoms:
if q not in i:
y += 1
if y == 0:
list1.append(i)
if len(list1) == 0:
print(name + ', совпадающие заболевания не найдены, попробуйте еще раз!')
else:
for o in list1:
print(o)
print('Конец списка, надеемся программа была полезна!')
Вот и все, программа готова, осталось только проверить, как она работает.
Запускаем программу и проверяем.
Результат:
Добро пожаловать!
Здесь вы можете с точностью определить диагноз вашего заболевания кожи
Введите ваше имя: Никита
Список допустимых симптомов: бледность, покраснение, пятна, сыпь, зуд, желтизна, прыщи, боль, шелушение
Никита, введите ваши симптомы через пробел: покраснение сыпь зуд
Возможные заболевания:
Крапивница — это не всегда результат аллергии. Причины уртикарии могут оказаться довольно необычными. Болезнь, характеризующаяся внезапной распространенной сыпью зудящих волдырей, пятнами, покраснением, окруженных зоной гиперемии. Обычно имеет аллергическую природу.
Псориаз – неприятная кожная болезнь, при которой тело покрывается красными высыпаниями, и они сливаются в пятна. Человека может беспокоить зуд, который не даёт заснуть, а при появлении осложнения в виде артрита могут беспокоить сильные боли в суставах. покраснение, сыпь, шелушение
Атопический дерматит - зуд разной интенсивности и сыпь, покраснение на лице, волосистой части головы, локтевых и коленных сгибах, наружной поверхности голеней, предплечий, туловища, ягодиц, складках кожи, сухость, шелушение
Конец списка, надеемся программа была полезна!
(Фото и видео результата и самой программы в приложениях)
5. Заключение
Моей целью и задачей этого проекта был качественный и полезный продукт, помогающий людям решить проблемы, которые я описывал в введении.
В итоге проекта я получил продукт – компьютерную программу, которая работает правильно и полноценно и готова к использованию. Все цели и задачи проекта были полностью выполнены.
Так же в ходе проекта я создать несколько фотографий и видео с продуктом и его результатом. Фотографии можно посмотреть ниже, а видео и программа на языке Python – на электронном носителе.
Теперь каждый, у кого возникли проблемы с постановкой диагноза своего кожного заболевания самостоятельно, может обратиться к моей компьютерной программе и упростить себе задачу.
. Список используемой литературы
Обучающий курс по языку Python:
https://stepik.org/course/58852/
Информация о заболеваниях:
https://medaboutme.ru/articles/top_7_samykh_rasprostranennykh_zabolevaniy_kozhi/?ysclid=latszxmm75414789092
https://medbooking.com/illness/kozhnye-zabolevanija?ysclid=lau0i9nstf54766661
История поисковых систем:
https://raiseskills.ru/istorija-poiskovyh-sistem/?ysclid=latqva5r8w733073429
7. Приложения
Приложение 1: Вид программы (продукта):
Приложение 2:
Результат работы программы:
Приложение 3:
Фото работы над проектом:
Приложение 4 (на электронном носителе):
Программа на языке Python (продукт), видео работы программы, презентация