Электронная картотека планет солнечной системы

24856
знаков
0
таблиц
0
изображений

Текст программы:

 

#include<alloc.h>

#include<conio.h>

#include<dos.h>

#include <stdio.h>

#include <string.h>

 

struct PL //Задание структурных переменных

 {

char namepl[18];

int year;

char people[15];

unsigned int sputnik;

PL *prev;

PL *next;

 };

 

void menu1() //Функция главного меню

{

 clrscr();

 printf("\n\t╓────────────────────────────────────────────────────────────╖\n");

 printf( "\t║ ║ ");

 puts( "\n\t║ К А Р Т О Т Е К А П Л А Н Е Т ║\n");

" \t ║\t\t С О Л Н Е Ч Н О Й С И С Т Е М Ы ║ ");

 puts( "\t╙────────────────────────────────────────────────────────────╜ ");

 puts("\n\t\t Главное меню :\n");

 puts("\t\t 1- Рекомендации пользователю.");

 puts("\t\t 2- Ввод данных.");

 puts("\t\t 3- Вывод всех данных.");

 puts("\t\t 4- Просмотр, удаление, добавление.");

 puts("\t\t 5- Вывод данных по определенному признаку.");

 puts("\t\t 6- Сортировка.");

 puts("\t\t 7- Выход.");

}

 

void menu2() //Меню поиска элементов

{

 puts("\n\n\n\n\t\t\t Меню поиска:\n");

 puts("\t\t\t 1- Вывод по названию планеты.");

 puts("\t\t\t 2- Вывод по году открытия.");

 puts("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\t Для выхода в главное меню нажмите любую клавишу.");

}


void sovet(char *s) //Функция подсказки

{

 window(1,25,79,25);

 textcolor(GREEN+BLUE);

 textbackground(WHITE+YELLOW);

 clrscr();

 cprintf(" %s",s);

 textcolor(10);

 window(1,1,79,25);

 textbackground(0);

}

 

void vvod(PL *pla) //Функция ввода структуры

{

 do

{

clrscr();

puts("Введите имя планеты :");

fflush(stdin);

gets(pla->namepl);

}

 while(strlen(pla->namepl)>18);

do

{

puts("Год открытия планеты :");

 scanf("%d",&(pla->year));

}

while((pla->year)<-30000 || (pla->year)>30000);

do

{

puts("Кто открыл планету :");

fflush(stdin);

gets(pla->people);

}

while(strlen(pla->people)>15);

do

{

puts("Сколько спутников ?");

 scanf("%d",&(pla->sputnik));

}

while(((pla->sputnik)<0) || ((pla->sputnik)>999));

}

 

PL* vvodall() //Функция ввода структур

{

 PL *playn, *pla;

 clrscr();

 sovet("Введите параметры планеты");

 pla=(PL*)malloc(sizeof(PL));

 vvod(pla);

 playn=pla;

 pla->next=NULL;

 sovet("Для дальнейщего ввода нажми y, иначе любую клавишу.");

 while (getch()=='y')

{

clrscr();

sovet("Введите параметры планеты");

pla=(PL*)malloc(sizeof(PL));

vvod(pla);

playn->prev=pla;

pla->next=playn;

playn=pla;

sovet("Для дальнейщего ввода нажми y, иначе любую клавишу.");

}

 pla->prev=NULL;

 while (pla->next)

 pla=pla->next;

 return(pla);

 }


void vivodall(PL *pla) //Функция вывода на экран всех структур

{

 int i=1;

 puts("\n\t\t\t В С Я К А Р Т О Т Е К А\n");

 printf("┌──────┬─────────────────┬────────────┬───────────────┬───────────┐\n");

printf("│ Номер│ Название │ Когда │ Кто открыл │ Кол-во │\n");

printf("│ стр. | планеты │ открыли │ планету │ спутников │\n");

printf("└──────┴─────────────────┴────────────┴───────────────┴───────────┘\n");

printf("┌──────┬─────────────────┬────────────┬───────────────┬───────────┐\n");

 while (pla->prev)

{

printf("│ %5d │ %18s │ %12u │ %15s │ %11u │ ",i,pla->namepl,

 pla->year,pla->people,pla->sputnik);

pla=pla->prev; i++;

}

 printf("│ %5d │ %18s │ %12u │ %15s │ %11u │ ",i,pla->namepl,

 pla->year,pla->people,pla->sputnik);

 printf("└──────┴─────────────────┴────────────┴───────────────┴───────────┘");

 gotoxy(22,24);

 puts("Вывод закончен, нажмите любую клавишу.");

 getch();

}

 

void spisok(PL* pla) //Функция для работы со списком

{

 clrscr();

 window(17,2,62,15);

 textbackground(4);

 textcolor(15);

 clrscr();

 if (pla!=NULL)

{

cprintf("\n");

cprintf("%30s","ПАРАМЕТРЫ ПЛАНЕТ\n\n");

gotoxy(1,wherey()+2);

cprintf(" Название: %s",pla->namepl);

gotoxy(1,wherey()+2);

cprintf(" Год открытия: %d",pla->year);

gotoxy(1,wherey()+2);

cprintf(" Кто открыл: %s",pla->people);

gotoxy(1,wherey()+2);

cprintf(" Сколько спутников: %d",pla->sputnik);

}

 textbackground(2);

 sovet("Cледующая/Предыдущая планета(PgDn/PgUp)"

"Удаление(Del)""Добавление(Ins)""Выход(Esc)");

}

 

PL* vvodspisok(PL* pla) //Функция ввода элементов списка

{

 PL* plr=pla;

 char c;

 sovet("Добавить элемент до / после текущего(Home/End)"

 "Отмена(Esc)");

 do

{

c=getch();

/*Esc*/ if (c==27) return(pla);

if (c==71||c==79)

{

clrscr();

sovet("Введите параметры планеты");

plr=(PL*)malloc(sizeof(PL));

vvod(plr);

if (pla==NULL)

{

plr->next=NULL;

plr->prev=NULL;

return(plr);

}

/*End*/ if (c==79)

{

plr->next=pla->next;

plr->prev=pla;

pla->next=plr;

(plr->next)->prev=plr;

}

/*Home*/if (c==71)

{

plr->next=pla;

plr->prev=pla->prev;

pla->prev=plr;

(plr->prev)->next=plr;

}

return(plr);

}

}

 while(1);

}

 

PL* vozvr(PL* pla) //Возвращает указатель

{ //на начало списка pla

 if (pla==NULL)

return(pla);

 while(pla->next!=NULL)

 pla=pla->next;

 return(pla);

}

 

PL* korrekt(PL *pla) //Управляющие клавиши при работе со списком

{

 spisok(pla);

 PL* delit(PL*);

do

{

switch(getch())

{

/*PgUp*/ case 73:if(pla!=NULL)

{

if(pla->prev!=NULL)pla=pla->prev;spisok(pla);

}

break;

/*PgDn*/ case 81:if(pla!=NULL)

{

if(pla->next!=NULL)pla=pla->next;spisok(pla);

}

break;

 /*Del*/ case 83:if(pla!=NULL)

{

pla=delit(pla);

spisok(pla);

}

break;

 /*Ins*/ case 82:pla=vvodspisok(pla); spisok(pla); break;

 /*Esc*/ case 27:pla=vozvr(pla); return(pla);

}

}

 while(1);

}

 

PL* delit(PL* pla) //Функция удаления элементов из списка

{

 PL* plr=NULL;

 if(pla->prev!=NULL)

{

(pla->prev)->next=pla->next;

plr=pla->prev;

}

 if(pla->next!=NULL)

{

(pla->next)->prev=pla->prev;

plr=pla->next;

}

 free(pla);

 return(plr);

}

 

void poisk1(PL *pla) //Функция поиска по названиям планет

{

 char s[15],ch;

 do

{

int i=1,l=0;

clrscr();

fflush(stdin);

puts("Введите интерессующее вас название планеты :");

gets(s);

printf("\n\n Планеты с названием %s :\n",s);

printf("┌──────┬─────────────────┬────────────┬───────────────┬───────────┐\n");

printf("│Номер │ Название │ Когда │ Кто открыл │ Кол-во │\n");

printf("│ стр. │ планеты │ открыли │ планету │ спутников │\n");

printf("└──────┴─────────────────┴────────────┴───────────────┴───────────┘\n");

printf("┌──────┬─────────────────┬────────────┬───────────────┬───────────┐\n");

while (pla->prev)

{

if(strcmpi(pla->namepl,s)==0)

 {

printf("│ %5d │ %18s │ %12u │ %15s │ %11u │ ",i,pla->namepl,

 pla->year,pla->people,pla->sputnik);

l++;i++;

 }

pla=pla->prev;

}

if (strcmpi(pla->namepl,s)==0)

{

printf("│ %5d │ %18s │ %12u │ %15s │ %11u │ ",i,pla->namepl,

 pla->year,pla->people,pla->sputnik);

l++;i++; }

puts("└──────┴─────────────────┴────────────┴─────────────────┴─────────────┘");

printf("\n Найдено %d планет.\n",l);

puts(" Поиск по названиям планет завершен. Продолжить?(y- да)");

fflush(stdin);

ch=getch();

}

 while(ch=='y');

}

 

void poisk2(PL *pla) //Функция поиска по годам открытия

{

 char ch;

 do

{

int i=1,l=0,a,b;

clrscr();

fflush(stdin);

puts("Введите интерессующее вас границы поиска (от чего- то до чего- то) :");

while(scanf("%d%d",&a,&b)!=2)

{

while (getchar()!='\n');

 printf("Все- таки стоит здесь что- нибудь ввести\n(от a до b)\n");

}

printf("\n\n Планеты открытые в таком диапозоне(с %d до %d года):\n",a,b);

printf("┌──────┬─────────────────┬────────────┬───────────────┬───────────┐\n");

printf("│Номер │ Название │ Когда │ Кто открыл │ Кол-во │\n");

printf("│ стр. │ планеты │ открыли │ планету │ спутников │\n");

printf("└──────┴─────────────────┴────────────┴───────────────┴───────────┘\n");

printf("┌──────┬─────────────────┬────────────┬───────────────┬───────────┐\n");

while(pla->prev)

{

if((a<=pla->year)&&(b>=pla->year))

 {

printf("│ %5d │ %18s │ %12u │ %15s │ %11u │ ",i,pla->namepl,

 pla->year,pla->people,pla->sputnik);

l++;i++;

 }

pla=pla->prev;

}

if((a<=pla->year)&&(b>=pla->year))

{

printf("│ %5d │ %18s │ %12u │ %15s │ %11u │ ",i,pla->namepl,

 pla->year,pla->people,pla->sputnik);

l++;i++;

}

puts("└──────┴─────────────────┴────────────┴───────────────┴───────────┘");

printf("\n Найдено %d планет.\n",l);

puts(" Поиск по годам открытия планет завершен. Продолжить?(y- да)");

fflush(stdin);

ch=getch();

}

 while(ch=='y');

}

 

void klear(PL* pla) //Функция очистки памяти

{

 PL *plr;

 if (pla)

{

if (pla->prev)

{

plr=pla->prev;

while (plr->prev)

 {

free(plr->next);

plr=plr->prev;

 }

}

else

plr=pla;

free(plr);

}

}

 

char * fname() //Функция ввода имени файла

{

 char *t;

 t=(char *)malloc(80*sizeof(char));

 cprintf("Введите имя файла: \n");

 fflush(stdin);

 scanf("%79s",t);

 return t;

 }

 

int save1(PL *pla,char *filename) //Функция, сохраняющая данные

{

 FILE *fp;

 if((fp=fopen(filename,"w"))==NULL) return 0;

 while(pla)

{

fprintf(fp,"%s %d %s %d |",

 pla->namepl,pla->year,pla->people,pla->sputnik);

pla=pla->prev;

}

 fclose(fp);

 return 1;

}

 

int save(PL *pla) //Функция для сохранения данных

{

 char * name;

 window(1,1,79,25);

 clrscr();

 name=fname();

 if (save1(pla,name)==1) return 1;

 cprintf("\nНевозможно произвести запись!!!");

 sovet("Ошибка!!! Нажмите любую кнопку");

 getch();

 return 0;

}

 

PL *load(PL *pla)  //Функция загрузки данных из файла

{

 char c,*name;

 int i;

 PL *plan=NULL,*plane=NULL;

 FILE *fp;

 window(1,1,79,25);

 clrscr();

 name=fname();

 cprintf("Осуществлять чтение? (y-Да , n-Нет)\n");

 do

c=getch();

 while((c!='y')&&(c!='n'));

 if (c=='n') return (pla);

 if((fp=fopen(name,"rt"))==NULL)

{

klear(pla);

cprintf("\nОшибка при открытии файла!!!");

sovet("Ошибка!!! Нажмите любую кнопку");

getch();

return (NULL);

}

 plane=(PL*)malloc(sizeof(PL));

 while (fscanf(fp,"%s %d %s %d |",

plane->namepl,&(plane->year),plane->people,&(plane->sputnik))==4)

{

plane->prev=NULL;

plane->next=plan;

if (plan!=NULL) plan->prev=plane;

plan=plane;

plane=(PL*)malloc(sizeof(PL));

}

 free(plane);

 if (plan!=NULL)

{

while(plan->next)

plan=plan->next;

}

 fclose(fp);

 klear(pla);

 return (plan);

}

 

/*Функция сортировки по алфавиту*/

PL *sort(PL *pla)

{

PL *point,*tmp=NULL,*f,*s;

int i,j,srav;

 

//Указатель на начало

f=pla;

point=pla;

 

while(f!=NULL)

{

s=f->next;

while(s!=NULL)

{

if((strcmp(f->namepl,s->namepl)>0))

{ tmp=(PL*)malloc(sizeof(PL));

 strcpy(tmp->namepl,f->namepl);

 tmp->year=f->year;

 strcpy(tmp->people,f->people);

 tmp->sputnik,f->sputnik;

 //

 strcpy(f->namepl,s->namepl);

 f->year=s->year;

 strcpy(f->people,s->people);

 f->sputnik=s->sputnik;

 //

 strcpy(s->namepl,tmp->namepl);

 s->year=tmp->year;

 strcpy(s->people,tmp->people);

 s->sputnik=tmp->sputnik;

free(tmp);

}

s=s->next;

}

strcpy(point->namepl,f->namepl);

point->year=f->year;

strcpy(point->people,f->people);

point->sputnik=f->sputnik;

point=point->next;

f=f->next;

}

point=pla;

return(point);

 }


void main()

{

 char ccc,hhh,ch;

 int i;

 PL* planet=NULL;

 planet->prev=planet->next=NULL;

 _setcursortype(_NOCURSOR);

 textcolor(10);

 menu1();

 do

{

do

{

fflush(stdin);

switch(ccc=getch())

 {

case '1':

 {

clrscr();

printf("\t\t\t Рекомендации пользователю :\n\n"

"Эта программа- это подобие электронной базы данных. Программа работает, "

"\nиспользуя массивы в памяти ЭВМ для хранения информации введенной пользователем."

"\nДанные могут вводиться с клавиатуры или загружаться из файла."

"Также можно вывестина экран всю картотеку или же просматривать картотеку по карточкам,"

" с возмож- ностью добавления или удаления некоторых карточек по выбору."

" Программа имеет хороший интерфейс и показывает устойчивую работу."

" В программе имеется поиск элементов по заданным условиям, а также сортировка планет по названиям."

" В программе есть главное меню и подменю для поиска планет по некоторым признакам."

" Желательно, чтобы данные были точные, корректно записанные и касающиеся"

"\n непосредственно темы данной лабораторной работы.");

puts("\n\n\n\n\n\t\tДля перехода в главное меню нажмите любую клавишу...");

getch();

menu1();

break;

 }

case '2':

 {

free(planet);

planet=NULL;

planet->prev=planet->next=NULL;

clrscr();

puts("Это новая база данных?(да-y/ нет-n) ");

do

{

fflush(stdin);scanf ("%c", &ch);

printf ("\tВведите символ(да- y / нет- n) ");

}

while (ch!='n' && ch!='y'&& ch!='Y'&& ch!='N');

if (ch=='y'|| ch=='Y')

{

clrscr();

planet=vvodall();

clrscr();

puts("\n\n\Записать в файл (да-y/нет-n)?");

do

{

fflush(stdin);

scanf ("%c", &ch);

printf ("Введите символ(да- y / нет- n)\n ");

}

while (ch!='n' && ch!='y'&& ch!='Y'&& ch!='N');

if (ch=='Y'|| ch=='y')

{

save(planet);

puts("\n\n\n\n\n\t\t Запись данных закончена! Нажмите любую клавишу.");

getch();

}

}

 else

planet=load(planet);

menu1();

continue;

 }

case '3':

 {

if(planet!=NULL)

{

clrscr();

vivodall(planet);

menu1();

continue;

}

break;

 }

case '4':

 {

free(planet);

planet=korrekt(planet);

menu1();

break;

 }

case '5':

 {

if(planet!=NULL)

{

clrscr();

menu2();

switch(hhh=getch())

{

case '1':

{

poisk1(planet);

menu1();

continue;

}

case '2':

{

poisk2(planet);

menu1();

continue;

}

default : menu1();

}

menu1();

continue;

}

break;

 }

case '6':

 {

if(planet!=NULL)

{

clrscr();

i=5;

puts("\n\n\n\n\t\t Идет сортировка по названию планеты.");

while(i<70)

{

gotoxy(i,10);

puts("*");

delay(60);

i++;

}

planet=sort(planet);

puts("Сортировка по названиям планет прошла успешно! ");

 delay(2000);

clrscr();

vivodall(planet);

menu1();

continue;

}

break;

 }

case '7':

 {

free(planet);

break;

 }

default : ccc=0;

 }

}

while(!ccc);

}

 while(ccc!='7');}


Министерство образования РФ

Санкт- Петербургский государственный электротехнический университет

Кафедра ВТ


Пояснительная записка

К курсовой работе по дисциплине

«Основы алгоритмизации и программирование»

 

II семестр

 

Тема : «Электронная картотека»


Выполнил : Урывский Ю.В.

Факультет : КТИ

Группа :9371

Проверила :Сискович Т.И.


Санкт- Петербург

2000

Задание :

 

Создание электронной картотеки, хранящейся на диске, и программы, обеспечивающей взаимодействие с ней.

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

- занесение данных в электронную картотеку;

- внесение изменений (добавление, исключение);

-      поиск данных по признаку, вывод их на экран.

 

Выбор подлежащих выполнению действий должен быть реализован с помощью меню и подменю.

Задача должна быть структурирована и отдельные части должны быть оформлены как функции.

Исходные данные должны вводиться с клавиатуры.

В процессе обработки картотека должна храниться в памяти ЭВМ в виде связанного списка.

Необходимо предусмотреть возможность сохранения выбранных записей в файле, задаваемом пользователем.

Программа должна иметь дружественный интерфейс и обеспечивать устойчивую работу при случайном нажатии на клавишу.

Все детали выполнения работы должны быть согласованы с преподавателем.


Контрольные примеры:


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

 

1. Рекомендации пользователю.

2. Ввод данных.

3. Вывод всех данных.

4. Просмотр, удаление, добавление.

5. Поиск данных по определенному признаку.

6. Сортировка.

7. Выход.

 

Чтобы познакомиться с программой нужно зайти в пункт №1. Здесь имеется краткое описание того, что программа умеет делать.

Пока мы не введем данные через пункт №2, все остальные пункты, кроме 1 и 7, будут не активными. Поэтому заходим в пункт №2.

Здесь сразу же появляется запрос: «Это будет новая картотека?» Если да, то создается новая картотека, или можно загрузить ее из файла.

Наконец данные введены и можно переходить к другим пунктам.

Чтобы просмотреть все, что было введено воспользуемся пунктом №3. Для выхода в главное меню нужно нажать любую клавишу.

С помощью пункта №4 мы можем пролистать всю нашу картотеку. Плюс к этому мы можем добавлять или удалять элементы из списка. А делать это довольно просто, если следовать подсказкам, появляющимся в нижней части экрана.

Щелкнув цифру 5, открываем подменю поиска элементов.

1.  Поиск по названию планеты.

2.  Поиск по годам открытия.

 

Если хотим найти например планету Венера, то выбираем пункт №1, вводим слово Венера и либо получаем информация о такой планете (если такая планета есть в базе данных), либо не получаем информации о такой планете (если такая планета не занесена в базу данных).

В пункте №6 мы можем отсортировать картотеку по названиям планет.

Выход из программы осуществляется через пункт №7.


Описание структур данных:

 

 struct PL //структура PL

{

char namepl[18]; //Названия планет

int year; //Когда была открыта

char people[15];  //Кем была открыта

unsigned int sputnik; //Сколько спутников имеет

PL *prev; //Указатель на предыдущий элемент списка

PL *next; //Указатель на последующий элемент списка

};


Спецификация функций:

 

-      Void menu1(); - функция главного меню

 

Menu1();


-      Void menu2(); - функция подменю поиска

Menu2();


-      void sovet(char *s)


-      void vvod(PL *pla)

 

 

 

 

 

 

 

-      PL* vvodall()

 

 

 

 

 

 

 

-      void vivodall(PL *pla)

 

 

 

 

 

 

 

 

-      void spisok(PL* pla)

 

 

 

 

 

-      PL* vvodspisok(PL* pla)

 

 

 

 

 

 

 

-      PL* vozvr(PL* pla)

 

 

 

 

 

 

 

 

-      PL* korrekt(PL *pla)

 

 

 

 

 

 

 

-      PL* delit(PL* pla)

 

 

 

 

 

 

 

-      void poisk1(PL *pla)

 

 

 

 

 

 

 

-      void poisk2(PL *pla)

 

 

 

 

 

 

 

-      void klear(PL* pla)

 

 

-      char * fname()

 

 

 

 

 

 

 

-      int save1(PL *pla,char *filename)

 

 

 

 

 

 

 

 

-      int save(PL *pla)

 

 

 

 

 

 

 

-      PL *load(PL *pla)

 

 

 

 

 

 

 

 

-      PL *sort(PL *pla)


Инструкция пользователю:

 

Запускаете программу. Появляется меню перед вами. Если хотите немножко ознакомиться с программой, то почитайте рекомендации (пункт №1). Вводите данные через пункт №2. Здесь вы можете ввести данные либо с клавиатуры, либо загрузить их из файла. Чтобы просмотреть все что вы ввели или загрузили воспользуйтесь пунктом №3 главного меню. А если вы хотите просмотреть все карточки по- порядку, то вам непременно нужно будет зайти в пункт №4. Здесь вы сможете просмотреть все карточки, удалить какую- либо из них (или все), а также добавить карточки, воспользовавшись вспомогательными клавишами и следуя указаниям, появляющимся в нижней части экрана.

Найти какую- нибудь карточку вам поможет пункт №5. В нем имеется два вида поиска: по названиям планет, или по году открытия той или иной планеты.

В пункте №6 происходит сортировка карточек по названиям планет.

Выход из программы осуществляется через пункт №7.


Заключение:

 

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


Содержание:


 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 



Информация о работе «Электронная картотека планет солнечной системы»
Раздел: Информатика, программирование
Количество знаков с пробелами: 24856
Количество таблиц: 0
Количество изображений: 0

Похожие работы

Скачать
460103
24
39

... ребрами) изображают конструктивные и потоковые функциональные структуры [14]. Принципы построения функциональных структур технических объектов рассматриваются в последующих главах курса "Основы проектирования им конструирования" не включенных в настоящее пособие. Для систем управления существуют характеристики, которые можно использовать в качестве критериев для оценки структур. Одна из них - ...

Скачать
32531
0
15

... ) и определить наилучшие способы управления при заданных целях и критериях (УПРАВЛЕНИЕ). 3. прогнозировать прямые и косвенные последствия реализации заданных способов и форм воздействия на объект (ПРОГНОЗИРОВАНИЕ). Материальные и информационные модели Все модели можно разбить на два больших класса: материальные и информационные. Материальные модели. Предметные модели позволяют представить в ...

Скачать
138680
12
12

... приведения к базовому узлу, метод удельных весов, метод учета затрат на единицу веса изделия, расчет себестоимости по статьям затрат. В данном проекте приводится расчет себестоимости разработки автоматизированной системы управления торговым предприятием. (АСУТП). АСУТП служит для ведения учета торговой деятельности в Интернет и на аукционе EBay. Из основных преимуществ перед конкурентами стоит ...

Скачать
49153
0
1

... не производится. Рис. 1.1. Классификация информационных систем Основываясь на степени автоматизации информационных процессов в системе управления фирмой, информационные системы делятся на ручные, автоматические и автоматизированные. Ручные ИС характеризуются отсутствием современных технических средств переработки информации и выполнением всех операций человеком. В автоматических ИС все ...

0 комментариев


Наверх