Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as C by registered user Sylar ( 13 years ago )
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int start(int a[]);
int screen(int a[]);
int play(int a[]);
int c=15;
int main()
{
int a[16]={0};
start(a);
play(a);
return 0;
}
int start(int a[])
{
int i,j;
srand(time(NULL));
for(i=0;i<16;i++)
{
if(i==15)
{
a[i]=32; break;
}
else
{
a[i]=1+rand();
}
if(i!=0)
{
for(j=0;j<i;j++)
{
if(a[i]==a[j])
{
j=-1;
a[i]=1+rand();
}
else continue;
}
}
else
{
continue;
}
}
screen(a);
return 0;
}
int screen(int a[])
{
int i;
for(i=0;i<16;i++)
{
if(i%4==0 && i!=0)
printf("\n---+---+---+---\n");
if(a[i]==32)
{
printf("<",a[i]);
if((i!=3 && i!=7) && (i!=11 && i!=15))
printf("|");
}
else
{
printf("=",a[i]);
if((i!=3 && i!=7) && (i!=11 && i!=15))
printf("|");
}
}
printf("\n");
return 0;
}
int play(int a[])
{
char x;
int i=1,k,y;
while(i)
{
x=getche();
system("cls");
if(x=='w')
y=119;
else if(x=='s') y=115;
else if(x=='a') y=97;
else y=100;
if(y==119)
{
if(c==0 || c==1 || c==2 || c==3)
{
screen(a); printf("\nError"); y=0;
}
else
{k=a[c]; a[c]=a[c-4]; a[c-4]=k; screen(a); c=c-4; y=0;}
}
else if(y==97)
{
if(c==0 || c==4 || c==8 || c==12)
{
screen(a); printf("\nError"); y=0;
}
else
{k=a[c]; a[c]=a[c-1]; a[c-1]=k; screen(a); c=c-1; y=0;}
}
else if(y==115)
{
if(c==12 || c==13 || c==14 || c==15)
{
screen(a); printf("\nError"); y=0;
}
else
{k=a[c]; a[c]=a[c+4]; a[c+4]=k; screen(a); c=c+4; y=0;}
}
else
{
if(c==3 || c==7 || c==11 || c==15)
{
screen(a); printf("\nError"); y=0;
}
else
{k=a[c]; a[c]=a[c+1]; a[c+1]=k; screen(a); c=c+1; y=0;}
}
if(a[0]<a[1] && a[1]<a[2] && a[2]<a[3] && a[3]<a[4] && a[4]<a[5] && a[5]<a[6] && a[7]<a[8] && a[8]<a[9] && a[9]<a[10] && a[10]<a[11] && a[11]<a[12] && a[12]<a[13] && a[13]<a[14])
{
printf("You Win"); break;
}
if(a[1]<a[2] && a[2]<a[3] && a[3]<a[4] && a[4]<a[5] && a[5]<a[6] && a[7]<a[8] && a[8]<a[9] && a[9]<a[10] && a[10]<a[11] && a[11]<a[12] && a[12]<a[13] && a[13]<a[14] && a[14]<a[15])
{
printf("You Win"); break;
}
}
}
Revise this Paste
Parent: 61341