در ادامه سرس کد برنامه ساعت عقربه دار گرافیکی در محیط کنسول رو می بینید. این برنامه در محیط turbo c++ و به زبان سی نوشته شده است. نخست ساعت سیستم را می گیرد ، خودکار تنظیم می شود و شروع به کار کردن می کند شبیه به یک screen saver در ویندوز. این پروژه هم یکی دیگر از برنامه های من هست که امید وارم بدردتون بخوره...
:Source Code Of Visual Clock Program in C Languege
/*programmer mansoor behzadi
from iran,fars,firoozabad
1386
*/
#include
#include
#include
#include
#include
#include
int main(void)
{
struct dostime_t tt;
int gdriver = DETECT, gmode, errorcode; //initgraph
int i,s=1,d=0,t=0,j,k,g=20,tool=200,ascii=0;
float p=3.14159265;
float f;
f=p/30;
p/=6;
initgraph(&gdriver, &gmode, "c:\\tc\\bgi");//////////////////////////////////////*
for(i=0;i<60;i++)
putpixel(getmaxx()/2+((tool+1)*cos(f*i)),getmaxy()/2+((tool+4)*sin(f*i)),3);
for(i=0;i<12;i++)
outtextxy(getmaxx()/2+((tool+5)*cos(p*i))-5,getmaxy()/2+((tool+4)*sin(p*i))-5,"*");
_dos_gettime(&tt); ///////////////////////////timecomputer
s=tt.hour;
d=tt.minute;
t=tt.second;
if (s>12)
s-=12;
printf("\nProgrammer:Mansoor Behzadi\nsrc:www.behzadim.ir\nX for exit");
///////////tanzim
s-=4;////////////
d-=15;///////////
t-=15;///////////
/////////////////
k=s;
while(ascii!=120)
{
k++;
for(j=-15;j<45;j++)
{
for(i=-15;i<45;i++)
{
///////baraye tanzim daghighe va sanie
if(g>5)
{
i=t;
j=d;
}////////////////////////////////////
setcolor(3);//////rasm saat
line(getmaxx()/2,getmaxy()/2,getmaxx()/2+((tool/2)*cos(p*(k))),getmaxy()/2+((tool/2)*sin(p*(k))));
setcolor(0);
line(getmaxx()/2,getmaxy()/2,getmaxx()/2+((tool/2)*cos(p*(k-1))),getmaxy()/2+((tool/2)*sin(p*(k-1))) );
//////////////////rasm daghighe
setcolor(2);
line(getmaxx()/2,getmaxy()/2,getmaxx()/2+(tool*cos((f*(j)))),getmaxy()/2+(tool*sin((f*(j)))));
setcolor(0);
line(getmaxx()/2,getmaxy()/2,getmaxx()/2+(tool*cos((f*(j-1)))),getmaxy()/2+(tool*sin((f*(j-1)))) );
/////////////////rasm sanie
setcolor(12);
line(getmaxx()/2,getmaxy()/2,getmaxx()/2+(tool*cos((f*(i)))),getmaxy()/2+(tool*sin((f*(i)))));
setcolor(0);
line(getmaxx()/2,getmaxy()/2,getmaxx()/2+(tool*cos((f*(i-1)))),getmaxy()/2+(tool*sin((f*(i-1)))) );
///////////////////////////rasm dayereye markazi
setfillstyle(1,1);
fillellipse(getmaxx()/2,getmaxy()/2,5,5);///////
delay(1000);
///////////////////////////////taeen khorooj
if(kbhit())
{
ascii=getch();
if(ascii==120)
{
i=45;
j=45;
}
}////////////////////////////////////////////
g=0;
}
}
}
getch();
closegraph();
return 0;
}
کلید واژه ها: