درود!
این جا مکانی است ویژه برای دانشجویان مهندسی کامپیوتر / آی تی و نرم افزار و صد البته افرادی که جویندگان دانش و تکنولوژی هستند.
آقایان دانوش ،یاشار و آمالی دارندگان این بلاگ بودند و هم اکنون تنها آقای دانوش مدیریت این وبلاگ را بر عهده دارد، با توجه به زمان بندی ها هم اکنون در این سایت فعالیت پویا ای نداریم.
سه شنبه 5 آذر 1392
23:21
یاشار عرفانیان
با سلام به شما دوست داران برنامه نویسی ؛ امروز کد برنامه ی جنبش مولکولی رو برای شما قرار داده ام ، که در این کد برای هر حرکت و تغییر جهت از یک حلقه ی for استفاده شده که این امر موجب تعدد حلقه ها شده است ، در پست های بعد روش کوتاه تری را قرار خواهم داد ؛ آیا شما روشی را برای کم کردن تعداد حلقه ها پیشنهاد می کنید؟
لطفا نظرات خودتان را برای ما با استفاده از بخش نظرات و یا از طریق پست الکترونیک ارسال کنید.
برای مشاهده ی کد به ادامه مطلب مراجعه فرمایید .

//in the name of GOD
//www.inftek.tk
//inftek.official@gmail.com
#include<iostream.h>
#include<graphics.h>
#include<conio.h>
#include<dos.h>
void main()
{
clrscr();


int x = 10 , y = 13 , r = 10;

int m=0 , n=0;
initgraph(&m,&n,"");
cout<<"\t\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t\t|";

setcolor(4);
for(int i = 1 ; i < 495 ; i++)
{
circle(x , y , r);
x++;
delay(8);
}

setcolor(15);
outtextxy(255,260,"---") ;

setcolor(14);
for(int j = 1 ; j < 240 ; j++)
{
circle(x , y , r);
x--;
y++;
delay(8);
}
setcolor(15);
outtextxy(125,111,"---");

setcolor(10);
for(int k = 1 ; k < 130 ; k++)
{
circle(x , y , r);
x--;
y--;
delay(8);
}

setcolor(9);
for(int q = 1 ; q < 110 ; q++)
{
circle(x , y , r);
x--;
y++;
delay(8);
}
setcolor(15);
outtextxy(18,339,"---");
setcolor(11);
for(int w= 1 ; w < 100 ; w++)
{
circle(x , y , r);
y++;
delay(8);
}

setcolor(2);
for(int e = 1 ; e < 600 ; e++)
{
circle(x , y , r);
x++;

delay(8);
}

setcolor(9);
for(int t = 1 ; t < 90 ; t++)
{
circle(x , y , r);
x--;
y++;
delay(8);
}
setcolor(15);
outtextxy(527,167,"---");

setcolor(12);
for(int u = 1 ; u < 240 ; u++)
{
circle(x , y , r);
y--;
delay(8);
}

setcolor(4);
for(int o = 1 ; o < 90 ; o++)
{
circle(x , y , r);
x++;
delay(8);
}
setcolor(15);
for(int p = 1 ; p < 170 ; p++)
{
circle(x , y , r);
x--;
y--;
delay(8);
}

setcolor(14);
for(int a = 1 ; a < 150 ; a++)
{
circle(x , y , r);
x-=3;
y++;
delay(8);
}

setcolor(15);
for(int s = 1 ; s < 130 ; s++)
{
circle(x , y , r);
x++;
y+=2;
delay(8);
}
setcolor(15);
outtextxy(425,256,"---");
outtextxy(444,260,"|");
outtextxy(444,270,"|");
outtextxy(430,240,"finish");
setcolor(9);
for(int d = 1 ; d < 150 ; d++)
{
circle(x , y , r);
x+=2;
y--;
delay(8);
}
getch();
}
دستورات outtextxy جهت نمایش یک متن در مختصاتی خاص و در واحد پیکسل می باشد.
همان طور که در پست های گذشته گفته شد ، دستور delay جهت فاصله ی کوتاه زمانی در بین هر بار چاپ شدن دایره ها می باشد.

لطفا سوالات خود را با ما مطرح کنید.




برچسب ها: جنبش مولکولی، حلقه، for،