Bátfai Hacker Stream

Bátf41 Haxor Str34m

Bátf41 Haxor Str34m

Labdapattogás

2018. augusztus 28. - nb

Ez a második kihívás, amire emléxek. A képernyőn egy karakternek kell pattognia if vagy bármilyen hasonlítgatás nélkül. Ezzel a feladattal foglalkozunk ebben a csokorban. Kezdjük az if-es változattal:

A forrás elemzéséhez Nándi ezt az ábrát készítette:

delta.jpg

A C forrás:

#include <stdio.h>
#include <curses.h>
#include <unistd.h>

int
main ( void )
{
    WINDOW *ablak;
    ablak = initscr ();

    int x = 0;
    int y = 0;

    int xnov = 1;
    int ynov = 1;

    int mx;
    int my;

    for ( ;; ) {

        getmaxyx ( ablak, my , mx );

        mvprintw ( y, x, "O" );

        refresh ();
        usleep ( 100000 );

        x = x + xnov;
        y = y + ynov;

        if ( x>=mx-1 ) { // elerte-e a jobb oldalt?
            xnov = xnov * -1;
        }
        if ( x<=0 ) { // elerte-e a bal oldalt?
            xnov = xnov * -1;
        }
        if ( y<=0 ) { // elerte-e a tetejet?
            ynov = ynov * -1;
        }
        if ( y>=my-1 ) { // elerte-e a aljat?
            ynov = ynov * -1;
        }

    }

    return 0;
}

Folytatjuk majd a posztot a forrás mélyebb feldolgozásával, majd az if nélküli változattal, addig is: sziasztok, hackerek.

A bejegyzés trackback címe:

https://bhaxor.blog.hu/api/trackback/id/tr5814208781

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása