#include "stdio.h"
#include "conio.h"
#include "graphics.h"
#include "dos.h"
void clear(int,int,int,int);
void main()
{
int gd = DETECT,gm,hour,min,sec,midx,midy,temp;
char buffer[20],ch;
struct time now;
initgraph(&gd,&gm,"c:\\tc\\bgi");
midx = getmaxx()/2;
midy = getmaxy()/2;
setcolor(RED);
rectangle(midx-210,midy-40,midx+198,midy+30);
outtextxy(midx-80,midy+190,"Press \"ESC\" to Exit");
gettime(&now);
if(now.ti_hour > 12)
{
setcolor(GREEN);
settextstyle(5,HORIZ_DIR,5);
outtextxy(midx+170,midy-20,"PM");
hour = now.ti_hour - 12;
ch = 'p';
}
else
{
setcolor(GREEN);
settextstyle(5,HORIZ_DIR,5);
outtextxy(midx+170,midy-20,"AM");
hour = now.ti_hour;
ch = 'a';
}
min = now.ti_min;
sec = now.ti_sec;
while(1)
{
if(kbhit())
{
if(getch() == 27)
break;
}
if(hour == 12 && min == 0 && sec == 0 && ch == 'a')
{
setcolor(BLACK);
settextstyle(5,HORIZ_DIR,5);
outtextxy(midx+170,midy-20,"AM");
setcolor(GREEN);
outtextxy(midx+170,midy-20,"PM");
}
if(hour == 12 && min == 0 && sec == 0 && ch == 'p')
{
setcolor(BLACK);
settextstyle(5,HORIZ_DIR,5);
outtextxy(midx+170,midy-20,"PM"); /* To Overwrite Previous Notation */
setcolor(GREEN);
outtextxy(midx+170,midy-20,"AM");
}
delay(1000);
if(sec >= 59)
{
clear(midx-12,midy-32,midx+32,midy+25);
min++;
if(min > 59)
{
min = 0;
hour++;
if(hour > 12)
hour -= 12;
clear(midx-144,midy-32,midx-101,midy+25);
if(hour > 9)
{
clear(midx-144,midy-32,midx-101,midy+25);
clear(midx-198,midy-32,midx-156,midy+25);
}
}
if(min%10 == 0)
clear(midx-67,midy-32,midx-25,midy+25);
sec = 0;
}
else
sec++;
if(sec%10 == 0)
clear(midx+65,midy-32,midx+107,midy+25);
clear(midx+120,midy-32,midx+162,midy+25); /* To clear seconds */
sprintf(buffer,"%02d:%02d:%02d",hour,min,sec);
setcolor(BROWN);
settextstyle(5,HORIZ_DIR,8);
outtextxy(midx-195,midy-70,buffer);
}
closegraph();
}
/* This function clears the specified area */
/* by glowing the pixel of that area in black color */
void clear(int x1,int y1,int x2,int y2)
{
int x,y;
for(x=x1;x<=x2;x++)
for(y=y1;y<=y2;y++)
putpixel(x,y,BLACK);
}
Friday, September 4, 2009
A DIGITAL WATCH
Labels: c graphics, Nice Programs
Posted by Unknown at 1:07 AM 0 comments
PROGRAM TO MAKE A PIECHART
#include "stdio.h"
#include "conio.h"
#include "process.h"
#include "graphics.h"
float angle(int,int);
void main()
{
int gd = DETECT,gm,midx,midy,temp,errorcode;
int comp,ele,civil,arc,start_angle,end_angle,total;
float percent;
char convert[6];
initgraph(&gd,&gm,"c:\\tc\\bgi");
errorcode = graphresult();
if (errorcode != grOk) /* An Error Occurred */
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* Terminate with an error code */
}
midx = getmaxx()/2;
midy = getmaxy()/2;
/* Input Data and Calculates Total */
do
{
cleardevice();
setcolor(RED);
outtextxy(15,10,"ENTER NUMBER OF STUDENTS ON FOLLOWING FACULTIES");
setcolor(BROWN);
outtextxy(15,38,"Computer :");
gotoxy(17,3);
scanf("%d",&comp);
outtextxy(15,53,"Electronics :");
gotoxy(17,4);
scanf("%d",&ele);
outtextxy(15,68,"Civil :");
gotoxy(17,5);
scanf("%d",&civil);
outtextxy(15,83,"Architect :");
gotoxy(17,6);
scanf("%d",&arc);
total = comp+ele+civil+arc;
/* Formats and Makes a Piechart with the help of */
/* function pieslice() and simple mathmatical calculations */
setcolor(RED);
rectangle(70,150,midx+260,midy+150);
setcolor(BLACK);
setfillstyle(SOLID_FILL,GREEN);
start_angle = 0;
end_angle = start_angle+angle(comp,total);
if(start_angle >= end_angle)
; /* Does Nothing */
else
pieslice(midx-120,midy+30,start_angle,end_angle,100); /* Draw a Sector */
start_angle = end_angle;
end_angle = start_angle+angle(ele,total);
if(start_angle >= end_angle)
;
else
{
setfillstyle(SOLID_FILL,BLUE);
pieslice(midx-120,midy+30,start_angle,end_angle,100);
}
start_angle = end_angle;
end_angle = start_angle+angle(civil,total);
if(start_angle >= end_angle)
;
else
{
setfillstyle(SOLID_FILL,BROWN);
pieslice(midx-120,midy+30,start_angle,end_angle,100);
}
start_angle = end_angle;
end_angle = 360;
if(start_angle >= end_angle)
;
else
{
setfillstyle(SOLID_FILL,CYAN);
pieslice(midx-120,midy+30,start_angle,end_angle,100);
}
/* Draw Bars */
setfillstyle(SOLID_FILL,GREEN);
bar(midx+50,midy-30,midx+60,midy-20);
setfillstyle(SOLID_FILL,BLUE);
bar(midx+50,midy-10,midx+60,midy);
setfillstyle(SOLID_FILL,BROWN);
bar(midx+50,midy+10,midx+60,midy+20);
setfillstyle(SOLID_FILL,CYAN);
bar(midx+50,midy+30,midx+60,midy+40);
/* Displays Informations with Percentage */
setcolor(LIGHTBLUE);
outtextxy(midx+75,midy-28,"Computer");
percent = ((float) comp/total)*100;
sprintf(convert,"(%.2f\%)",percent);
outtextxy(midx+165,midy-28,convert);
outtextxy(midx+75,midy-8,"Electronics");
percent = ((float) ele/total)*100;
sprintf(convert,"(%.2f\%)",percent);
outtextxy(midx+165,midy-8,convert);
outtextxy(midx+75,midy+13,"Civil");
percent = ((float) civil/total)*100;
sprintf(convert,"(%.2f\%)",percent);
outtextxy(midx+165,midy+13,convert);
outtextxy(midx+75,midy+33,"Architect");
percent = ((float) arc/total)*100;
sprintf(convert,"(%.2f\%)",percent);
outtextxy(midx+165,midy+33,convert);
setcolor(RED);
outtextxy(midx-90,midy+200,"Press \"ESC\" to stop.");
} while(getch() != 27);
/* Clean Up */
closegraph();
}
float angle(int x,int total)
{
float degree;
degree = ((float)x/total) * 360; /* Converts the data to degree */
return degree;
}
Labels: c graphics, Nice Programs
Posted by Unknown at 1:06 AM 0 comments
Monday, July 13, 2009
PROGRAM TO ACCEPT USERNAME AND PASSWORD
#include "stdio.h"
#include "conio.h"
#include "graphics.h"
#include "string.h"
#include "dos.h"
void main()
{
char userid[15],password[11];
int gd = DETECT,gm,midx,midy,i;
initgraph(&gd,&gm,"c:\\tc\\bgi");
midx = getmaxx()/2;
midy = getmaxy()/2;
do
{
fflush(stdin);
cleardevice();
setcolor(LIGHTGREEN);
rectangle(midx-130,midy+30,midx+100,midy+115); /* Lower Rectangle */
setcolor(RED);
settextstyle(DEFAULT_FONT,HORIZ_DIR,0);
outtextxy(midx-120,midy+53,"USER ID : ");
outtextxy(midx-120,midy+85,"PASSWORD : ");
setcolor(DARKGRAY);
rectangle(midx-35,midy+68,midx+90,midy+45);
rectangle(midx-35,midy+77,midx+90,midy+100);
setcolor(LIGHTCYAN);
line(midx-130,midy+70,midx-190,midy+70); /* A1 */
line(midx+100,midy+70,midx+160,midy+70); /* A2 */
line(midx-190,midy-150,midx-190,midy+70); /* B1 */
line(midx+160,midy-150,midx+160,midy+70); /* B2 */
line(midx-190,midy-150,midx-130,midy-150); /* C1 */
line(midx+160,midy-150,midx+100,midy-150); /* C2 */
setcolor(LIGHTGREEN);
rectangle(midx-130,midy-180,midx+100,midy-120); /* Upper Rectangle */
setcolor(RED);
settextstyle(TRIPLEX_FONT,HORIZ_DIR,2);
outtextxy(midx-100,midy-165,"VERIFY YOURSELF");
setcolor(DARKGRAY);
settextstyle(SMALL_FONT,HORIZ_DIR,7);
outtextxy(midx-145,midy-60,"DEPARTMENT OF COMPUTER");
gotoxy(37,19);
gets(userid);
if(strcmpi(userid,"exit") == 0)
exit(0);
settextstyle(SMALL_FONT,HORIZ_DIR,5);
outtextxy(midx+5,midy+98,"Max 8 Chars");
fflush(stdin);
gotoxy(36,21);
i = 0;
while((password[i++]=getche()) != 13)
printf("*");
password[i-1] = '\0'; /* Ending the Password with Terminating Null Character */
if((strcmpi(userid,"ADMINISTRATOR") || strcmp(password,"software")) == 0)
{
setcolor(GREEN);
settextstyle(9,HORIZ_DIR,1);
outtextxy(midx-140,midy-30,"ACCESS GRANTED");
delay(1000);
}
else
{
setcolor(RED);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(midx-60,midy-10,"ACCESS DENIED");
outtextxy(midx-45,midy+2,"Try Again");
outtextxy(midx-80,midy+15,"Type \"exit\" to stop.");
printf("\a"); /* For Audible Sound */
delay(900);
}
}while((strcmpi(userid,"ADMINISTRATOR") || strcmp(password,"software")) != 0);
}
Labels: c graphics
Posted by Unknown at 12:53 AM 0 comments
Friday, June 26, 2009
PROGRAM TO MAKE A MENU BY USING C GRAPHICS
#include "conio.h"
#include "graphics.h"
#include "stdio.h"
void main(void)
{
char ch;
int gd=DETECT,gm,xcord,ycord;
initgraph(&gd,&gm,"c:\\tc\\bgi");
xcord=getmaxx()/2;
ycord=100;
setcolor(GREEN);
settextjustify(CENTER_TEXT,CENTER_TEXT);
settextstyle(2,HORIZ_DIR,15);
outtextxy(xcord,ycord,"RECORD ENTRY SYSTEM");
setcolor(RED+BLINK);
settextjustify(LEFT_TEXT,BOTTOM_TEXT);
settextstyle(12,HORIZ_DIR,2);
outtextxy(xcord+70,138,">>by ANKIT POKHREL<<");
setcolor(CYAN);
line(60,85,580,85);
line(60,145,580,145);
line(60,85,60,380);
line(580,85,580,380);
line(60,380,580,380);
line(60,348,580,348);
line(xcord-40,145,xcord-40,348);
line(xcord-40,325,580,325);
setcolor(DARKGRAY);
settextstyle(2,HORIZ_DIR,6);
outtextxy(xcord-250,170,"1: ADD");
outtextxy(xcord-250,195,"2: VIEW LIST");
outtextxy(xcord-250,220,"3: SEARCH");
outtextxy(xcord-250,245,"4: MODIFY");
outtextxy(xcord-250,270,"5: DELETE");
outtextxy(xcord-250,295,"6: CLEAR SCREEN");
outtextxy(xcord-250,320,"0: CLOSE APPLICATION");
setcolor(GREEN);
settextjustify(CENTER_TEXT,CENTER_TEXT);
settextstyle(12,HORIZ_DIR,3);
outtextxy(xcord+27,338,"ENTER CHOICE : ");
setcolor(RED+BLINK);
settextstyle(11,HORIZ_DIR,1);
outtextxy(xcord-27,365,"INFO: THANK YOU FOR USING THIS SOFTWARE.");
fflush(stdin);
ch=getche();
fflush(stdin);
getch();
restorecrtmode();
}
Labels: c graphics
Posted by Unknown at 12:51 AM 0 comments