

/*
	  МГТУ ГА
	  ЭВМ-1-2
      Виталий Новичков

       22 июня 2011
 (С) 2011 Wohlhabenden.NET

 Практические работы #1, 2, 3

*/

#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include <sys\stat.h>
#include <iomanip.h>
#include <fstream.h>
#include <FCNTL.H>
#include <io.h>
#include <dos.h>

#include "varibles.h"

#include "sndmsgs.h"
#include "function.h"

void main(int argc, char *params[])
{

clrscr();

//Подготовка файла-отчета работы программы
#include "logfile1.c"

//заставка
Intro:
#include "nvds.c"

clrscr();
int Welcome=0;

if (argc>1)
{
if (file_exists(params[1]))
strcpy(FileName, params[1]);
else
strcpy(FileName, "");
}
else
strcpy(FileName, "");


TheMainMenu:
clrscr();
textcolor(9);
cprintf("    ░▒▓█ База данных смортстменов. Главное меню █▓▒░    \n");
textcolor(15);
gotoxy(1, wherey());
if (strcmp(FileName, ""))
{cprintf("\n    Файл данных: "); textcolor(3); cprintf(FileName);}
else
cprintf("\n");
textcolor(7);
cprintf(" ");
printf("\n\n\
    1   -  Создать новый файл данных\n\
    2   -  Открыть существующий файл данных\n\
    3   -  Просмотреть содержимое файла данных\n\
    4   -  Добавление данных в существующий файл\n\
    5   -  Поиск данных в текущем файле данных\n\
    6	-  Сортировка записей файла данных\n\
    7   -  Удаление данных из файла даных\n\
    8   -  Выход из программы\n\
\n\
    0   -  Показать вступление\n\n\
    Введите соответствующую команду:");
if (Welcome) ChimesOut();
else Whistle();
Welcome=1;
MainMenuPressKey:
key=getch();
if (((key<'0')||(key>'8'))&&(key!=27)) { ErrSnd(); goto MainMenuPressKey;}
printf("  %c", key);
printf("\n    ================================================\n\n");


switch(key)
{
case '0':
goto Intro;

case '1':
#include "mitem001.c";
break;


case '2':
#include "mitem002.c"
break;


case '3':
if (CheckFileOpen()) break;
#include "mitem003.c"
break;

case '4':
if (CheckFileOpen()) break;
#include "mitem004.c"
break;

case '5':
if (CheckFileOpen()) break;
find01(debug);
break;


case '6':
if (CheckFileOpen()) break;
#include "mitem006.c"
break;

case '7':
if (CheckFileOpen()) break;
#include "mitem007.c"
break;

case '8':
case 27:
goto GotoTheExit;

default:
goto TheMainMenu;
}
goto TheMainMenu;

GotoTheExit:
fout.close();
clrscr();
textcolor(7);
cprintf("\n");
textcolor(2);
cprintf("\nДо свидания!");
textcolor(7);
cprintf("\n");

//Предложение просмотреть файл результатов после работы прогарммы
#include "logfile.c"
}