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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.01.2015, 21:15   #1
wolchara
Пользователь
 
Регистрация: 10.01.2015
Сообщений: 30
По умолчанию Нужна помощь С++

Написать программу для построения графиков функции.

После нажатия на кнопку отображается парабола.
В области построения расположить координатные оси.
Пользователь задает максимальное и минимальное значения x и y, которые будут отображаться на экране.
wolchara вне форума Ответить с цитированием
Старый 11.01.2015, 14:05   #2
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,822
По умолчанию

Код:
#include<conio.h>
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<graphics.h>
char bgipath[]="D:\\program\\bc31\\bgi";
double fun(double x)
 {
  return x*x-3*x+4;   //Задаём параболу с клавиатуры
 }

void figure()
 {
 double xmin, xmax;
 printf("\n xmin=");
 scanf("%lf",&xmin);
 printf("xmax=");
 scanf("%lf",&xmax);
 int i,N=100;
 double dx=(xmax-xmin)/N;
 int wx,wy;
 double ymax=-1e10;
 double ymin=1e10;
 double x,y;
 for(i=0;i<=N;i++)
 {
 x=xmin+(i*dx);
 y=fun(x);
 if(y>ymax) ymax=y;
 if(y<ymin) ymin=y;
 }
 int gd=DETECT, gm;
 initgraph(&gd,&gm,bgipath);
 int left=10;
 int right=left+600;
 int top=10;
 int bot=top+450;
 setcolor(7);
 rectangle(left,top,right,bot);
 wx=left;
 wy=bot+(int)((fun(xmin)-ymin)/(ymax-ymin)*(top-bot)+0.5);
 moveto(wx,wy);
 setcolor(10);
 for(i=1;i<=N;i++)
 {
 x=xmin+(i*dx);
 y=fun(x);
 wx=left+(int)((x-xmin)/(xmax-xmin)*(right-left)+0.5);
 wy=bot+(int)((y-ymin)/(ymax-ymin)*(top-bot)+0.5);
 lineto(wx,wy);
 }
 getch();
 closegraph();
 }
 void main()
 {
 char choice=0;
 while(choice!=27)
 {
 clrscr();
 printf("выбрать:\n");
 printf("закончить работу...ESC\n");
 printf("нарисовать функцию...1\n");
 printf(">");
 choice =getche();
 switch(choice)
 {
 case '1':figure();break;
 }
 }
 }
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 11.01.2015, 14:34   #3
wolchara
Пользователь
 
Регистрация: 10.01.2015
Сообщений: 30
По умолчанию

Ещё раз спасибо
wolchara вне форума Ответить с цитированием
Старый 11.01.2015, 14:40   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Хе )
Представляю что автор скажет, если ему нужно было делать на каком нибудь С++.АБЦ
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.01.2015, 14:43   #5
wolchara
Пользователь
 
Регистрация: 10.01.2015
Сообщений: 30
По умолчанию

Здесь все отлично так как надо))
wolchara вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Очень нужна помощь c матрицами, макросами в Excel. Заранее благодарен(поверьте, очень-очень нужна помощь) Farridjan Помощь студентам 1 03.07.2009 12:24
Очень нужна помощь с написанием программы... срочно(буду благодарен за помощь) 5Paladin5 Помощь студентам 3 02.07.2009 09:12
Нужна помощь. Extez1 Помощь студентам 12 03.05.2009 18:07
НУЖНА ПОМОЩЬ. Mclaren Помощь студентам 1 02.05.2009 20:55