Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 14.10.2016
Сообщений: 24
1

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

17.10.2016, 21:36. Показов 1143. Ответов 5
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <math.h>
#include <iostream.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
double a,b,h,y_min,y_max;
 
int n;
 
typedef double (*Tfun)(double);
 
Tfun f;
 
double fun0(double);
 
double fun1(double);
 
double fun2(double);
//---------------------------------------------------------------------------
 
 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Edit1->Text="-3,1416"; // a
 
Edit2->Text="3,1416"; // b
 
Edit3->Text="50"; // n
 
RadioGroup1->ItemIndex = 0;
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Chart1->Series[0]->Clear(); // Очистка графика
 
for(double x=a; x<=b; x+=h)
 
Chart1->Series[0]->AddXY(x,f(x));        
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
double x, r;
 
a=StrToFloat(Edit1->Text);
 
b=StrToFloat(Edit2->Text);
 
n=StrToInt(Edit3->Text);
 
h = (b-a)/n;
 
switch(RadioGroup1->ItemIndex) {
 
case 0: f = fun0; break;
 
case 1: f = fun1; break;
 
case 2: f = fun2; break;
 
}
 
y_min = y_max = f(a);
 
for (x = a+h; x<=b; x+=h) {
 
r = f(x);
 
if(y_min>r) y_min = r;
 
if(y_max<r) y_max = r;
 
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Chart1->CopyToClipboardMetafile(True);        
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
int xmax, ymax, xt, yt, y0, x0;
 
double hx,hy,x;
 
Image1->Canvas->Pen->Color=clBlack; // Установка цвета пера
 
// Поиск координат правого нижнего угла холста Image
 
xmax = Image1->Width; ymax = Image1->Height;
 
// Закрашивание холста Image текущей белой кистью
 
Image1->Canvas->Rectangle(0,0,xmax,ymax);
 
// Поиск середины холста
 
y0=ymax/2; x0=xmax/2;
 
// Вычерчивание координатных линий
 
Image1->Canvas->MoveTo(0,y0);
 
Image1->Canvas->LineTo(xmax,y0);
 
Image1->Canvas->MoveTo(x0,0);
 
Image1->Canvas->LineTo(x0,ymax);
 
Image1->Canvas->Pen->Color=clRed; // Установка цвета пера
 
Image1->Canvas->Pen->Width=2; // Установка ширины пера
 
// Поиск шагов по х и у с масштабированием
 
hx=(b-a)/xmax; hy=(y_max-y_min)/ymax;
 
Image1->Canvas->MoveTo(ceil(x0+a/hx),ceil(y0-f(a)/hy));
 
for(x=a; x<=b; x+=h)
 
Image1->Canvas->LineTo(ceil(x0+x/hx),ceil(y0-f(x)/hy));
}
//---------------------------------------------------------------------------
 double fun0(double r) {
 
return sin(r);
 
}
 
double fun1(double r) {
 
return r*r;
 
}
 
double fun2(double r) {
 
return r*r*r;
 
}
Вот эту формулу надо поставить.
А я не могу разобраться. А так програм работает. Сначала надо задать функции потом уже рисовать графики.
Миниатюры
Надо Поставить формулу. Но не могу понять, куда поставить  
Изображения
 
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.10.2016, 21:36
Ответы с готовыми решениями:

куда надо поставить галку!!!
я новичек мало понимаю.объясните кто может???

Подстройка размера картинки под разрешение экрана (как поставить картинку по середине, чтобы была, я не знаю уже((( подскажите пож куда что поставить
HTML-код: &lt;table id=&quot;headerTb&quot; width=&quot;100%&quot; border=&quot;0&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;&lt;tr&gt; ...

На форму обратной связи хочу поставить ReCaptcha v3, но не понял куда надо вводить второй код
Хочу поставить РеКапчу от Гугла 3 версии в форму обратной связи. Подскажите, где находится...

Не могу разобраться куда CBW поставить нужно и как убрать остаток
Вот уравнение (a^2/a+b) - (b^2/a^2+b) Пусть а=2 ,а b=4 Преподаватель сказал где CBW, а...

5
0 / 0 / 0
Регистрация: 14.10.2016
Сообщений: 24
17.10.2016, 21:43  [ТС] 2
Ах да вот сам проект. Выручите пж, В среду защита.
Вложения
Тип файла: rar Проект-grafik.rar (73.2 Кб, 6 просмотров)
0
случайный прохожий
1745 / 1101 / 376
Регистрация: 20.07.2013
Сообщений: 2,990
18.10.2016, 09:21 3
В чем сложность? В коде приведены примеры функций. Заменить одну на другую или добавить еще труда не составит при наличии понимания кода хотя бы на "начальном" уровне.
А если код не твой и его еще "защищать" придется - то даже готовый код не поможет, если сам не сделаешь / не поймешь.
1
20 / 20 / 8
Регистрация: 06.11.2013
Сообщений: 65
Записей в блоге: 1
18.10.2016, 09:47 4
Лучший ответ Сообщение было отмечено Bahytzhan9898 как решение

Решение

В проекте куча ошибок. В выражениях используются не инициализированные переменные, разделитель целой и дробной части вещественного числа зависит от настроек Виндоуз , ... Чистить весь мусор довольно утомительно. А в целом, проблема решается довольно просто.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Îïðåäåëÿåì íîâóþ ôóíêöèþ.
double MyFunc(double r) { return 2.*(cos(r)*cos(r) -1); }
 
// Íîìåð â ñïèñêå, ñîîòâåòñòâóþùèé íàøåé ôóêöèè.
#define MY_FUNC_ITEM 3
 
void __fastcall TForm1::RadioGroup1Click(TObject *Sender)
{
if( RadioGroup1->ItemIndex == MY_FUNC_ITEM )
{
Chart1->Series[0]->Clear(); // Î÷èñòêà ãðàôèêà
 
try {
a = StrToFloat(Edit1->Text);
b = StrToFloat(Edit2->Text);
n = StrToInt  (Edit3->Text);
 
h = (b-a)/n;
f = MyFunc;
 
for(double x=a; x<=b; x+=h) Chart1->Series[0]->AddXY(x,f(x));
    }
catch (...)
      {
        ShowMessage("INPUT ERROR");
      }
}
}//---------------------------------------------------------------------------
Миниатюры
Надо Поставить формулу. Но не могу понять, куда поставить  
1
20 / 20 / 8
Регистрация: 06.11.2013
Сообщений: 65
Записей в блоге: 1
18.10.2016, 09:58 5
...
Миниатюры
Надо Поставить формулу. Но не могу понять, куда поставить  
1
0 / 0 / 0
Регистрация: 14.10.2016
Сообщений: 24
18.10.2016, 14:27  [ТС] 6
Спасибо вам большое. Да это не мой код. Но яначинающий просто. Буду знать. Учить и стараться
0
18.10.2016, 14:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.10.2016, 14:27

Куда поставить ; ?
Не знаю как исправить ошибка error C2143: синтаксическая ошибка: отсутствие &quot;;&quot; перед &quot;int&quot; ...

Куда поставить кулер?
Система: Блок питания Cooler Master 520W Thunder M Видеокарта 2Gb GIGABYTE GV-N66TWF2-2GD с...

Куда поставить проверку Get-ом?
Ребят, помогите пожалуйста, есть два файла html, которые обращаются вот к этому php файлу-...

Куда поставить счетчик
uses crt; function nod( a, b: integer): integer; begin while (a &lt;&gt; 0) and (b &lt;&gt; 0) do ...

Куда поставить условие?
Реализовать замыкание следующим образом: необходимо, чтобы квадрат числа (которое при замыкании...

Куда поставить drawString?
Сделайте так, чтобы когда Вы написали кнопку &quot;Расставить буквы&quot; внизу окна выводился текст...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru