#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<time.h>
#include<stdlib.h>
#include<dos.h>
char String[21];
int x[20], y[20], Arah_X[20], Arah_Y[20];
int i;
void input(void)
{
do
{
clrscr();
printf("Masukkan Sebuah String [Length 5..20] : ");
gets(String);
}while(strlen(String)<5||strlen(String)>20);
}
void menu(void)
{
clrscr();
printf("String yang Anda masukkan adalah %s\n\n", String);
printf("1. Animasi Bola Pantul\n");
printf("2. Animasi Scroll\n");
printf("3. Huruf Besar\n");
printf("4. Huruf Kecil\n");
printf("5. Cari Huruf\n");
printf("6. Exit");
}
void Bola_Pantul(void)
{
clrscr();
for(i=0;i<strlen(String);i++)
{
x[i]=random(77)+2;
y[i]=random(22)+2;
Arah_X[i]=random(2)*2-1;
Arah_Y[i]=random(2)*2-1;
}
do
{
for(i=0;i<strlen(String);i++)
{
gotoxy(x[i],y[i]);printf("%c",String[i]);
}
delay(100);
for(i=0;i<strlen(String);i++)
{
gotoxy(x[i],y[i]);printf(" ");
}
for(i=0;i<strlen(String);i++)
{
x[i]+=Arah_X[i];
y[i]+=Arah_Y[i];
if(x[i]<2||x[i]>78)Arah_X[i]=-Arah_X[i];
if(y[i]<2||y[i]>23)Arah_Y[i]=-Arah_Y[i];
}
}while(!kbhit());
}
void Scroll(void)
{
char temp;
do
{
gotoxy(31,12);printf("%s",String);
temp=String[0];
for(i=0;i<strlen(String)-1;i++)
String[i]=String[i+1];
String[i]=temp;
delay(100);
}while(!kbhit());
}
void Huruf_Besar(void)
{
for(i=0;i<strlen(String);i++)
{
if((String[i]<65||String[i]>90)&&(String[i]<48||String[i]>57)&&String[i]!=32)
String[i]-=32;
}
}
void Huruf_Kecil(void)
{
for(i=0;i<strlen(String);i++)
{
if((String[i]<97||String[i]>122)&&(String[i]<48||String[i]>57)&&String[i]!=32)
String[i]+=32;
}
}
void Cari_Huruf(void)
{
char kar;
gotoxy(1,12);printf("Masukkan Karakter yang ingin Anda cari : ");
kar=getche();
for(i=0;i<strlen(String);i++)
{
if(String[i]==kar)
{
gotoxy(1,13);printf("Karakter yang ingin Anda cari berada pada Index ke-%d",i);
break;
}
else
{
gotoxy(1,13);printf("Karakter yang ingin Anda cari tidak ditemukan!");
}
}
getch();
}
void main()
{
char tekan;
randomize();
input();
do
{
menu();
tekan=getch();
switch(tekan)
{
case '1':Bola_Pantul();break;
case '2':Scroll();break;
case '3':Huruf_Besar();break;
case '4':Huruf_Kecil();break;
case '5':Cari_Huruf();break;
}
}while(tekan!='6');
}
//---Save file in .C