|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.12.2008, 23:26 | #1 |
Пользователь
Регистрация: 30.11.2008
Сообщений: 32
|
Функция в VB
Написал функцию в С++, теперь надо VB, но что-то не получается, подскажите плиз, что не так и как должно быть правильно.
Вот код в С++: #include <iostream> #include <iomanip> #include <math.h> using namespace std; float func (float x , float a , float b , float c ); int func (float x, int a ,int b, int c); int main() { float Xn,Xk,dX,x,a,b,c; cout<<"Xn="; cin>>Xn; cout<<"Xk="; cin>>Xk; cout<<"dX="; cin>>dX; cout<<"a="; cin>>a; cout<<"b="; cin>>b; cout<<"c="; cin>>c; cout<<"___________"<<endl; cout<<""<<endl; for (x=Xn;x<Xk+dX/2;x+=dX) { cout<<"x="<<x<<"\t"; if ((((int)a & (int)b)|((int)b & (int)c))==0) func((float) x,(int) a,(int) b,(int) c); else func((float) x,(float) a,(float) b, (float)c); } return 0; } float func (float x, float a, float b, float c) { if (b!=0) cout<<"f="<<a*x*x+b*b*x<<setw(5)<<" \n"; else if (c>=0) cout<<"f="<<((x+a)/(x+c))<<setw(5)<<"\n"; else cout<<"f="<<(x/c)<<setw(5)<<"\n"; return 0; } int func (float x, int a, int b, int c) { if (b!=0) cout<<"f="<<a*x*x+b*b*x<<setw(5)<<" \n"; else if (c>=0) cout<<"f="<<((x+a)/(x+c))<<setw(5)<<"\n"; else cout<<"f="<<(x/c)<<setw(5)<<"\n"; return 0; } А вот, то, что я сделал в VB: Function F1(a As Single, b As Single, c As Single, x As Single) As Single If b! = 0 Then f = a * (x ^ 2) + (b ^ 2) * x ElseIf c >= 0 Then f = (x + a) / (x + c) Else f = x / c InputBox "f=", F1 End If End Function Function F2(a As Integer, b As Integer, c As Integer, x As Single) As Integer If b! = 0 Then f = a * (x ^ 2) + (b ^ 2) * x ElseIf c >= 0 Then f = (x + a) / (x + c) Else f = x / c InputBox "f=", F2 End If End Function Private Sub Command1_Click() Dim Xn As Single Dim Xk As Single Dim dX As Single Dim a As Single, b As Single, c As Single, x As Single, F1 As Single, F2 As Single a = Text1.Text b = Text2.Text c = Text3.Text Xn = Text4.Text Xk = Text5.Text dX = Text6.Text For x = Xn To Xk Step dX Print x If ((a = Int(a) And b = Int(b)) Or (b = Int(b) And c = Int(c))) = 0 Then f = F1 Else f = F2 Next End Sub |
25.12.2008, 23:29 | #2 |
Пользователь
Регистрация: 30.11.2008
Сообщений: 32
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Функция | asd48 | Помощь студентам | 2 | 21.12.2008 17:17 |
функция | sergei64_89 | Общие вопросы C/C++ | 2 | 25.05.2008 16:48 |
Функция... | Sota | Помощь студентам | 5 | 24.05.2008 22:19 |
Функция в c++ | JOFRIF | Помощь студентам | 1 | 08.05.2008 18:30 |
одна функция потока, а другая функция - член класса запускающего этот поток | Дмитрий_Ч | Общие вопросы C/C++ | 2 | 27.09.2007 08:50 |