Философия науки

Автор работы: Пользователь скрыл имя, 03 Сентября 2011 в 13:28, реферат

Описание работы

Самостоятельная работа по философии,где приведены анализ использованной литературы,анализ высказываний преподавателя, а также выражение собственного мнения по теме

Содержание работы

Оглавление 2
Задание на курсовую работу 3
Введение 4
1. Постановка задачи 5
2. Анализ задания 6
2.1. Методы решения 6
2.2. Подробный анализ выбранного метода решения 7
3. Описание классов и структур 8
4. Основные алгоритмы методов класса LIST 9
4.1. Чтение данных 9
4.2. Добавление записи 10
4.3. Удаление записи 10
4.4. Сохранение изменений 11
5. Результат работы программы 12
Список использованной литературы 15
Приложение 16
faculty.h: 16
abiturient.h 16
list.h 17
proc.cpp 17
menu.cpp 21
main.cpp 22

Файлы: 1 файл

Пояснительная.doc

— 174.00 Кб (Скачать файл)

 

         5. Результат работы программы 

         При запуске программы появляется меню со следующим списком действий: 

I N F O R M A T I O N  S E A R C H   S Y S T E M

              A B I T U R I E N T

- MENU --------------------------------------------

        F1  -  About

        L   -  Print list

        A   -  Add record to list

        C   -  Change record

        D   -  Delete record of list

        R   -  Restore deleted record

        S   -  Save list

        ESC -  Exit

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

         Вывод списка абитуриентов(L):

- LIST --------------------------------------------

   - 1 --------------------------------------------

        FIO:        Kuznetsov Alexey Petrovich

        DR:         2.6.1991

        Passport:   9704 352216

        Balls:      81 77 75 0 0

        Faculty:    IVT

        Speciality: Speciality

   - 2 --------------------------------------------

        FIO:        Averkiev Aleksandr Vitalievich

        DR:         17.7.1991

        Passport:   9704 332211

        Balls:      80 80 80 0 0

        Faculty:    IVT

        Speciality: PO

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

      Добавление  нового абитуриента(A): 

- NEW RECORD --------------------------------------

   - SOURNAME    : Petrov

   - NAME        : Aleksandr

   - FATHERNAME : Alekseevich

   - BIRTH DAY  : 12

   - BIRTH MONTH : 2

   - BIRTH YEAR  : 1989

   - PASPORT S   : 1212

   - PASPORT N   : 121212

   - BALLS      :

        Ball[1]: 67

        Ball[2]: 83

        Ball[3]: 88

        Ball[4]: 0

        Ball[5]: 0

   - FACULTY     : IVT

   - SPECIALITY  : PO

   - SUM BALLS   : 217

        The record 6 added...

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

               Изменение записи: 

- CHANGE RECORD -----------------------------------

   - ENTER NUMBER: 6 

- CHANGE RECORD 6 -------------------------------- 

   - SOURNAME   (Petrov):  Petrov

   - NAME       (Aleksandr):  Aleksey

   - FATHERNAME (Alekseevich): Petrovich

   - BIRTH DAY  (12):  12

   - BIRTH MONTH(2):  2

   - BIRTH YEAR (1989):  198

   - PASPORT S  (1212121212): 1212

   - PASPORT N  ():   121212

   - BALLS      :

        Ball[1] (67): 12

        Ball[2] (83): 12

        Ball[3] (88): 12

        Ball[4] (0): 12

        Ball[5] (0): 12

   - FACULTY    (IVT): 12

   - SPECIALITY (PO): 12

   - SUM BALLS  (217): 12

        The record 6 changed...

--------------------------------------------------- 
Вывод
 

           Мною решена задача проектирования и написания программы система «Абитуриент» с применением основных принципов объектно-ориентированного программирования.

           В этой задаче очень  много данных и деталей, которые  сложно удержать в голове, поэтому  возникла необходимость обратиться к методам повышения абстракции с целью упростить структуру данных, что позволило управлять большим объемом информации.

           Благодаря тому, что  программа системы представляется в терминах поведения объектов, при  программировании использовались понятия, более близкие к предметной области, следовательно, программа легче читается и понимается. Это является большим преимуществом ООП.

           Плохо спроектированная иерархия классов приводит к созданию сложных и запутанных программ. Важно  до начала проектирования правильно определить, требуется ли вообще применить объектно-ориентированный подход. Применение к этой задаче объектно-ориентированного подхода, по моему мнению, добавила к положительным качествам программы такие пункты, как эффективность, компактность и надежность. Также программа стала хорошо читаемой и легко модифицируемой.

 

Список  использованной литературы 

      1. Т.А.Павловская. С/С++ Программирование на языке высокого уровня. 2009.
      2. Шилдт, Герберт. Полный справочник по С, 4-е издание.: Пер. с анг.- М.:

        Вильямс, 2005. 
         

 

Приложение

faculty.h:

class Faculty

{

      public:

      char nameFaculty[15];

public:

      void SetParam(char *name);

      void Print()

      {

            printf("\tFaculty:    %s\n",this->nameFaculty);

      };

}; 

class Speciality: public Faculty

{

public:

      char nameSpeciality[15];

      int sumBalls;

public:

      void SetParam(char *nameF, char *nameS, int sumBalls);

      void Print()

      {

            Faculty::Print();

            printf("\tSpeciality: %s\n",nameSpeciality);

      };

      void PrintBalls()

      {

            printf("\t%d",sumBalls);

      }

}; 
 

abiturient.h

#include "faculty.h"

            struct sfio  

            {

                  char surname[15];

                  char name[15];

                  char father[15];

            };

            struct sdr

            {

                  int day;

                  int month;

                  int year;

            };

struct Abiturient

      {

      public:

            bool deleted;

            Speciality speciality;

            sfio fio;

            sdr dr;

            int balls[5];

            char pasport_s[4];

            char pasport_n[6];

      public:

            const Abiturient& operator = (const Abiturient &abit)

            {

                  if (&abit == this) return *this;

                  for(int i=0; i<5; i++) this->balls[i]=abit.balls[i];

                  this->speciality.SetParam((char *)abit.speciality.nameFaculty,

                        (char *)abit.speciality.nameSpeciality,

                        abit.speciality.sumBalls);

                  strcpy(this->fio.father,abit.fio.father);

                  strcpy(this->fio.name,abit.fio.name);

                  strcpy(this->fio.surname,abit.fio.surname);

                  this->dr.day=abit.dr.day;

                  this->dr.month=abit.dr.month;

                  this->dr.year=abit.dr.year;

                  strcpy(this->pasport_n,abit.pasport_n);

                  strcpy(this->pasport_s,abit.pasport_s);

                  return *this;

            };

            void Print()

            {

                  printf("\tFIO:        %s %s %s\n",fio.surname,fio.name,fio.father);

                  printf("\tDR:         %d.%d.%d\n",dr.day,dr.month,dr.year);

                  printf("\tPassport:   ");

                  for(int i=0;i<4; i++) printf("%c",pasport_s[i]);

                  printf(" %s\n",pasport_n);

                  printf("\tBalls:      ");

                  for(int i=0; i<5; i++)

                        printf("%d ",balls[i]);

                  printf("\n");

                  speciality.Print();

            };

      }; 

list.h

#include "abiturient.h"

Информация о работе Философия науки