SlideShare a Scribd company logo
1 of 15
КУРСОВАЯ РАБОТА

ПРИМЕР РАЗРАБОТКИ
ПРОГРАММЫ

1
ЗАДАНИЕ












2

Дан файл, содержащий сведения о пациентах клиники.
Каждая строка файла содержит запись об одном пациенте.
Структура записи файла:
- фамилия и инициалы пациента;
- год рождения;
- дата поступления;
- диагноз.
Написать программу, которая
- выводит список пациентов, поступивших в заданный день;
- выводит средний возраст пациентов;
- записывает в новый файл список пациентов с заданным
диагнозом.
Пример входного файла patient.txt











3

Анисимов Д.Г.
Хайрутдинов И.С.
Петрова Т.В.
Аксенов-Зварчук И.А.
Галиева А.И.
Сидоров. П.Е.
Хасанов И.Р.
Харламов Ф.А.
Иванов И.С.
Могилевский С.П.

1961 12.05.04 пневмония
1945 12.05.04 инфаркт миокарда
1933 13.05.04 стенокардия
1955 13.05.04 пневмония
1960 12.05.04 инсульт
1956 14.05.04 язва желудка
1974 14.05.04 левосторонняя пневмония
1957 13.05.04 цирроз печени
1949 14.05.04 инфаркт миокарда
1943 12.05.04 стенокардия
Пример строки файла
Анисимов Д.Г.
|
25
|

4

1961 12.05.04 инфаркт миокарда
| 5 | 9
|
<= 40
Выходные данные
Меню:
Выберите номер пункта меню:
1 - вывод списка пациентов, поступивших в
заданный день
2 - определение среднего возраста пациентов
3 - запись в новый файл списка пациентов с
заданным диагнозом
4 - выход

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

дату поступления в виде:

дд.мм.гг
 После

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

6
№ Фамилия И.О.
Год рожд. Диагноз
-------------------------------------------------------------------------1.
2.
3.
4.

7

Анисимов Д.Г.
Хайрутдинов И.С.
Галиева А.И.
Могилевский С.П.

1961
1945
1960
1943

пневмония
инфаркт миокарда
инсульт
стенокардия
Пример результата при выборе пункта 2
==================================================
Выберите номер пункта меню:
1 - вывод списка пациентов, поступивших в заданный
день
2 - определение среднего возраста пациентов
3 - запись в новый файл списка пациентов с заданным
диагнозом
4 - выход
-----------------------------------------------------------------------------------2
Средний возраст пациентов: 50.7

8
Пример результата при выборе пункта 3
Введите имя выходного файла
pnevmon.txt
Укажите диагноз
пневмония
Запись в файл завершена

9
Файл pnevmon.txt:

Анисимов Д.Г.
Аксенов-Зварчук И.А.
Хасанов И.Р.

10

1961 12.05.04
1955 13.05.04
1974 14.05.04
Функциональная структура программы

11
Подпрограммы:
 Date

– вывод пациентов, поступивших в
заданный день.
 MiddleAge - определение среднего
возраста пациентов.
 Diagnos - запись в новый файл списка
пациентов с заданным диагнозом.
 Age - определение возраста пациента по
году рождения.
12
Главная функция программы:












13

int main()
{
FILE *f; /* ссылка на входной файл */
char n; /* номер пункта меню */
clrscr();
f= fopen("patient.txt", "r");
if (f==NULL)
{ puts ("Файл patient.txt не найден");
getch();
return 1;
}
do
{ puts ("n==========================================");
puts ("Выберите номер пункта меню:");
puts ("1 - вывод списка пациентов, поступивших в заданный день");
puts ("2 - определение среднего возраста пациентов");
puts ("3 - запись в новый файл списка пациентов с заданным
диагнозом");
puts ("4 - выход");
puts(("----------------------------------------------------------------------------");
n = getche();

14
switch (n)
{
case '1': Date(f); break;
case '2': MiddleAge(f); break;
case '3': Diagnos(f); break;
case '4': break;
default: puts("nНужно вводить номер пункта от 1 до 4");
}
}
while (n != '4');
fclose(f);
return 0;
}

15

More Related Content

Viewers also liked

презентация 10
презентация 10презентация 10
презентация 10student_kai
 
лекция №11
лекция №11лекция №11
лекция №11student_kai
 
лекция № 3
лекция № 3лекция № 3
лекция № 3student_kai
 
презентация к лекц 8
презентация к лекц 8презентация к лекц 8
презентация к лекц 8student_kai
 
презентация к лаб.раб. 4
презентация к лаб.раб. 4презентация к лаб.раб. 4
презентация к лаб.раб. 4student_kai
 
практика 17
практика 17практика 17
практика 17student_kai
 
кин лекция 15
кин лекция 15кин лекция 15
кин лекция 15student_kai
 
презентации лекций1 9
презентации лекций1 9презентации лекций1 9
презентации лекций1 9student_kai
 
презентация лекции №7
презентация лекции №7презентация лекции №7
презентация лекции №7student_kai
 
окисление кремния
окисление кремнияокисление кремния
окисление кремнияstudent_kai
 
2. моделирование помех
2. моделирование помех2. моделирование помех
2. моделирование помехstudent_kai
 

Viewers also liked (20)

лекция 11
лекция 11лекция 11
лекция 11
 
презентация 10
презентация 10презентация 10
презентация 10
 
Eiep mod13
Eiep mod13Eiep mod13
Eiep mod13
 
лекция 3
лекция 3лекция 3
лекция 3
 
лекция №11
лекция №11лекция №11
лекция №11
 
лекция 23
лекция 23лекция 23
лекция 23
 
лекция № 3
лекция № 3лекция № 3
лекция № 3
 
презентация к лекц 8
презентация к лекц 8презентация к лекц 8
презентация к лекц 8
 
лекция 16
лекция 16лекция 16
лекция 16
 
презентация к лаб.раб. 4
презентация к лаб.раб. 4презентация к лаб.раб. 4
презентация к лаб.раб. 4
 
практика 17
практика 17практика 17
практика 17
 
п10
п10п10
п10
 
п2 06 07
п2 06 07п2 06 07
п2 06 07
 
лекция 8
лекция 8лекция 8
лекция 8
 
кин лекция 15
кин лекция 15кин лекция 15
кин лекция 15
 
презентации лекций1 9
презентации лекций1 9презентации лекций1 9
презентации лекций1 9
 
презентация лекции №7
презентация лекции №7презентация лекции №7
презентация лекции №7
 
окисление кремния
окисление кремнияокисление кремния
окисление кремния
 
лекция 5
лекция 5лекция 5
лекция 5
 
2. моделирование помех
2. моделирование помех2. моделирование помех
2. моделирование помех
 

More from student_kai

презентация
презентацияпрезентация
презентацияstudent_kai
 
основы программирования на языке C
основы программирования на языке Cосновы программирования на языке C
основы программирования на языке Cstudent_kai
 
лекция№34
лекция№34лекция№34
лекция№34student_kai
 
лекция№33
лекция№33лекция№33
лекция№33student_kai
 
лекция№30
лекция№30лекция№30
лекция№30student_kai
 
лекция№28
лекция№28лекция№28
лекция№28student_kai
 
лекция№27
лекция№27лекция№27
лекция№27student_kai
 
лекция№26
лекция№26лекция№26
лекция№26student_kai
 
лекция№25
лекция№25лекция№25
лекция№25student_kai
 
лекция№25
лекция№25лекция№25
лекция№25student_kai
 
лекция№24
лекция№24лекция№24
лекция№24student_kai
 
лекция№23
лекция№23лекция№23
лекция№23student_kai
 
лекция№22
лекция№22лекция№22
лекция№22student_kai
 
лекция№21
лекция№21лекция№21
лекция№21student_kai
 
лекция№20
лекция№20лекция№20
лекция№20student_kai
 
лекция№19
лекция№19лекция№19
лекция№19student_kai
 
лекция№18
лекция№18лекция№18
лекция№18student_kai
 
лекция№17
лекция№17лекция№17
лекция№17student_kai
 
лекция№16
лекция№16лекция№16
лекция№16student_kai
 
лекция№15
лекция№15лекция№15
лекция№15student_kai
 

More from student_kai (20)

презентация
презентацияпрезентация
презентация
 
основы программирования на языке C
основы программирования на языке Cосновы программирования на языке C
основы программирования на языке C
 
лекция№34
лекция№34лекция№34
лекция№34
 
лекция№33
лекция№33лекция№33
лекция№33
 
лекция№30
лекция№30лекция№30
лекция№30
 
лекция№28
лекция№28лекция№28
лекция№28
 
лекция№27
лекция№27лекция№27
лекция№27
 
лекция№26
лекция№26лекция№26
лекция№26
 
лекция№25
лекция№25лекция№25
лекция№25
 
лекция№25
лекция№25лекция№25
лекция№25
 
лекция№24
лекция№24лекция№24
лекция№24
 
лекция№23
лекция№23лекция№23
лекция№23
 
лекция№22
лекция№22лекция№22
лекция№22
 
лекция№21
лекция№21лекция№21
лекция№21
 
лекция№20
лекция№20лекция№20
лекция№20
 
лекция№19
лекция№19лекция№19
лекция№19
 
лекция№18
лекция№18лекция№18
лекция№18
 
лекция№17
лекция№17лекция№17
лекция№17
 
лекция№16
лекция№16лекция№16
лекция№16
 
лекция№15
лекция№15лекция№15
лекция№15
 

презентация курсовой работы

  • 2. ЗАДАНИЕ          2 Дан файл, содержащий сведения о пациентах клиники. Каждая строка файла содержит запись об одном пациенте. Структура записи файла: - фамилия и инициалы пациента; - год рождения; - дата поступления; - диагноз. Написать программу, которая - выводит список пациентов, поступивших в заданный день; - выводит средний возраст пациентов; - записывает в новый файл список пациентов с заданным диагнозом.
  • 3. Пример входного файла patient.txt           3 Анисимов Д.Г. Хайрутдинов И.С. Петрова Т.В. Аксенов-Зварчук И.А. Галиева А.И. Сидоров. П.Е. Хасанов И.Р. Харламов Ф.А. Иванов И.С. Могилевский С.П. 1961 12.05.04 пневмония 1945 12.05.04 инфаркт миокарда 1933 13.05.04 стенокардия 1955 13.05.04 пневмония 1960 12.05.04 инсульт 1956 14.05.04 язва желудка 1974 14.05.04 левосторонняя пневмония 1957 13.05.04 цирроз печени 1949 14.05.04 инфаркт миокарда 1943 12.05.04 стенокардия
  • 4. Пример строки файла Анисимов Д.Г. | 25 | 4 1961 12.05.04 инфаркт миокарда | 5 | 9 | <= 40
  • 5. Выходные данные Меню: Выберите номер пункта меню: 1 - вывод списка пациентов, поступивших в заданный день 2 - определение среднего возраста пациентов 3 - запись в новый файл списка пациентов с заданным диагнозом 4 - выход 5
  • 6. При выборе пункта 1 на экран выводится сообщение:  Введите дату поступления в виде: дд.мм.гг  После ввода даты, например 12.05.04, выводится результат в виде: 6
  • 7. № Фамилия И.О. Год рожд. Диагноз -------------------------------------------------------------------------1. 2. 3. 4. 7 Анисимов Д.Г. Хайрутдинов И.С. Галиева А.И. Могилевский С.П. 1961 1945 1960 1943 пневмония инфаркт миокарда инсульт стенокардия
  • 8. Пример результата при выборе пункта 2 ================================================== Выберите номер пункта меню: 1 - вывод списка пациентов, поступивших в заданный день 2 - определение среднего возраста пациентов 3 - запись в новый файл списка пациентов с заданным диагнозом 4 - выход -----------------------------------------------------------------------------------2 Средний возраст пациентов: 50.7 8
  • 9. Пример результата при выборе пункта 3 Введите имя выходного файла pnevmon.txt Укажите диагноз пневмония Запись в файл завершена 9
  • 10. Файл pnevmon.txt: Анисимов Д.Г. Аксенов-Зварчук И.А. Хасанов И.Р. 10 1961 12.05.04 1955 13.05.04 1974 14.05.04
  • 12. Подпрограммы:  Date – вывод пациентов, поступивших в заданный день.  MiddleAge - определение среднего возраста пациентов.  Diagnos - запись в новый файл списка пациентов с заданным диагнозом.  Age - определение возраста пациента по году рождения. 12
  • 13. Главная функция программы:            13 int main() { FILE *f; /* ссылка на входной файл */ char n; /* номер пункта меню */ clrscr(); f= fopen("patient.txt", "r"); if (f==NULL) { puts ("Файл patient.txt не найден"); getch(); return 1; }
  • 14. do { puts ("n=========================================="); puts ("Выберите номер пункта меню:"); puts ("1 - вывод списка пациентов, поступивших в заданный день"); puts ("2 - определение среднего возраста пациентов"); puts ("3 - запись в новый файл списка пациентов с заданным диагнозом"); puts ("4 - выход"); puts(("----------------------------------------------------------------------------"); n = getche(); 14
  • 15. switch (n) { case '1': Date(f); break; case '2': MiddleAge(f); break; case '3': Diagnos(f); break; case '4': break; default: puts("nНужно вводить номер пункта от 1 до 4"); } } while (n != '4'); fclose(f); return 0; } 15