Ejemplo n.º 1
0
void open(int x,int y)
{    if(x>=minx&&x<=maxx&&y>=miny&&y<=maxy)
     {	int c=0;
	if(mark[(x-minx)/40][(y-miny)/30]==1)
			mark1[(x-minx)/40][(y-miny)/30]=1;
	if(mark1[(x-minx)/40][(y-miny)/30]==0&&mark[(x-minx)/40][(y-miny)/30]==0)//correction made
	{	for(int i=0;i<mines;i++)
			if(a[i][1]==x&&a[i][2]==y)
			{ 	setcolor(5);
				//outtextxy(275,100,"MINE OPENED");
				setfillstyle(SOLID_FILL,10);
				for(int i=0;i<mines;i++)
				{      bar(a[i][1]+7,a[i][2]+7,a[i][1]+33,a[i][2]+23);
				       outtextxy(a[i][1]+12,a[i][2]+10,"$$");
				}
				settextstyle(TRIPLEX_FONT,0,5);
				setcolor(3);
				outtextxy(120,240,"$$$  YOU LOSE  $$$");
				getch();
				exit(1);
			}
		numgen(x,y,c);
		mark1[(x-minx)/40][(y-miny)/30]=1;
		if(numgen(x ,y,c)==0)
		{   if(mark[(x-minx-40)/40][(y-miny)/30]!=1)
			open(x-40,y);
		    if(mark[(x-minx-40)/40][(y-miny-30)/30]!=1)
			open(x-40,y-30);
		    if(mark[(x-minx-40)/40][(y-miny+30)/30]!=1)
			open(x-40,y+30);
		    if(mark[(x-minx+40)/40][(y-miny)/30]!=1)
			open(x+40,y);
		    if(mark[(x-minx+40)/40][(y-miny-30)/30]!=1)
			open(x+40,y-30);
		    if(mark[(x-minx+40)/40][(y-miny+30)/30]!=1)
			open(x+40,y+30);
		    if(mark[(x-minx)/40][(y-miny-30)/30]!=1)
			open(x,y-30);
		    if(mark[(x-minx)/40][(y-miny+30)/30]!=1)
			open(x,y+30);
}   }	}	}
Ejemplo n.º 2
0
int main(int argc, char *argv[])
{
  start=0;  /* Start number */
  finish=255; /* Finish number */
  width=16;  /* Numbers in a line */

  fp=fopen("file0001.txt","w");  /* Open file for writing */
  fprintf(fp,"####################################\n");
  fprintf(fp,"#\n");
  fprintf(fp,"# -- TEXTPATGEN GENERATED FILE --\n");
  fprintf(fp,"#\n");
  fprintf(fp,"# Start number: %ld ( 0x%lX Hex, 0%lo Octal )\n",start,start,start);
  fprintf(fp,"# Finish number: %ld ( 0x%lX Hex, 0%lo Octal )\n",finish,finish,finish);
  fprintf(fp,"# Numbers in a line: %ld\n",width);
  fprintf(fp,"#\n");
  fprintf(fp,"####################################\n");
  numgen(start, finish, size);
  fprintf(fp,"# -- End of file.\n");
  fclose(fp);  /* Close file */
  return 0;
}
Ejemplo n.º 3
0
main()
{
    initwindow(300,370);
    int remark,i,j,k,dp;
    float num[100]={0},number[100]= {0},ans;
    char task;
    task='\0';
    i=0;
    j=0;
    ans=0;
    dp=-1;
    layout();
    setviewport(3,8,290,50,1);
getclick:
    clearmouseclick(513);
    setbkcolor(WHITE);
    clearviewport();
    setcolor(RED);
    settextstyle(2,1,10);
    char c[100];
    if((number[j]==0||number[j]==1)&&j!=0&&i!=1)
    {
        k=j-1;
    }
    else
    {
        k=j;
    }
    if(number[k]-(int)number[k]==0)
    {
        sprintf(c,"%.0f",number[k]);
    }
    else
    {
        sprintf(c,"%.4f",number[k]);
    }
    outtextxy(280,45,c);
    if(task!='S'&&task!='^')
    {
        settextstyle(2,1,6);
        sprintf(c,"%c",task);
        outtextxy(10,25,c);
    }
    delay(500);
    if(ismouseclick(513)==1)
    {
getclick1:
        remark=click();
        if(remark==-1000)
        {
            number[j]=numgen(num,i,dp);
            goto getclick;
        }
        else if(remark==-100)
        {
            return 0;
        }
        else if(remark>=0&&remark<=9)
        {
            if(task=='S')
            {
                j++;
                i=0;
                task='\0';
            }
            num[i]=remark;
            i++;
            number[j]=numgen(num,i,dp);
            clearviewport();
            delay(25);
            goto getclick;
        }
        else if(remark==-1)
        {
            if(i==dp)
            {
                dp=-1;
            }
            i--;
            if(i<0)
            {
                i=0;
            }
            number[j]=numgen(num,i,dp);
            clearviewport();
            delay(25);
            goto getclick;
        }
        else if(remark==-2)
        {
            dp=i;
            //number[j]=numgen(num,i,dp);
            clearviewport();
            delay(25);
            goto getclick;
        }
        //calculate =
        else if(remark==12)
        {
            if(num[0]-(int)num[0]==0)
            {
                number[j]=numgen(num,i,dp);
            }
            else
            {
                number[j]=num[0];
            }
            if(task=='+')
            {
                number[j]=add(number[j-1],number[j]);
            }
            else if(task=='-')
            {
                number[j]=sub(number[j-1],number[j]);
            }
            else if(task=='x')
            {
                number[j]=mul(number[j-1],number[j]);
            }
            else if(task=='/')
            {
                number[j]=divi(number[j-1],number[j]);
            }
              else if(task=='^')
            {
                number[j]=pow(number[j-1],number[j]);
            }
            clearviewport();
            ans=number[j];
            while(1)
            {
                delay(50);
                setbkcolor(WHITE);
                settextstyle(2,1,10);
                if(task=='/'&&number[j]==-1)
                {
                    settextstyle(2,1,8);
                    outtextxy(285,35,"MATH ERROR");
                }
                else if(number[j]-(int)number[j]==0)
                {
                    sprintf(c,"%.0f",number[j]);
                    outtextxy(280,45,c);
                }
                else
                {
                    sprintf(c,"%.4f",number[j]);
                    outtextxy(285,45,c);
                }
                delay(500);
                if(ismouseclick(513))
                {
                    i=0;
                    j=0;
                    number[j]=0;
                    dp=-1;
                    task='\0';
                    clearviewport();
                    delay(50);
                    goto getclick1;

                }
            }
        }
        else if(remark==11)
        {
            if(num[0]-(int)num[0]==0)
            {
                number[j]=numgen(num,i,dp);
            }
            else
            {
                number[j]=num[0];
            }
            if(task=='+')
            {
                number[j]=add(number[j-1],number[j]);
            }
            else if(task=='-')
            {
                number[j]=sub(number[j-1],number[j]);
            }
            else if(task=='x')
            {
                number[j]=mul(number[j-1],number[j]);
            }
            else if(task=='/')
            {
                number[j]=divi(number[j-1],number[j]);
            }
              else if(task=='^')
            {
                number[j]=pow(number[j-1],number[j]);
            }
            j++;
            i=0;
            number[j]=0;
            dp=-1;
            task='+';
            clearviewport();
            delay(25);
            goto getclick;
        }
        else if(remark==13)
        {
            i=0;
            j=0;
            number[j]=0;
            task='\0';
            goto getclick;
        }
        else if(remark==14)
        {
            if(num[0]-(int)num[0]==0)
            {
                number[j]=numgen(num,i,dp);
            }
            else
            {
                number[j]=num[0];
            }
            if(task=='+')
            {
                number[j]=add(number[j-1],number[j]);
            }
            else if(task=='-')
            {
                number[j]=sub(number[j-1],number[j]);
            }
            else if(task=='x')
            {
                number[j]=mul(number[j-1],number[j]);
            }
            else if(task=='/')
            {
                number[j]=divi(number[j-1],number[j]);
            }
              else if(task=='^')
            {
                number[j]=pow(number[j-1],number[j]);
            }
            j++;
            i=0;
            number[j]=0;
            dp=-1;
            task='-';
            clearviewport();
            delay(25);
            goto getclick;
        }
        else if(remark==15)
        {
            if(num[0]-(int)num[0]==0)
            {
                number[j]=numgen(num,i,dp);
            }
            else
            {
                number[j]=num[0];
            }
            if(task=='+')
            {
                number[j]=add(number[j-1],number[j]);
            }
            else if(task=='-')
            {
                number[j]=sub(number[j-1],number[j]);
            }
            else if(task=='x')
            {
                number[j]=mul(number[j-1],number[j]);
            }
            else if(task=='/')
            {
                number[j]=divi(number[j-1],number[j]);
            }
              else if(task=='^')
            {
                number[j]=pow(number[j-1],number[j]);
            }
            j++;
            i=0;
            number[j]=0;
            dp=-1;
            num[i]=0;
            task='x';
            clearviewport();
            delay(25);
            goto getclick;
        }
        else if(remark==16)
        {
            if(num[0]-(int)num[0]==0)
            {
                number[j]=numgen(num,i,dp);
            }
            else
            {
                number[j]=num[0];
            }
            if(task=='+')
            {
                number[j]=add(number[j-1],number[j]);
            }
            else if(task=='-')
            {
                number[j]=sub(number[j-1],number[j]);
            }
            else if(task=='x')
            {
                number[j]=mul(number[j-1],number[j]);
            }
            else if(task=='/')
            {
                number[j]=divi(number[j-1],number[j]);
            }
            else if(task=='^')
            {
                number[j]=pow(number[j-1],number[j]);
            }
            j++;
            i=0;
            number[j]=0;
            dp=-1;
            num[i]=0;
            task='/';
            clearviewport();
            delay(25);
            goto getclick;
        }
        else if(remark==-3)
        {
            number[j]=sqrt(number[j]);
            num[0]=number[j];
            i=1;
            task='S';
            ans=number[j];
            clearviewport();
            delay(50);
            clearmouseclick(513);
            goto getclick;
        }
        else if(remark==-4)
        {
            number[j]=(number[j]/100)*number[j-1];
            if(number[j-1]==0)
            {
                number[j]=0;
            }
            num[0]=number[j];
            i=1;
            task='S';
            ans=number[j];
            clearviewport();
            delay(50);
            clearmouseclick(513);
            goto getclick;
        }
        else if(remark==-5)
        {
            if(num[0]-(int)num[0]==0)
            {
                number[j]=numgen(num,i,dp);
            }
            else
            {
                number[j]=num[0];
            }
            if(task=='+')
            {
                number[j]=add(number[j-1],number[j]);
            }
            else if(task=='-')
            {
                number[j]=sub(number[j-1],number[j]);
            }
            else if(task=='x')
            {
                number[j]=mul(number[j-1],number[j]);
            }
            else if(task=='/')
            {
                number[j]=divi(number[j-1],number[j]);
            }
              else if(task=='^')
            {
                number[j]=pow(number[j-1],number[j]);
            }
            j++;
            i=0;
            number[j]=0;
            dp=-1;
            num[i]=0;
            task='^';
            clearviewport();
            delay(25);
            goto getclick;
        }
        else if(remark==-6)
        {
            number[j]=ans;
            num[0]=ans;
            i=1;
            clearviewport();
            delay(25);
            goto getclick;
        }
        else
        {
            clearmouseclick(513);
            goto getclick;
        }
    }
    clearmouseclick(513);
    goto getclick;
}