Date – вывод пациентов, поступивших в заданный день



Nbsp;

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«КАЗАНСКИЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ТЕХНИЧЕСКИЙ

УНИВЕРСИТЕТ им. А.Н. ТУПОЛЕВА-КАИ»

 

Институт технической кибернетики и информатики

-------------------------------------------------------------------------------------------

Кафедра АСОИУ

 

 

КУРСОВАЯ РАБОТА

По  дисциплине

«Программирование на языке высокого уровня»

 

                                   Исполнитель:  . . .

 

                                                    Руководитель: .

 

Оценка_________________

 

  Подпись________________

 

“___” ________________2017г.

 

КАЗАНЬ 2017

 

СОДЕРЖАНИЕ

 

1. ЗАДАНИЕ                                                                                               3

2. ОПИСАНИЕ ПРИМЕНЕНИЯ                                                               3

2.1. Запуск программы                                                                        3

2.2. Входные данные                                                                       3

2.3. Выходные данные                                                                         3

2.4. Сообщения программы                                                                4

3. ОПИСАНИЕ ПРОГРАММЫ                                                                 4

3.1. Метод решения задачи                                                                 4

3.2. Структура программы                                                                 5

3.3. Описание функций                                                                        5

3.3.1. main – главная функция                                                       5

        3.3.2. Date – вывод пациентов, поступивших в заданный день            7

        3.3.3. MiddleAge - определение среднего возраста пациентов              8

3.3.4. Diagnos - запись в новый файл списка пациентов с заданным            диагнозом                                               9

3.3.5. Age - определение возраста по году рождения             10

ЛИТЕРАТУРА                                                                                       11

Приложение 1. Текст программы                                                              12

Приложение 2. Пример входного файла patient.txt                                 14

Приложение 3. Результаты тестирования программы                                       15

 

ЗАДАНИЕ

 

Дан файл, содержащий сведения о пациентах клиники. Каждая строка файла содержит запись об одном пациенте. Структура записи файла:

- фамилия и инициалы пациента;

- год рождения;

- дата поступления;

- диагноз.

Написать программу, которая

- выводит список пациентов, поступивших в заданный день;

- выводит средний возраст пациентов;

- записывает в новый файл список пациентов с заданным диагнозом.

ОПИСАНИЕ ПРИМЕНЕНИЯ

Запуск программы

 

// указать в какой среде программирования производится запуск

 

Входные данные

 

Входные данные программы находятся в файле “patient.txt”. Число строк в файле - произвольное. Каждая строка содержит фамилию с инициалами (25 символов), год рождения (5 символов), дату поступления (9 символов) и диагноз (до 40 символов). Пример строки файла:

 

Анисимов Д.Г.        1961 12.05.11 инфаркт миокарда

|    25                    | 5 | 9  |   <= 40         |

 

Пример входного файла приведен в приложении 2.

По запросу программы с клавиатуры необходимо ввести номер пункта меню (см. раздел 2.3), дату поступления пациентов в виде “дд.мм.гг”, например, 05.09.11, имя выходного файла и диагноз.

 

Выходные данные

 

Программа выводит на экран меню:

=================================================================

Выберите номер пункта меню:

Вывод списка пациентов, поступивших в заданный день

Определение среднего возраста пациентов

Запись в новый файл списка пациентов с заданным диагнозом

Выход

 

При выборе пункта 1 на экран выводится сообщение:

 

Введите дату поступления в виде: дд.мм.гг

                                                             

После ввода даты, например 12.05.11, выводится результат в виде:

 

№ Фамилия И.О.   Год рожд. Диагноз

----------------------------------------------------------------------------

Анисимов Д.Г.        1961 пневмония

Хайрутдинов И.С.  1945 инфаркт миокарда

Галиева А.И.           1960 инсульт

Могилевский С.П.  1943 стенокардия

 

Если ввести дату, которой нет в файле, выводится сообщение:

Нет пациентов, поступивших в заданный день

Примеры выходных данных для остальных пунктов меню см. в приложении 3.

                                   

Сообщения программы

Ниже приводится перечень возможных сообщений программы:

 

Файл patient.txt не найден

2. Выберите номер пункта меню:

Нужно вводить номер пункта от 1 до 4

Введите дату поступления в виде: дд.мм.гг

Фамилия И.О. Год рожд. Диагноз

Нет пациентов, поступивших в заданный день

7. Средний возраст пациентов:

Файл patient.txt пустой

Введите имя выходного файла

Укажите диагноз

Нет пациентов с заданным диагнозом

Запись в файл завершена

Для продолжения нажмите любую клавишу

ОПИСАНИЕ ПРОГРАММЫ

Метод решения задачи

 

Задачу можно разбить на три отдельные подзадачи:

1. Поиск в файле записей, в которых дата поступления пациента в клинику совпадает с заданной датой, и вывод списка таких пациентов.

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

3. Поиск во входном файле записей, в которых диагноз совпадает с заданным диагнозом, и вывод их в выходной файл.

Каждая подзадача решается методом линейного поиска (последовательного просмотра элементов таблицы).

Чтобы пользователь мог выбирать, какие подзадачи решать и в каком порядке, программа выводит на экран меню (см. раздел 2.3).

 

Структура программы

 

 


Рис.1. Функциональная структура программы

 

Программа состоит из пяти функций: главной функции main и четырех подпрограмм.

Date – вывод пациентов, поступивших в заданный день.

MiddleAge - определение среднего возраста пациентов.

Diagnos - запись в новый файл списка пациентов с заданным диагнозом.

Age - определение возраста пациента по году рождения.

 

Описание функций

Main – главная функция

  Заголовок функции:

int main ()

 

 

  Значение функции:

0 – в случае успешного завершения;

1 – если входной файл не найден.

Рабочие данные:

f – указатель на структуру с информацией о входном файле;

n – номер пункта меню.

 

                       

 

 

     Рис.1. Блок-схема функции main()

Date – вывод пациентов, поступивших в заданный день

     

Заголовок функции:                                  Структура записи файла:

void Date ()           

fio - фамилия и инициалы пациента                      gr - год рождения

  Входные данные:                         data - дата поступления  

f - ссылка на входной файл               diag - диагноз

n=n+1
Вывод n, tz.fio, tz.gr, tz.diag
                                    

Рис.2. Схема функции вывода списка пациентов, поступивших

        в заданный день.       


Дата добавления: 2018-05-02; просмотров: 334; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!