Program Tulisan Berjalan Di C/ ANSI

Program ini, merupakan implementasi antara fungsi delay / sleep dan fungsi gotoxy. Seperti yang kita tahu, fungsi delay sudah diwakili oleh sleep. Namun, bagaimana dengan gotoxy(), apakah ada di C/ANSI, Jawabannya adalah tidak ada. Terus, apa solusinya?  Otomatis, kita harus membuat suatu library sendiri/ membuat fungsi gotoxy() sendiri. Karena, pada dasarnya fungsi gotoxy pada turbo/ borland c++ adalah buatan mereka sendiri yang sifatnya propietary.

Berikut merupakan library/ fungsi gotoxy()


int gotoxy(int x, int y)
{
 char essq[100];
 char xstr[100];
 char ystr[100];

 sprintf(xstr, "%d", x);
 sprintf(ystr, "%d", y);

 essq[0] = '\0';

 strcat(essq, "\033[");
 strcat(essq, ystr);
 strcat(essq, "d");
 strcat(essq, "\033[");
 strcat(essq, xstr);
 strcat(essq, "G");

 printf("%s", essq);

 return 0;
}

Sourcecode Implementasi pada program tulisan berjalan


#include <stdio.h>
#include <string.h>
#include <time.h>

int gotoxy(int x, int y)
{
 char essq[100];
 char xstr[100];
 char ystr[100];

 sprintf(xstr, "%d", x);
 sprintf(ystr, "%d", y);

 essq[0] = '\0';

 strcat(essq, "\033[");
 strcat(essq, ystr);
 strcat(essq, "d");
 strcat(essq, "\033[");
 strcat(essq, xstr);
 strcat(essq, "G");

 printf("%s", essq);

 return 0;
}

int main(void)
{
 char nama[20];
 int c=0;
 system("clear");
 printf("masukkan nama anda = ");scanf("%s",nama);

 //ke kanan
 do{
 system("clear");
 gotoxy(c,10);
 printf("%s\n",nama);
 sleep(1);
 c+=2;
 }
 while(c<=30);

 // ke kiri
 c=30;
 do{
 c-=2;
 system("clear");
 gotoxy(c,10);
 printf("%s\n",nama);
 sleep(1);
 }
 while(c>0);
}

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: