Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
 Аватар для Серега19
4 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 38

Перевод Delphi на С++

13.05.2012, 18:58. Показов 906. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Есть код, который написан на делфи. Прошу помощи в переводе его на С++, поскольку с языком программирования делфи не знаком.
Delphi
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
procedure TForm2.Button4Click(Sender: TObject);
  var
C0,PZ1,PZ2,PZ3,Gmax:real;
i,k,j,l:integer;
Cnach,C,P,Nnach,N,G,Pnach:array[1..3] of real;
Cc,P0:array[1..10000] of real;
begin
If (Edit1.Text = '') or (Edit2.Text = '') or
   (Edit3.Text = '') or (Edit4.Text = '') or
   (Edit5.Text = '') or (Edit6.Text = '') or
   (Edit7.Text = '') Then Exit;
C0:=StrToFloat(Edit1.Text);
Cnach[1]:=StrToFloat(Edit2.Text);
Cnach[2]:=StrToFloat(Edit3.Text);
Cnach[3]:=StrToFloat(Edit4.Text);
Pnach[1]:=StrToFloat(Edit5.Text);
Pnach[2]:=StrToFloat(Edit6.Text);
Pnach[3]:=StrToFloat(Edit7.Text);
Edit16.Text:=FloatToStr(C0);
Nnach[1]:=1;
Nnach[2]:=1;
Nnach[3]:=1;
C[1]:=Cnach[1];
C[2]:=Cnach[2];
C[3]:=Cnach[3];
N[1]:=Nnach[1];
N[2]:=Nnach[2];
N[3]:=Nnach[3];
P[1]:=Pnach[1];
P[2]:=Pnach[2];
P[3]:=Pnach[3];
l:=1;
Cc[l]:=C[1]+C[2]+C[3];
P0[l]:=P[1]*P[2]*P[3];
While cc[l]<C0 do
 begin
 l:=l+1;
 Cc[l]:=C[1]+C[2]+C[3];
P0[l]:=P[1]*P[2]*P[3];
PZ1:=(1-(1-P[1])*(1-Pnach[1]))*P[2]*P[3];
PZ2:=P[1]*(1-(1-P[2])*(1-Pnach[2]))*P[3];
PZ3:=P[1]*P[2]*(1-(1-P[3])*(1-Pnach[3]));
G[1]:=(Pz1-P0[l])/(P0[l]*Cnach[1]);
G[2]:=(Pz2-P0[l])/(P0[l]*Cnach[2]);
G[3]:=(Pz3-P0[l])/(P0[l]*Cnach[3]);
Gmax:=0;
For i:=1 to 3 do
if G[i]>Gmax then
  begin
Gmax:=G[i];
k:=i;
n[K]:=N[k];
  end;
case k of
1: begin P0[l]:=pz1;p[1]:=(1-(1-P[1])*(1-Pnach[1])) ;
c[1]:=C[1]+Cnach[1];N[1]:=N[1]+Nnach[1]; end;
2: begin P0[l]:=pz2;p[2]:=(1-(1-P[2])*(1-Pnach[2])) ;
c[2]:=C[2]+Cnach[2];N[2]:=N[2]+Nnach[2]; end;
3: begin P0[l]:=pz3;P[3]:=(1-(1-P[3])*(1-Pnach[3]));
c[3]:=C[3]+Cnach[3];N[3]:=N[3]+Nnach[3];  end;
end;
Cc[l]:=c[1]+c[2]+c[3];
end;
if cc[l]>c0 then
Begin
P0[l]:=P0[l-1];
Cc[l]:=Cc[l-1];
N[k]:=N[k]-1;
Edit15.Text:=FloatToStr(p0[l]);
Edit8.Text:=FloatToStr(N[1]);
Edit9.Text:=FloatToStr(N[2]);
Edit10.Text:=FloatToStr(N[3]);
Edit14.Text:=FloatToStr(Cc[l]);
IF c[1]=C[k] then
Edit11.Text:=FloatToStr(C[1]-Cnach[1])
else
Edit11.Text:=FloatToStr(C[1]);
if c[2]=C[k] then
Edit12.Text:=FloatToStr(C[2]-Cnach[2])
else
Edit12.Text:=FloatToStr(C[2]);
if c[3]=C[k] then
Edit13.Text:=FloatToStr(C[3]-Cnach[3])
else
Edit13.Text:=FloatToStr(C[3]);
end;
   end;
Заранее, благодарю.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.05.2012, 18:58
Ответы с готовыми решениями:

Перевод из Delphi 7 в Delphi XE2
Вообщем Этот код на delphi 7 спокойно компилируется: Function ResolveIP(HostName: String): String; Type tAddr = Array Of...

Перевод с Delphi на С++
Всем привет. Ребята помогите перевести код проекта с delphi на с++. Вот проект

Перевод из Delphi
Ребята, подскажите, как-то можно перевести из Delphi такой код???? with Panel1 do begin Canvas.Rect() Width...

3
23 / 23 / 6
Регистрация: 16.10.2010
Сообщений: 211
15.05.2012, 12:44
Переводть все не вижу смысла, я вам покажу разницу. бегин энд заменяете на {}, типы посмотрете в хэлпе там есть соотвествие делфи и билдера типов. P0:array[1..10000] of real это просто массив от единицы до 10000. or на с++ || Остальное думаю и так понятно.

Добавлено через 3 минуты
Integer = Int
real = Float

Добавлено через 1 минуту
:= это оператор присвоения c++ --> =
в if оператор = это сравнение на с++ ->> ==
1
 Аватар для Серега19
4 / 0 / 0
Регистрация: 17.12.2010
Сообщений: 38
15.05.2012, 23:26  [ТС]
Leemurchonok, очень большое спасибо.
0
23 / 23 / 6
Регистрация: 16.10.2010
Сообщений: 211
16.05.2012, 14:23
А еще забыл case это на с++
C++
1
2
3
4
switch (переменная) of
{
case переменная числом: операторы break
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.05.2012, 14:23
Помогаю со студенческими работами здесь

Перевод из С в Delphi
Как это будет выглядить в Delphi? p=strstr(start,word); if(p=NULL)break then; cw++; start=p+len;

Перевод с Delphi на C++
Помогите, пожалуйста, перевести код на C++ Builder с Delphi. unit Unit1; interface uses Windows, Messages, SysUtils,...

Перевод из C++ в Delphi
Помогите перевести код из C++ в Delphi #include &lt;windows.h&gt; #include &lt;stdio.h&gt; #define N 101 int v,u, cross0; // 1 -...

Перевод из Delphi в C++
Есть код на Делфи помогите пожалуйста перевести его в С++Bulder. ...... const MapFName = 'D:\MIKHAILP\DOCUM\Projects\ISTC_robot ...

Перевод на delphi
Помогите пожалуйста переводит на delphi program zadacha3_10; var n:byte; Begin writeln('Введите номер поры года'); ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru