Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.11.2010, 11:28   #1
Molotok
Пользователь
 
Аватар для Molotok
 
Регистрация: 20.09.2008
Сообщений: 22
Стрелка График в Си

Ребят, помогите построить график в Си.

Есть программа, но она строит как-то криво:
Код:
#include <graphics.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
#define PATHTODRIVER "c:\\tc\\bgi\\"
float f1(float t)
{
return(3.1e-7*t);
}
void grafik()
{
float t1=2.609e+9,
      t2=5.172e+9;
float y1,y2;
float t;
float y;
float dt=1e+5;
int l=50,
    b=400,
    w=300,
    h=200;
    int x, z;
    int x0=50, z0=400, dx=60, dz=60;
float mt,my;
int t0,y0;
float dlx=0.5, dlz=0.1;
float lx=2.5, lz=0;
char st[25];
char st2[5]={"f GHz"};
outtextxy((l+w)/2,b+30,st2);
char st3[8]={"x(f)"};
outtextxy(10,b-h-50,st3);
y1=f1(t1);
 y2=f1(t2);
t=t1+dt;
do {
    y=f1(t);
    if (y<y1)  y1=y;
    if (y>y2) y2=y;
    t+=dt;
    }  while (t<=t2);
my=h/fabs(y2-y1);
mt=w/fabs(t2-t1);
t0=l;
y0=b-abs(y1*my);
line(t0,b,t0,b-40-h);
line(t0,b,t0+w+5,b);
x=t0; z0=b;
do {
line(x,b-3,x,b+3);
sprintf(st,"%2.1f",lx);
outtextxy(x,b+5,st);
lx+=dlx;
x+=dx;
} while(x<=x0+w);
z=z0;
do {
line(x0-3,z,x0+3,z);
sprintf(st,"%3.1f",lz);
outtextxy(l-45,z,st);
lz+=dlz;
z=z-dz;
} while(z>=b-h);
z=z0+50;

t=t1;
do {
    y=f1(t);
    putpixel(t0-w+t*mt,y0-y*my,15);
    t+=dt;
    }  while (t<=t2);
}
void main(void)
{
int gdriver=DETECT;
int gmode;
int errorcode;
initgraph(&gdriver,&gmode, PATHTODRIVER);
errorcode=graphresult();
if(errorcode==grOk)
{
   grafik();
   getchar();
   closegraph();
}
   getch();
   }
Есть зависимость от частоты 3,1^-7*f, нужно построить график в пределах f[1*10^7 - 8.3*10^9].
Molotok вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
график ddeman666 Помощь студентам 0 30.05.2010 17:43
график Inkognito99 Помощь студентам 1 26.05.2010 21:54
график makc101 Помощь студентам 3 18.12.2009 03:55
График! NIKEtos Microsoft Office Excel 3 04.11.2009 13:49