Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Программа. Нарисовать круглую спираль.






Задание№1

Нарисовать круглую спираль.

Программа

#include < stdio.h>

#include < stdlib.h>

#include < graphics.h>

#include < dos.h>

#include < conio.h>

#include < math.h>

#include < iostream.h>

 

void GO(int dist);

void TURN(float a);

void PEN_UP();

void PEN_DOWN();

 

int pen=1, i, x, y;

float angle, len;

 

void GO(int dist)

{

int newx, newy;

newx=x+int(dist*cos(angle));

newy=y-int(dist*sin(angle));

setfillstyle(1, WHITE);

if(pen==1)

lineto(newx, newy);

else

moveto(newx, newy);

x=newx;

y=newy;

}

 

void TURN(float a)

{

angle=angle+a*M_PI/180;

}

 

void PEN_UP()

{

pen=0;

}

 

void PEN_DOWN()

{

pen=1;

}

void main()

{

int gdriver=DETECT, gmode, errorcode;

initgraph (& gdriver, & gmode, " D: \\Borland\\BGI");

errorcode=graphresult();

if(errorcode! =grOk)

{

cout< < " ЋиЁЎЄ " < < grapherrormsg(errorcode);

getch();

exit;

}

cleardevice();

setcolor(WHITE);

x=320;

y=240;

angle=M_PI/2;

TURN(-50);

PEN_DOWN;

len=1;

for(i=1; i< =300; i++)

{

GO(int(len));

TURN(10);

len=len+0.1;

getch();

}

getch();

}

 

Задание№2

Нарисовать квадратную сприраль.

Программа

#include < stdio.h>

#include < stdlib.h>

#include < graphics.h>

#include < dos.h>

#include < conio.h>

#include < math.h>

#include < iostream.h>

 

void GO(int dist);

void TURN(float a);

void PEN_UP();

void PEN_DOWN();

 

int pen=1, i, x, y;

float angle, len;

 

void GO(int dist)

{

int newx, newy;

newx=x+int(dist*cos(angle));

newy=y-int(dist*sin(angle));

setfillstyle(1, WHITE);

if(pen==1)

lineto(newx, newy);

else

moveto(newx, newy);

x=newx;

y=newy;

}

 

void TURN(float a)

{

angle=angle+a*M_PI/180;

}

 

void PEN_UP()

{

pen=0;

}

 

void PEN_DOWN()

{

pen=1;

}

void main()

{

int gdriver=DETECT, gmode, errorcode;

initgraph (& gdriver, & gmode, " D: \\Borland\\BGI");

errorcode=graphresult();

if(errorcode! =grOk)

{

cout< < " ЋиЁЎЄ " < < grapherrormsg(errorcode);

getch();

exit;

}

cleardevice();

setcolor(WHITE);

x=320;

y=240;

angle=M_PI/2;

TURN(90);

PEN_DOWN;

len=1;

for(i=1; i< =300; i++)

{

GO(int(len));

TURN(90);

len=len+5;

getch();

}

getch();

}

Задание№3

Нарисовать звезду.

Программа

#include < stdio.h>

#include < iostream.h>

#include < string.h>

#include < stdlib.h>

#include < dos.h>

#include < graphics.h>

#include < fstream.h>

#include < conio.h>

#include < math.h>

#define ESC 27

#define UP 72

#define DOWN 80

#define RIGHT 77

#define LEFT 75

 

void GO(int dist);

void TURN(float a);

void PEN_UP();

void PEN_DOWN();

int pen=1, i, x, y, j;

float angle, len;

void GO(int dist)

{

int newx, newy;

newx=x+int(dist*cos(angle));

newy=y-int(dist*sin(angle));

setfillstyle(1, WHITE);

if(pen==1)

lineto(newx, newy);

else

moveto(newx, newy);

x=newx;

y=newy;

}

void TURN(float a)

{

angle=angle+a*M_PI/17;

}

void PEN_UP()

{

pen=0;

}

void PEN_DOWN()

{

pen=1;

}

void main()

{

int gdriver=DETECT, gmode, errorcode;

initgraph(& gdriver, & gmode, " D: \\Borland\\BGI");

errorcode=graphresult();

if(errorcode! =grOk)

{

cout< < " ЋиЁЎЄ " < < grapherrormsg(errorcode);

getch();

exit;

}

cleardevice();

setcolor(WHITE);

x=320;

y=240;

angle=M_PI/2;

TURN(-50);

PEN_DOWN;

len=1;

for(i=1; i< =100; i++)

{

for(j=1; j< 6; j++)

{GO(int(len));

TURN(150); }

len=len+5;

getch();

}

getch();

}

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.011 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал