亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ms_p1.cpp

?? It s an entire application that uses knowdledge of probabilistic and statistical math to generate an
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
/////////////////////////////////////////////////////////////////////////////
/////                                                                   /////
/////                        BIBLIOTECI INCLUSE                         /////
/////                                                                   /////
/////////////////////////////////////////////////////////////////////////////

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include "graphics.h"
#include "string.h"

#include "MT.H"



/////////////////////////////////////////////////////////////////////////////
/////                                                                   /////
/////                   DEFINITII MACROINSTRUCTIUNI                     /////
/////                                                                   /////
/////////////////////////////////////////////////////////////////////////////

#define _N    1500                        // numarul implicit de valori de observatie a variabilei aleatoare X
#define _n    50                          // numarul implicit de variabile aleatoare discrete

#define _NUM_VIEWS       4                // numarul de viewporturi

#define _VIEW_COLOR      9                // culori implicite in viewport
#define _SEL_VIEW_COLOR  4
#define _BACKGROUND      0
#define _DRAW_COLOR      14
#define _RULER_COLOR     3
#define _INTERP_COLOR    10
#define _COORD_SYS_COLOR 7
#define _COORD_SYS_DXY   15               // pozitia sistemului de coordonate fata de conturul viewportului
#define _HALF_RULER      3                // jumatate dintr-o liniuta de rigla

#define _BUBBLE_SIZE     2                // marimea unei buline indicator

#define _CS_CH_WIDTH         77           // contante in consola
#define _CS_CH_HEIGHT        20
#define _CS_SCR_DXY          3
#define _CS_FILL_COLOR       8
#define _CS_SIDE_COLOR1      7
#define _CS_SIDE_COLOR2      15
#define _CS_TEXT_SCR_HEIGHT  10
#define _CS_TEXT_RSPACE_SCR  3
#define _CS_CMDLINE_COLOR    10
#define _CS_CMD_COLOR        3
#define _CS_MAX_TOKENS       3
#define _CS_MAX_TOKEN_LENGTH 30
#define _CS_REPLY_COLOR      12
#define _CS_MAX_COMMANDS     6
#define _CS_MAX_INFO_LENGTH  640
#define _CS_MAX_INFO_LENGTH2 450

#define _ESCAPE              27           // tastele extinse
#define _ENTER               13
#define _BACKSPACE           8
#define _UP                  72



/////////////////////////////////////////////////////////////////////////////
/////                                                                   /////
/////                        VARIABILE GLOBALE                          /////
/////                                                                   /////
/////////////////////////////////////////////////////////////////////////////


struct viewport
{
    unsigned short x,                     // coordonatele stanga-sus ale viewportului
		   y;
    unsigned short width,                 // dimensiunile pe ecran ale viewportului
		   height;
    unsigned short csx0,                  // coordonatele stanga-sus, dreapta-jos ale sistemului de coordonate
		   csy0,
		   csx1,
		   csy1;

    unsigned long seed;                   // valoare initiala pentru functia de random
    unsigned int n,                       // numarul de variabile aleatoare discrete
		 N;                       // numarul de valori de observatie a variabilei aleatoare X

    char color,                           // culoarea cu care se deseneaza histograma
	 rulercolor,                      // culoarea riglei
	 interpcolor,                     // culoarea interpolatorului
	 backcolor;                       // culoarea de fundal a viewportului

    char SwitchBar,                       // flag pt activ optiunii de bara verticala
	 SwitchBubble,                    // flag pt activ optiunii de bulina indicator
	 SwitchRuler,                     // flag pt activ riglei
	 SwitchGrid,                      // flag pt activ gridului
	 SwitchInterp;                    // flag pt activ interpolatorului

    float RulerResX,                      // resolutia riglei/gridului (intre 0 si 1)
	  RulerResY;

    int *X;                               // variabila aleatoare discreta
    int *nr;                              // de cate ori apare X[i] in cele N numere generate
    double *P,                            // distributia de probabilitate
	   *F;                            // functia de repartitie
}
    Views[_NUM_VIEWS];                    // viewporturile (4)


unsigned char SelView;                    // viewportul selectat
char SwitchFScreen,                       // flag pt activ optiunii de fullscreen
     SwitchConsole;                       // flag pt activ consolei

char BackColor;                           // culoarea de fundal

char quit;                                // flag pentru iesirea din program

signed short csX,                         // coordonatele stanga-sus ale consolei
	     cstY,
	     csbY;
unsigned short csWidth,                   // dimensiunile consolei
	       cstHeight,
	       csbHeight;

unsigned int csNextLine;                  // indicele urmatoarei linii din consola
					  // liniile de text ale consolei
char csTextLines[_CS_CH_HEIGHT][_CS_CH_WIDTH+1];

char csLineTextColor[_CS_CH_HEIGHT];      // culorile scrisului de pe fiecare linie a consolei

char csCmdLine [_CS_CH_WIDTH+1];          // linia de comanda
char csCmdLine2[_CS_CH_WIDTH+1];          // linia anterioara de comanda
					  // tokenurile rezultate din descompunerea liniei de comanda
char csCmdTokens[_CS_MAX_TOKENS][_CS_MAX_TOKEN_LENGTH+1];
					  // numarul de tokenuri
unsigned int csNumTokens;
					  // informatii referitoare la anumite comenzi (activate cu comanda "MAN")
char csInfos[_CS_MAX_COMMANDS][_CS_MAX_INFO_LENGTH]=
{
 "\n05SET sets a value for a variable:\n06SET set_modes value\n06set_modes:\n11  -0-Selected Viewport [0..3]\n11  -1-Rand initial value (0 for randomize)\n11  -2-N observation values\n11  -3-n discrete random variables\n11  -4-FullScreen flag (0->1)\n11  -5-Show Bubble flag (0->1)\n11  -6-Line/Bar mode flag (0->1)\n11  -7-Drawing color (0..15)\n11  -8-Background color (0..15)\n11  -9-Show Ruler flag (0->1)\n11  -10-Show Grid flag (0->1)\n11  -11-Grid/ruler X resolution (float)\n11  -12-Grid/ruler Y resolution (float)\n11  -13-Grid/ruler color (0..15)\n11  -14-Show interpolator flag (0..1)\n11  -15-Interpolator color (0..15)",
 "\n05GET gets the value of a variable:\n06GET get_modes value\n06get_modes:\n11  -0-Selected Viewport [0..3]\n11  -1-Rand initial value (0 for randomize)\n11  -2-N observation values\n11  -3-n discrete random variables\n11  -4-FullScreen flag (0->1)\n11  -5-Show Bubble flag (0->1)\n11  -6-Line/Bar mode flag (0->1)\n11  -7-Drawing color (0..15)\n11  -8-Background color (0..15)\n11  -9-Show Ruler flag (0->1)\n11  -10-Show Grid flag (0->1)\n11  -11-Grid/ruler X resolution (float)\n11  -12-Grid/ruler Y resolution (float)\n11  -13-Grid/ruler color (0..15)\n11  -14-Show interpolator flag (0..1)\n11  -15-Interpolator color (0..15)",
 "\n05PRINT prints a field of the selected distribution/viewport:\n06PRINT field index\n06 field:\n11  -0-X random values\n11  -1-P probabilities\n11  -2-F repartition functions\n11  -3-NR value interval frequency\n06index:\n11  -ALL-prints all values of the selected field\n11  -?-a number specifying the index of the field",
 "\n05MAN prints infos about the folowing command:\n06MAN command\n06command:\n11  -SET-set a variable value\n11  -GET-get a variabile value\n11  -PRINT-prints distribution dependent fields\n11  -QUIT- exits from the program",
 "\n05QUIT exits from the program",
 "\n05INTRO shows the console introduction"
};
					  // introducere consola
char csFirstInfo[_CS_MAX_INFO_LENGTH2]="\n04Console\n05You can modify/view/print all sorts of entities in this program\n05For more infos write MAN folowing one of the commands:\n11  -SET\n11  -GET\n11  -PRINT\n11  -MAN\n11  -QUIT\n11  -INTRO\n00\n09 I hope you like it!\n00\n07 Project team:\n12  -Popescu Cosmin\n12  -Pocsai Ildiko\n12  -Pucea Gheorghe\n12  -Poenaru Daniel\n12  -Petrov Olivera\n12  -Tigan Adriana\n00\n14 Press '~' (SHIFT+`) to hide this console";



/////////////////////////////////////////////////////////////////////////////
/////                                                                   /////
/////                      PROTOTIPURI FUNCTII                          /////
/////                                                                   /////
/////////////////////////////////////////////////////////////////////////////

void _InitConsole
   (
   );

int _PushConsoleText
   (
    char *text
   );

void _PushConsoleTextLines
   (
    char *text
   );

void _ClearConsole
   (
   );

void _TokenizeCmdLine
   (
   );

void _CompileCmdLine
   (
   );

void _PrintConsoleText
   (
   );

void _PrintConsoleCmdText
   (
   );

void _DrawConsole
   (
   );

void _DropConsole
   (
   );

double HN
   (
    unsigned int n
   );

int BinSearch
   (
    double far *F,
    unsigned int n,
    double u
   );

void _DiscreteSimulation
   (
    unsigned int view
   );

void _GenerateViews
   (
   );

void _DrawViews
   (
   );

void _DrawRV
   (
    unsigned char view
   );

void _ClearScreen
   (
    char color
   );

void _FullScreenView
   (
    unsigned int view
   );

void _DrawFrame
   (
   );

void _FreeBuffers
   (
   );

void _FreeViewportBuffers
   (
    unsigned int view
   );

void _InitDistributions
   (
   );

void _RefreshDistrib
   (
    unsigned int view
   );

int main
   (
   );



/////////////////////////////////////////////////////////////////////////////
/////                                                                   /////
/////                         CORPURI FUNCTII                           /////
/////                                                                   /////
/////////////////////////////////////////////////////////////////////////////


/***************************************************************************/
/***************************************************************************/
/***           Initializeaza consola si afiseaza introducerea            ***/
/***************************************************************************/
/***************************************************************************/

void _InitConsole
   (
   )

{
    csWidth  =getmaxx()     -2*_CS_SCR_DXY;
    cstHeight=(getmaxy()>>1)-2*_CS_SCR_DXY;
    csbHeight=_CS_TEXT_SCR_HEIGHT+(_CS_TEXT_RSPACE_SCR<<1);

    csX =_CS_SCR_DXY;
    cstY=-(cstHeight+(_CS_SCR_DXY<<1))-_CS_TEXT_SCR_HEIGHT-(_CS_TEXT_RSPACE_SCR<<1);
    csbY=cstY+cstHeight+_CS_SCR_DXY+_CS_SCR_DXY;

    csNextLine=0;

    SwitchConsole=0;

    _PushConsoleTextLines(csFirstInfo);
}



/***************************************************************************/
/***************************************************************************/
/***       "Impinge" o linie de text in consola de jos in sus            ***/
/***       cu culoarea specificata in codul de culori pe linii		 ***/
/***************************************************************************/
/***************************************************************************/

int _PushConsoleText
   (
    char *text
   )

{
    unsigned int i;

    if (csNextLine==_CS_CH_HEIGHT)
    {
	for (i=0; i<_CS_CH_HEIGHT-1; i++)
	{
	    strcpy(csTextLines[i],csTextLines[i+1]);
	    csLineTextColor[i]=csLineTextColor[i+1];
	}

	strcpy(csTextLines[_CS_CH_HEIGHT-1],text);
    }
    else
    {
	strcpy(csTextLines[csNextLine],text);

	csNextLine++;
    }


    return(csNextLine-1);
}



/***************************************************************************/
/***************************************************************************/
/***      "Impinge" mai multe linii de text pe ecran, linii date de      ***/
/***    stringul "text" care trebuie sa contina la fiecare inceput de    ***/
/***    linie de text caracterul '\n' urmat de 2 caractere ce codifica   ***/
/***    culoarea cu care va fi scrisa linia de text (neaparat doua cifre)***/
/***************************************************************************/
/***************************************************************************/

void _PushConsoleTextLines
   (
    char *text
   )

{
    char str[_CS_CH_WIDTH+1],col[2],color;
    char *nextLine;
    unsigned int pos,nextpos;


    if (text[0]!='\n')
    {
	return;
    }

    pos=1;
    while (1)
    {
	col[0]=text[pos];
	col[1]=text[pos+1];

	color=atoi(col);

	nextLine=strchr(text+pos+2,'\n');

	if (nextLine)
	{
	    nextpos=nextLine-(text+pos+1);
	}
	else
	{
	    nextpos=text+strlen(text)-(text+pos+1);
	}

	memset(str,0,_CS_CH_WIDTH+1);
	strncpy(str,text+pos+2,nextpos-1);

	csLineTextColor[_PushConsoleText(str)]=color;

	if (!nextLine)
	{
	    break;
	}

	pos=nextLine-text+1;
    }
}



/***************************************************************************/
/***************************************************************************/
/***                     Sterge textul din consola                       ***/
/***************************************************************************/
/***************************************************************************/

void _ClearConsole
   (
   )

{
    csNextLine=0;
}



/***************************************************************************/
/***************************************************************************/
/***       Imparte linia de comanda in tokenuri ce vor forma apoi        ***/
/***               comenzile, optiunile si valorile de comanda		 ***/
/***************************************************************************/
/***************************************************************************/

void _TokenizeCmdLine
   (
   )

{
    char *nextToken;
    unsigned int pos,nextpos;


    pos=0;
    csNumTokens=0;

    while (csCmdLine[pos]==' ')
    {
	pos++;
    }

    while (1)
    {
	nextToken=strchr(csCmdLine+pos,' ');

	if (nextToken)
	{
	    nextpos=nextToken-(csCmdLine+pos);
	}
	else
	{
	    nextpos=csCmdLine+strlen(csCmdLine)-(csCmdLine+pos);
	}

	csNumTokens++;

	memset(csCmdTokens[csNumTokens-1],0,_CS_MAX_TOKEN_LENGTH+1);
	strncpy(csCmdTokens[csNumTokens-1],csCmdLine+pos,nextpos);

	if (!nextToken)
	{
	    break;
	}

	if (csNumTokens>=_CS_MAX_TOKENS)
	{
           break;
	}

	pos=nextToken-csCmdLine+1;

	while (csCmdLine[pos]==' ')
	{
	    pos++;
	}
    }
}



/***************************************************************************/
/***************************************************************************/
/***                  Interpreteaza linia de comanda                     ***/
/***************************************************************************/
/***************************************************************************/

void _CompileCmdLine
   (
   )

{
    unsigned int iarg,iarg2,i,count;
    char str[100],flag;
    float farg;


    flag=0;

    switch (csNumTokens)
    {
	case 1:
	if (!strcmp(strupr(csCmdTokens[0]),"QUIT"))
	{
	    quit=1;
	    return;
	}
	else
	if (!strcmp(strupr(csCmdTokens[0]),"INTRO"))
	{
	    _PushConsoleTextLines(csFirstInfo);
	    flag=1;
	}
	break;

	case 2:
	if (!strcmp(strupr(csCmdTokens[0]),"MAN"))
	{
	    if (!strcmp(strupr(csCmdTokens[1]),"SET"))
	    {
		_PushConsoleTextLines(csInfos[0]);
	    }
	    else
	    if (!strcmp(strupr(csCmdTokens[1]),"GET"))
	    {
		_PushConsoleTextLines(csInfos[1]);
	    }
	    else
	    if (!strcmp(strupr(csCmdTokens[1]),"PRINT"))
	    {
		_PushConsoleTextLines(csInfos[2]);
	    }
	    else
	    if (!strcmp(strupr(csCmdTokens[1]),"MAN"))
	    {
		_PushConsoleTextLines(csInfos[3]);
	    }
	    else
	    if (!strcmp(strupr(csCmdTokens[1]),"QUIT"))
	    {
		_PushConsoleTextLines(csInfos[4]);
	    }
	    else
	    if (!strcmp(strupr(csCmdTokens[1]),"INTRO"))
	    {
		_PushConsoleTextLines(csInfos[5]);
	    }

	    flag=1;
	}
	else
	if (!strcmp(strupr(csCmdTokens[0]),"GET"))
	{
	    flag=1;

	    sscanf(csCmdTokens[1],"%d",&iarg);

	    switch (iarg)
	    {
		case 0:
		iarg2=SelView;
		break;

		case 1:
		iarg2=Views[SelView].seed;
		break;

		case 2:
		iarg2=Views[SelView].N;
		break;

		case 3:
		iarg2=Views[SelView].n;
		break;

		case 4:
		iarg2=SwitchFScreen;
		break;

		case 5:
		iarg2=Views[SelView].SwitchBubble;
		break;

		case 6:
		iarg2=Views[SelView].SwitchBar;
		break;

		case 7:
		iarg2=Views[SelView].color;
		break;

		case 8:
		iarg2=Views[SelView].backcolor;
		break;

		case 9:
		iarg2=Views[SelView].SwitchRuler;
		break;

		case 10:
		iarg2=Views[SelView].SwitchGrid;
		break;

		case 11:
		farg=Views[SelView].RulerResX;
		break;

		case 12:
		farg=Views[SelView].RulerResY;
		break;

		case 13:
		iarg2=Views[SelView].rulercolor;
		break;

		case 14:
		iarg2=Views[SelView].SwitchInterp;
		break;

		case 15:
		iarg2=Views[SelView].interpcolor;
		break;
	    }

	    if (
		(iarg!=11)&&

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久9999吃药| 亚洲高清免费观看高清完整版在线观看| 亚洲色图在线视频| 免费久久精品视频| 色婷婷综合视频在线观看| 精品国产第一区二区三区观看体验| 亚洲欧美日韩久久精品| 韩国三级在线一区| 欧美日韩在线精品一区二区三区激情| 国产性色一区二区| 老色鬼精品视频在线观看播放| 一本色道久久综合精品竹菊| 国产欧美日韩不卡免费| 毛片基地黄久久久久久天堂| 欧美三片在线视频观看 | 日本一区二区三区在线不卡| 视频在线观看一区二区三区| 99国产精品久久| 中文字幕欧美激情| fc2成人免费人成在线观看播放| 精品日韩av一区二区| 日韩和欧美一区二区三区| 91黄色激情网站| 亚洲精品视频免费看| 91同城在线观看| 亚洲色图欧洲色图婷婷| 成人18精品视频| 国产精品全国免费观看高清| 成人黄色大片在线观看| 国产精品网站在线播放| 丁香另类激情小说| 国产精品护士白丝一区av| 风间由美一区二区三区在线观看 | 色偷偷88欧美精品久久久| 中文字幕亚洲不卡| www.在线成人| 亚洲欧美一区二区三区极速播放| 波多野结衣中文字幕一区| 亚洲欧洲日产国码二区| 91丨九色丨黑人外教| 亚洲人成小说网站色在线| 色国产综合视频| 婷婷六月综合亚洲| 日韩视频国产视频| 国产伦精品一区二区三区免费迷 | 亚洲美女在线国产| 91福利社在线观看| 视频精品一区二区| 日韩你懂的电影在线观看| 激情久久五月天| 国产精品女同互慰在线看| 99精品视频在线观看免费| 亚洲综合一区二区三区| 91精品婷婷国产综合久久竹菊| 蜜臀av性久久久久av蜜臀妖精| 精品嫩草影院久久| 99精品黄色片免费大全| 亚洲图片欧美色图| 欧美成人国产一区二区| 成人动漫av在线| 亚洲成a天堂v人片| 久久久久久久久岛国免费| 91丨porny丨首页| 日本视频免费一区| 国产精品伦一区| 91麻豆精品久久久久蜜臀| 国产精品一二三四区| 亚洲一区二三区| 久久亚洲捆绑美女| 色婷婷久久一区二区三区麻豆| 首页国产丝袜综合| 欧美激情综合五月色丁香小说| 欧美自拍偷拍一区| 国产在线播放一区二区三区| 亚洲视频电影在线| 欧美大片在线观看| 在线观看成人小视频| 国产精品主播直播| 亚洲成人av中文| 国产精品美女久久久久久久网站| 欧美色大人视频| 成人激情黄色小说| 蜜桃传媒麻豆第一区在线观看| 国产精品久久毛片a| 日韩一区二区电影网| 日本高清不卡视频| 丁香婷婷综合网| 久久99国产精品麻豆| 亚洲综合丝袜美腿| 国产精品毛片无遮挡高清| 欧美成人艳星乳罩| 欧美精三区欧美精三区| 99久久综合色| 粉嫩av一区二区三区粉嫩| 免费三级欧美电影| 午夜日韩在线观看| 一区二区视频免费在线观看| 国产欧美日韩另类视频免费观看| 日韩一区二区三区视频在线| 欧美亚洲精品一区| 日本精品一级二级| 99久久婷婷国产综合精品电影| 久久99久久久欧美国产| 日韩国产一二三区| 婷婷开心激情综合| 亚洲超碰精品一区二区| 一区二区三区在线免费| 国产精品久久777777| 日本一区二区久久| 亚洲国产成人在线| 欧美极品少妇xxxxⅹ高跟鞋| 久久影院视频免费| 久久久久青草大香线综合精品| 日韩一区二区在线看| 欧美一级国产精品| 欧美一级日韩免费不卡| 日韩一二三区不卡| 欧美大肚乱孕交hd孕妇| 精品日韩欧美在线| 久久久www成人免费无遮挡大片| 精品国产精品一区二区夜夜嗨| wwwwxxxxx欧美| 中文字幕国产一区| 国产精品毛片久久久久久久| 亚洲欧美在线观看| 亚洲一二三区不卡| 青青草91视频| 国产乱码精品1区2区3区| 成人一区在线观看| 色综合欧美在线| 欧美群妇大交群的观看方式| 欧美一区二区在线视频| 日韩欧美一级片| 国产精品毛片久久久久久| 亚洲男同1069视频| 日本最新不卡在线| 国产精品77777| 色婷婷久久99综合精品jk白丝| 欧美色倩网站大全免费| 91精品欧美综合在线观看最新| 日韩一区二区高清| 中文无字幕一区二区三区| 亚洲欧洲美洲综合色网| 亚洲国产精品精华液网站| 久久国产麻豆精品| 99视频热这里只有精品免费| 欧美日韩综合色| 国产日韩欧美综合一区| 国产一区在线精品| 99视频在线观看一区三区| 欧美日韩激情一区| 国产视频一区在线播放| 亚洲精品中文字幕在线观看| 青青草97国产精品免费观看无弹窗版 | 日韩高清不卡在线| 国产成人亚洲综合色影视| 色94色欧美sute亚洲线路一久| 日韩欧美一区二区久久婷婷| √…a在线天堂一区| 琪琪一区二区三区| 91麻豆精品秘密| 久久综合色天天久久综合图片| 亚洲人成人一区二区在线观看| 奇米影视一区二区三区小说| 99国产精品久| www国产成人免费观看视频 深夜成人网| 亚洲人成亚洲人成在线观看图片| 激情图片小说一区| 欧美人动与zoxxxx乱| 国产精品成人一区二区艾草| 伦理电影国产精品| 欧美日韩国产在线观看| 国产精品美女久久久久av爽李琼| 秋霞av亚洲一区二区三| 欧美优质美女网站| 国产精品成人网| 国产91精品在线观看| 欧美大黄免费观看| 日韩国产欧美三级| 在线免费不卡电影| 亚洲女人的天堂| 99这里都是精品| 国产精品亲子伦对白| 国产美女视频一区| 精品国产青草久久久久福利| 午夜婷婷国产麻豆精品| 91麻豆国产自产在线观看| 国产女主播在线一区二区| 精品一区二区三区免费视频| 欧美男生操女生| 午夜精品久久久久久久| 欧美亚洲禁片免费| 亚洲永久免费av| 欧美三区在线观看| 亚洲国产成人av网| 制服丝袜亚洲播放| 青青草精品视频| 欧美大片日本大片免费观看| 老司机精品视频线观看86| 日韩欧美一级在线播放|