Ïðèìåð: Ãëîáàëüíàÿ ñåòü INTERNET
ß èùó:
Íà ãëàâíóþ  |  Äîáàâèòü â èçáðàííîå  

Ãëàâíàÿ/

Ïðîãðàììèðîâàíèå, áàçû äàííûõ. /

Ðàçðàáîòêà ÏÎ "Ïðàâèëà Äîðîæíîãî Äâèæåíèÿ"

Äîêóìåíò 1 | Äîêóìåíò 2 | Äîêóìåíò 3 | Äîêóìåíò 4 | Äîêóìåíò 5 | Äîêóìåíò 6 | Äîêóìåíò 7 | Äîêóìåíò 8 | Äîêóìåíò 9 | Äîêóìåíò 10 | Äîêóìåíò 11

←ïðåäûäóùàÿ  ñëåäóþùàÿ→
1 2 3 4 5 6 

2 ÐÀÑ×ÅÒÍÀß ×ÀÑÒÜ

 

2.1 Ëèñòèíã ïðîãðàììû

Ïðîãðàììà áûëà íàïèñàíà ñ èñïîëüçîâàíèåì ÿçûêà Watcom Ñ++, ïîýòîìó â íåé èñïîëüçóåòñÿ ñïåöèôè÷åñêèé ñèíòàêñèñ ýòîãî ÿçûêà. Íèæå ïðèâåäåí ëèñòèíã îïèñûâàåìîé ïðîãðàììû.

 

char     *massiv,*massiv1,*temp,*buff_image,command,mode='c',key;

unsigned char f_mask[ 8 ] = { 255, 255, 255, 255,255, 255, 255, 255 };

unsigned char name[20],subname[20],massiv2[45];

char     fon_buff[10];

int        color=0,color1=0,punkt=1,m_x,m_y,m_k=0,row=20,maxx=640;

float    x=0,y=0,x1=0,y_1=0,radius=0,xs=0, ys=0,ratio=1.000,asp=640,aspxs=1;

#define  ENTER   0x0d

#define  PGDW    0x51

#define  PGUP      0x49

#define  UP           0x48

#define  DOWN   0x50

#define  ESC        0x1b

#define  SPACE   0x20

#include "graph.h"

#include "pgchart.h"

#include "stdarg.h"

#include "stdio.h"

#include "iostream.h"

#include "fstream.h"

#include "conio.h"

#include "stdlib.h"

#include "math.h"

#include "string.h"

#include "dos.h"

void mouse (int on_off_xy, int *m_x,int *m_y,int *m_k) ;

void   virusprot (void);

void  grinit (void) ;

void outmenu (void);

void outcursormenu(int punkt);

void choise_cont_educ(char file[]);

void  education(int index,int quest_num);

void outresult(int mark,char mode) ;

void getout(void );

void any_key(void);

void calcxy(void);

void clrbuff(void);

void draw_win(int x,int y,char msg[]) ;

void goodbye(void);

void inp_data(unsigned char data[]);

void inputfio(void);

void mouse (int on_off_xy, int *m_x,int *m_y,int *m_k);

void timeout () ;

void savefio (int mark ) ;

int    picture (int count, char massiv[], int index);

int    choisebil(void);

int    choiserandombil(void) ;

int    control(int index,int quest_num,int mark,int minute,int *timeout);

int    fileop (char file[],char massiv[] ) ;

int    msv_tmp(int count,char massiv[]) ;

void main() {

  if (!(massiv       =new char [20000])){cout<<"Íåõâàòàåò ïàìÿòè";exit(1);}

  if (!(buff_image=new char [4000  ])){cout<<"Íåõâàòàåò ïàìÿòè";exit(1);}

  if (!(massiv1     =new char [20000])){cout<<"Íåõâàòàåò ïàìÿòè";exit(1);}

  if (!(temp          =new char [100    ])){cout<<"Íåõâàòàåò ïàìÿòè";exit(1);}

  grinit();

  virusprot();

  while(1)    {

                      int bilnum=1;

                      char file[13];

                      outmenu();

                      label1:

                      punkt=menu();

                      if (punkt==1) {mode='c'; bilnum=choiserandombil();}

                      if (punkt==2) {mode='e';bilnum=choisebil();}

                      if (punkt==3) {getout();goto label1;}

                      sprintf( file, "%d.bil", bilnum );

                     choise_cont_educ(file); 

  }

}

void  grinit (void) {

    int mode, n;

    mode = _ERESCOLOR;

    struct videoconfig vc;

    if( _setvideomode( mode ) == 0 ) {

        puts( "Cannot initialize video mode" );

        }

     n = _registerfonts( "*.fon" );

     sprintf( fon_buff, "n%d", 1 );

     _getvideoconfig (&vc);

     maxx=vc.numxpixels;

     _setfillmask(f_mask);

     mouse (0,&m_x,&m_y,&m_k);

}

void outmenu (void) {

    mouse (2,&m_x,&m_y,&m_k);

    mouse (1,&m_x,&m_y,&m_k);

    clrbuff();

    _clearscreen(_GCLEARSCREEN);

    _setcolor(9);

    _floodfill(20,20,1);

     int count=fileop("zastavka.prg",massiv);

     picture (count,massiv,0);

     _setcolor(0);

     _rectangle(_GFILLINTERIOR,130,55,530,245);

     _setcolor(7);

     _rectangle(_GFILLINTERIOR,120,50,520,240);

     _setcolor(0);

     _setcharsize(16,16);

      _setfont( fon_buff );

      _setcharsize(50,40);

      for (int i=1;i<3;i++){

                            _grtext(170+i,50," Êîíòðîëü");

                            _grtext(140+i,115," Îáó÷åíèå ");

                            _grtext(180+i,182," Âûõîä ") ;

                           }

      _setfont( fon_buff );

      _setcharsize(8,9);

      _grtext(420,340,"CopyRigth by Andy (C) 1996");

      _setcharsize(50,40);

      _setfont( fon_buff );

 }

int   picture (int count, char massiv[], int index){

   int i=index;

   while (i<count){

          switch(massiv[i]){

                case 'C':{

                               i=msv_tmp(i,massiv);

                               sscanf(temp,"%f,%f,%f,%d",&x,&y,&radius,&color);

                               _setcolor(color);

                               float r_ratio=ratio;

                               double asp_radius=sqrt(radius*radius+radius*radius);

                               calcxy();

                               if (radius==12) r_ratio=int (ratio);

                               if (radius==40) r_ratio=1.0259;

                               radius=radius/r_ratio;

                 _ellipse(_GBORDER,x-radius,y-radius/1.4,x+radius,y+radius/1.4);

                              break;

                            }

                case 'L': {

                                i=msv_tmp(i,massiv);

sscanf (temp," %f, %f, %f, %f, d,%s",&x,&y,&x1,&y_1,&color,&command);

                                calcxy();

                                _setcolor(color);

                                 switch(command){

                                                     case 'B': {

                                                                     _rectangle(_GBORDER,x,y,x1,y_1);

                                                                      break;

                                                                    }

                                                     case 'F':  {

                                                          _rectangle(_GFILLINTERIOR,x,y,x1,y_1);

                                                                       break;

                                                                    }

                                                     case 'L':  {

                                                                     _moveto(x1,y_1);

                                                                     _lineto(x,y);

                                                                     break;

                                                                   

←ïðåäûäóùàÿ  ñëåäóþùàÿ→
1 2 3 4 5 6 


Copyright © 2005—2007 «RefStore.Ru»