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

Автор работы: Пользователь скрыл имя, 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 Кб (Скачать файл)

class List

{

private:

      int count;

      Abiturient list[10];

public:

      List()

      {

            count=0;

            for(int i=0;i<10; i++) list[i].deleted=false;

      };

      void ReadData(char *name);

      void SaveData(char *name);

      void PrintList(void);

      void AddRecord();

      void DelRecord();

      void ChangeRecord();

      void RestoreRecord();

}; 

proc.cpp

 #include <iostream>

#include <string>

#include <stdlib.h>

#include <conio.h>

#include "list.h"

void Faculty::SetParam(char *name)

{

      strcpy(nameFaculty,name);

};

void Speciality::SetParam(char *nameF,char *nameS,int sumBalls)

{

      Faculty::SetParam(nameF);

      strcpy(nameSpeciality,nameS);

      this->sumBalls=sumBalls;

}

void List::ReadData(char *name)

{

      const int dl=125;

      char s[dl];

      int i=0,sumBalls;

      char faculty[15];

      char speciality[15];

      FILE *_f;

      _f = fopen(name,"r");

      while (fgets(s,dl,_f))

      {

            int pos=0;

            int j=0;

            while(s[pos+j]!=' ')

                  {list[count].fio.surname[j]=s[pos+j];j++;}

            list[count].fio.surname[j]='\0';

            pos+=sizeof(list[count].fio.surname)+1;j=0; 

            while(s[pos+j]!=' ')

                  {list[count].fio.name[j]=s[pos+j];j++;}

            list[count].fio.name[j]='\0';

            pos+=sizeof(list[count].fio.name);j=0; 

            while(s[pos+j]!=' ')

                  {list[count].fio.father[j]=s[pos+j];j++;}

            list[count].fio.father[j]='\0';

            pos+=sizeof(list[count].fio.father);

            list[count].dr.day = atoi(&s[pos]);

            pos+=3;

            list[count].dr.month=atoi(&s[pos]);

            pos+=3;

            list[count].dr.year=atoi(&s[pos]);

            pos+=5;

            for(j=0;j<4;j++)

                  list[count].pasport_s[j]=s[pos+j];

            list[count].pasport_s[j]='\0';

            pos+=5;

            for(j=0;j<6;j++) list[count].pasport_n[j]=s[pos+j];

            list[count].pasport_n[j]=0;

            pos+=7;

            for(int k=0; k<sizeof(list[count].balls)/4; k++)

                  list[count].balls[k]=atoi(&s[pos+3*k]);

            pos+=15;

            for(j=0;j<sizeof(faculty);j++)

                  faculty[j]=s[pos+j];

            j--;

            while (faculty[j]==' ')

                  j--;

            j++;

            faculty[j]='\0';

            pos+=sizeof(faculty)+1;

            for(j=0;j<sizeof(speciality);j++)

                  speciality[j]=s[pos+j];

            j--;

            while (speciality[j]==' ')

                  j--;

            j++;

            speciality[j]='\0';

            pos+=sizeof(speciality)+1;

            sumBalls=atoi(&s[pos]);

            pos+=1;

            this->list[count].speciality.SetParam(faculty,speciality,sumBalls);

            count++;

      }

      count--;

      fclose(_f);

}

void List::AddRecord()

{

      Abiturient abit;

      printf("- NEW RECORD --------------------------------------");

      printf("\n   - SOURNAME   : ");scanf("%s",abit.fio.surname);

      printf("   - NAME       : ");scanf("%s",abit.fio.name);

      printf("   - FATHERNAME : ");scanf("%s",abit.fio.father);

      printf("   - BIRTH DAY  : ");std::cin>>abit.dr.day;

      printf("   - BIRTH MONTH: ");std::cin>>abit.dr.month;

      printf("   - BIRTH YEAR : ");std::cin>>abit.dr.year;

      printf("   - PASPORT S  : ");scanf("%s",abit.pasport_s);

      printf("   - PASPORT N  : ");scanf("%s",abit.pasport_n);

      printf("   - BALLS      : \n");

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

      {

            printf("\tBall[%d]: ",i+1);

            std::cin>>abit.balls[i];

      };

      printf("   - FACULTY    : ");scanf("%s",abit.speciality.nameFaculty);

      printf("   - SPECIALITY : ");scanf("%s",abit.speciality.nameSpeciality);

      printf("   - SUM BALLS  : ");std::cin>>abit.speciality.sumBalls;

      count++;

      this->list[count]=abit;

      printf("\tThe record %d added...\n",count+1);

      printf("---------------------------------------------------\n");

};

void List::PrintList()

{

      printf("- LIST --------------------------------------------\n");

      int i=0;

      while(i<count+1)

      {

            if (!list[i].deleted)

            {

                  printf("   - %d --------------------------------------------\n",i+1);

                  list[i].Print();

                  i++;

            }

            else

                  i++;

      };

      printf("---------------------------------------------------\n\n");

};

void List::DelRecord()

{

      this->PrintList();

      int number;

      printf("\n- DELETE RECORD -----------------------------------\n");

      printf("   - ENTER NUMBER: ");std::cin>>number;

      list[number-1].deleted = true;

      printf("\tThe record %d deleted...\n",count+1);

      printf("\tPress L for print the new list...\n");

      printf("---------------------------------------------------\n");

};

void List::ChangeRecord()

{

      this->PrintList();

      int number;

      printf("\n- CHANGE RECORD -----------------------------------\n");

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