Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <stdlib.h>
- #include <time.h>
- #include <windows.h>
- using namespace std;
- int a[4][4];
- void mutareJos()
- {
- int i,j,k;
- for(k=1; k<=4; k++)
- for(i=3; i>=1; i--)
- for(j=1; j<=4; j++)
- if(a[i+1][j]==0)
- {
- a[i+1][j] = a[i][j];
- a[i][j] = 0;
- }
- for(i=3; i>=1; i--)
- for(j=1; j<=4; j++)
- if(a[i][j] == a[i+1][j])
- {
- a[i+1][j] = a[i+1][j] + a[i][j];
- a[i][j] = 0;
- }
- for(k=1; k<=4; k++)
- for(i=3; i>=1; i--)
- for(j=1; j<=4; j++)
- if(a[i+1][j]==0)
- {
- a[i+1][j] = a[i][j];
- a[i][j] = 0;
- }
- }
- void mutareSus()
- {
- int i,j,k;
- for(k=1; k<=4; k++)
- for(i=1; i<=4; i++)
- for(j=1; j<=4; j++)
- if(a[i][j]==0)
- {
- a[i][j] = a[i+1][j];
- a[i+1][j] = 0;
- }
- for(i=1; i<=4; i++)
- for(j=1; j<=4; j++)
- if(a[i][j] == a[i+1][j])
- {
- a[i][j] = a[i+1][j] + a[i][j];
- a[i+1][j] = 0;
- }
- for(k=1; k<=4; k++)
- for(i=1; i<=4; i++)
- for(j=1; j<=4; j++)
- if(a[i][j]==0)
- {
- a[i][j] = a[i+1][j];
- a[i+1][j] = 0;
- }
- }
- void mutareStanga()
- {
- int i,j,k;
- for(k=1; k<=4; k++)
- for(i=1; i<=4; i++)
- for(j=1; j<=3; j++)
- if(a[i][j]==0)
- {
- a[i][j] = a[i][j+1];
- a[i][j+1] = 0;
- }
- for(i=1; i<=4; i++)
- for(j=1; j<=3; j++)
- if(a[i][j] == a[i][j+1])
- {
- a[i][j] = a[i][j+1] + a[i][j];
- a[i][j+1] = 0;
- }
- for(k=1; k<=4; k++)
- for(i=1; i<=4; i++)
- for(j=1; j<=3; j++)
- if(a[i][j]==0)
- {
- a[i][j] = a[i][j+1];
- a[i][j+1] = 0;
- }
- }
- void mutareDreapta()
- {
- int i,j,k;
- for(k=1; k<=4; k++)
- for(i=1; i<=4; i++)
- for(j=4; j>=2; j--)
- if(a[i][j]==0)
- {
- a[i][j] = a[i][j-1];
- a[i][j-1] = 0;
- }
- for(i=1; i<=4; i++)
- for(j=4; j>=2; j--)
- if(a[i][j] == a[i][j-1])
- {
- a[i][j] = a[i][j-1] + a[i][j];
- a[i][j-1] = 0;
- }
- for(k=1; k<=4; k++)
- for(i=1; i<=4; i++)
- for(j=4; j>=2; j--)
- if(a[i][j]==0)
- {
- a[i][j] = a[i][j-1];
- a[i][j-1] = 0;
- }
- }
- int main()
- {
- char x;
- int i,j,nr1,nr2;
- HANDLE hConsole;
- hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
- srand (time(NULL));
- a[rand() % 4 + 1][ rand() % 4 + 1] = 2;
- a[rand() % 4 + 1][ rand() % 4 + 1] = 2;
- for(i=1; i<=4; i++)
- {
- for(j=1; j<=4; j++)
- if(a[i][j]==0)
- {
- SetConsoleTextAttribute(hConsole,10);
- cout<<"*"<<" ";
- }
- else
- {
- if(a[i][j]<=9)
- {
- SetConsoleTextAttribute(hConsole,6);
- cout<<a[i][j]<<" ";
- }
- if((a[i][j]>=10)&&(a[i][j]<=99))
- {
- SetConsoleTextAttribute(hConsole,14);
- cout<<a[i][j]<<" ";
- }
- if((a[i][j]>=100)&&(a[i][j]<=999))
- {
- SetConsoleTextAttribute(hConsole,9);
- cout<<a[i][j]<<" ";
- }
- if((a[i][j]>=1000)&&(a[i][j]<=10000))
- {
- SetConsoleTextAttribute(hConsole,12);
- cout<<a[i][j]<<" ";
- }
- }
- cout<<endl;
- }
- while(cin>>x)
- {
- switch(x)
- {
- case 's':
- mutareJos();
- break;
- case 'd':
- mutareDreapta();
- break;
- case 'a':
- mutareStanga();
- break;
- case 'w':
- mutareSus();
- break;
- }
- nr1=rand() % 4 + 1;
- nr2=rand() % 4 + 1;
- int k =0;
- while(k==0)
- {
- if(a[nr1][nr2] == 0)
- {
- a[nr1][nr2] = 2;
- k = 1;
- }
- nr1=rand() % 4 + 1;
- nr2=rand() % 4 + 1;
- }
- system("cls");
- for(i=1; i<=4; i++)
- {
- for(j=1; j<=4; j++)
- if(a[i][j]==0)
- {
- SetConsoleTextAttribute(hConsole,10);
- cout<<"*"<<" ";
- }
- else
- {
- if(a[i][j]<=9)
- {
- SetConsoleTextAttribute(hConsole,6);
- cout<<a[i][j]<<" ";
- }
- if((a[i][j]>=10)&&(a[i][j]<=99))
- {
- SetConsoleTextAttribute(hConsole,14);
- cout<<a[i][j]<<" ";
- }
- if((a[i][j]>=100)&&(a[i][j]<=999))
- {
- SetConsoleTextAttribute(hConsole,9);
- cout<<a[i][j]<<" ";
- }
- if((a[i][j]>=1000)&&(a[i][j]<=10000))
- {
- SetConsoleTextAttribute(hConsole,12);
- cout<<a[i][j]<<" ";
- }
- }
- cout<<endl;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement