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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.07.2009, 10:26   #1
Klusha
Новичок
Джуниор
 
Регистрация: 04.07.2009
Сообщений: 2
По умолчанию Графика в борланде С++

Программа должна выводить графики i,E,U (ток, эдс, напряжение)
Код:
#include <iostream.h>
#include <graphics.h>
#include <math.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <dos.h>

void InitGraph()
{
	int gdriver=DETECT, gmode, errorcode;
	initgraph (& gdriver, &gmode, "D:\\BORLANDC");
	errorcode=graphresult();
	if (errorcode!=grOk)
	{
		printf("Graphics error: %s\n", grapherrormsg(errorcode));
		printf("Press any key to halt:");
		getch();
		exit (1);
	}
}
void main ()
{
	float N, mt, mi, me, mu, k;
	float r, L, t, dt, i, U, E, pi, mor;
	clrscr();
	N=5;
	mt=500;
	mi=80;
	me=25;
	mu=25;
	mor=400;
	i=0;
      	U=0;
	t=0;
	dt=0.1;
        InitGraph ();
	printf ("\n Please,enter parametres of circuit r \n");
	scanf ("%f",&r);
	printf ("\n Please,enter parametres of circuit L \n");
	scanf ("%f",&L);
	for (k=0; k<N; k++)
	{
	    t=t+dt
            if (t>0.1)
	    {
		U=10;
		pi=(U-(r*i))/L;
		i=i+(pi*dt);
		E=L*pi;
	     }
	    putpixel (t*mt,mi*i*(-1)+mor,5);
	    putpixel (t*mt,mu*U*(-1)+mor,6);
	    putpixel (t*mt,me*E*(-1)+mor,7);
	}
	getch();
        closegraph();
}
Помогите, пожалуйста! Никогда не работала с графикой...
И в добавок почему-то в ходе цикла значения переменных не меняются, а начальные значения t и i не равны нулю....
Klusha вне форума Ответить с цитированием
Старый 04.07.2009, 13:26   #2
Klusha
Новичок
Джуниор
 
Регистрация: 04.07.2009
Сообщений: 2
По умолчанию

Ой... нет... все циклы работают проблемы с самом построением графиков...
Klusha вне форума Ответить с цитированием
Старый 04.07.2009, 14:14   #3
Impuls1989
Форумчанин
 
Аватар для Impuls1989
 
Регистрация: 16.08.2008
Сообщений: 276
По умолчанию

Вот пример построения синуса X:
Код:
double X,Y;      //   координаты  функции
int PX,PY; //   координаты  пикселей
 Color=clWhite;
 Canvas->MoveTo(0,ClientHeight % 2);
 for(PX=0; PX<ClientWidth; PX++)
{
   //X - аргумент графика, соответствующий пикселю с координатой РХ
   X = (double)(PX*4*Pi/ClientWidth);
   Y = (double)(Sin(X));
   //PY — координата пикселя, соответствующая координате Y
   PY = trunc(ClientHeight - (Y+1)*ClientHeight/2);
  //Проводится линия на  графике
   Canvas->LineTo(PX,PY);
  end;
Вот как-то так.
Искусственный интеллект - фигня по сравнению с естественной глупостью
Impuls1989 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача: сформировать массив простых множителей заданного числа в борланде на Си Akelas13 Помощь студентам 13 24.05.2009 18:11
Графика!!! kykysya Общие вопросы C/C++ 1 17.12.2008 20:18