Yürüyen Adam

C++ ile yapılabilecekler sınırsız.

Yine birgün C++ ile neler yapabilirim diye düşünürken kayan yazı yapmaya karar verdim. Kayan yazıyı biraz daha geliştirip yürüyen bir çöp adam yapmaya çalıştım. Kodları aşağıda bulabilirsiniz.

Programın çalışırkenki halini bir gif haline getirdim;

Program Kodu

#include<iostream>
#include<windows.h>

using namespace std;
int main()
{
    while(1)
    {
        for(int i=0; i<75; i++)
        {
            for(int j=0; j<i; j++)
            {
                cout<<" ";
            }
            cout<<" O"<<endl;
            for(int j=0; j<i; j++)
            {
                cout<<" ";
            }
            cout<<"/"<<"|"<<"\\"<<endl;
            for(int j=0; j<i; j++)
            {
                cout<<" ";
            }
            if(i%2==0)
                cout<<" /\\";
            else
                cout<<" |";
            Sleep(100);
            system("CLS");

        }

    }
}

Aynı şekilde bir kayan yazı yapılabilir, Oda şu şekilde yapılıyor;

#include<iostream>
#include<windows.h>

using namespace std;
int main()
{
    while(1)
    {
        for(int i=0; i<75; i++)
        {    for(int j=0; j<i; j++)
            {
                cout<<" ";
            }
			cout<<"mmT";
            Sleep(100);
            system("CLS");

        }

    }
}

 

1 Comment

  1. S.a. kardeşim şuna bi el atar mısın? ben bu işte yeniyim de ordaki w olarak atadığım şeyi hareket ettiremiyorum. bu işin sırrı nedir. nelere dikkat etmem gerekir. Teşekkür ederim.

    #include
    #include
    #include
    using namespace std;
    void printgrid();
    void yilanbas();

    char grid[20][30];
    int h=20;
    int w=30;
    int yilanbasx;
    int yilanbasy;
    enum eDirecton {STOP = 0, LEFT,RIGHT, UP, DOWN};
    eDirecton dir;
    bool endgame=false;
    int dx;

    void printgrid(){
    system(“cls”);
    for(int i = 0;i < h;i++)
    {
    for(int j = 0;j < w;j++)
    {

    if (i==19 || j==0 || j==29|| i==0 ){

    cout << grid[i][j] << '*';
    }

    else cout << grid[i][j] << ' ';

    grid[10][10]='w';
    if (grid[i][j]=='w'){

    grid[i][j]=grid[yilanbasx][yilanbasy];

    }

    }cout <<endl;

    }

    }

    void input(){
    if (_kbhit ()) {

    switch (_getch ()) {

    case 'a': dir = LEFT;

    break;

    }

    }

    }

    void yilanbas()
    {
    Sleep(200);

    system("cls");
    printgrid();

    }
    void hareket(){
    switch(dir) {

    if (dir==LEFT){

    yilanbasx–;

    grid[yilanbasx][yilanbasy]='w';

    }
    }

    }
    int main()
    //main() function
    {
    while(endgame==false)

    {

    printgrid();

    yilanbas();
    input();

    hareket();

    }

    }

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir