Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
2 / 1 / 1
Регистрация: 07.04.2020
Сообщений: 22

Проект на Delphi не хочет компилироваться, не могу понять что не так?

08.06.2020, 22:40. Показов 2174. Ответов 25

Студворк — интернет-сервис помощи студентам
Введение

Добрый день, коллеги. Есть проект, во вложении. Хочу написать доступную программу для студентов для расчета внутренней баллистики РДТТ, пока без учета хим., процессов. Скоро защита проекта.

Имеется перечень неурядиц:

1. Проект не компилируется, не могу понять где тут допустил ошибок
2. Хочу некоторые функции выделить в отдельный модуль unit, чтобы в дальнейшем обращаться к функциям из этого же модуля из других программ, с целью упрощения обращения с кодом. Может кто подскажет, как это сделать без создания формы(скинуть ссылку, где почитать).

Заранее благодарен
Вложения
Тип файла: rar Диссер01.rar (1.09 Мб, 6 просмотров)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.06.2020, 22:40
Ответы с готовыми решениями:

Програма не хочет работать. не могу понять что не так (
В панели интерфейса предусмотреть возможность выбора одной из трех функций sin(x), x^2, exp(x) unit laba2; interface uses...

БД и Delphi не могу понять, кто может посмотрите и объясните что не так
Всем Добрый вечер. У меня такая проблема надо чтобы не вносилась фамилия в бд если она уже есть. Так вот я использую ниже превведенный...

SFML проект не хочет компилироваться
Все правильно настраивал, по инструкции. Пишет: Ошибка LNK2019 ссылка на неразрешенный внешний символ _main в функции "int __cdecl...

25
2 / 1 / 1
Регистрация: 07.04.2020
Сообщений: 22
09.06.2020, 11:35  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от mr-Crocodile Посмотреть сообщение
поправил ошибки, коих было over-дохрена.
не факт, что эта хрень вообще заработает. И я не завидую тому, кто это будет отлаживать ,
но, формально всё ок - проект компилируется!


Вложение 1156652
Можете пожалуйста описать, что это были за ошибки и на каких строчках, если несложно? Т.к. я новенький в этой сфере, хотелось бы понимать, с чем можно столкнуться
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
09.06.2020, 11:42
Цитата Сообщение от Ilda007 Посмотреть сообщение
Можете пожалуйста описать, что это были за ошибки и на каких строчках, если несложно? Т.к. я новенький в этой сфере, хотелось бы понимать, с чем можно столкнуться
Не трать зря время. Чтобы писать годные для хоть чего-то программы, необходимо долго учиться и написать ОЧЕНЬ МНОГО программ.

Другого пути НЕТ.
0
2 / 1 / 1
Регистрация: 07.04.2020
Сообщений: 22
09.06.2020, 12:02  [ТС]
Цитата Сообщение от Verevkin Посмотреть сообщение
Не трать зря время. Чтобы писать годные для хоть чего-то программы, необходимо долго учиться и написать ОЧЕНЬ МНОГО программ.

Другого пути НЕТ.
Вы поняли, что написали? Я учусь писать программы и эта программа учебная, это нормально встречать трудности на своём пути и их преодолевать.
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
09.06.2020, 12:11
Цитата Сообщение от Ilda007 Посмотреть сообщение
Вы поняли, что написали?
Конечно. Я 20 лет работаю программистом на военном заводе и всё ещё учусь.
Цитата Сообщение от Ilda007 Посмотреть сообщение
это нормально встречать трудности на своём пути и их преодолевать
Я разве утверждал, что это ненормально? Я имел в виду, что нельзя это делать так, как ты щас делаешь на этом форуме.
0
 Аватар для mr-Crocodile
3054 / 1673 / 657
Регистрация: 19.03.2019
Сообщений: 5,380
09.06.2020, 15:35
Лучший ответ Сообщение было отмечено Ilda007 как решение

Решение

Цитата Сообщение от Ilda007 Посмотреть сообщение
Можете пожалуйста описать, что это были за ошибки и на каких строчках, если несложно?
могу. только давай так. я тебе покажу, где я вносил изменения.
а ты попытаешься понять, что было неправильно. Если не сможешь - спросишь. Ок?


Pascal
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
Сравнение файлов org\Unit1.pas и Fixed\Unit1.pas
Строка 559
- Convers1(w_rg,n_rg);
+ Convers1(w_rg,p_rg);
Строка 659
- zi,si: array [1..30] of real;
+ zi,si: TArray_1;
Строка 717
- ac=fir*a5*a4                     // Значение коэффициента истечения при критическом режиме
+ ac:=fir*a5*a4                     // Значение коэффициента истечения при критическом режиме
Строка 722
- a2=Power(a1,(2.0/advs))-Power(a1,((advs+1.0)/advs));
+ a2:=Power(a1,(2.0/advs))-Power(a1,((advs+1.0)/advs));
Строка 742
- ri,di: array[1..3] of real;               //  Радиусы местоположения отверстий, диаметры отверстий в ВУ
+ ri,di: TArray_1;               //  Радиусы местоположения отверстий, диаметры отверстий в ВУ
Строка 752
- si,zi: array[1..30] of real;
+ si,zi: TArray_1;
Строка 781
- f2:=0.7854*ndi[2]*di(2)*di[2];
+ f2:=0.7854*ndi[2]*di[2]*di[2];
Строка 782
- f3:=0.7854*ndi(3)*di(3)*di(3);
+ f3:=0.7854*ndi[3]*di[3]*di[3];
Строка 884
- if(z1i[j,i+1]<z1i(j,i)) then z1i[j,i+1]:=z1i[j,i];  // Аргумент должен возрастать
+ if(z1i[j,i+1]<z1i[j,i]) then z1i[j,i+1]:=z1i[j,i];  // Аргумент должен возрастать
Строка 888
- a1=abs(z1i[j,i]-z1i[j,i+1]);
+ a1:=abs(z1i[j,i]-z1i[j,i+1]);
Строка 897
- zi[j]=z1i[j,i];
+ zi[j]:=z1i[j,i];
Строка 923
- emi[i]=emax       // Максимальный свод горения
+ emi[i]:=emax       // Максимальный свод горения
Строка 1001
- procedure TForm1.svosp_0(d1, d2, d3, d4, ws, emax: real; si, zi: array of real;  NomTabL: integer);
+ //procedure TForm1.svosp_0(d1, d2, d3, d4, ws, emax: real; si, zi: array of real;  NomTabL: integer);
Строка 1002
- 
+ procedure TForm1.svosp_0;
Строка 1419
- u:=pii(1,i)*Power((p/p0),pii(2,i));     // Cтепенная зависимость
+ u:=pii[1,i]*Power((p/p0),pii[2,i]);     // Cтепенная зависимость
Строка 1421
- u:=pii(1,i)+(p/p0)*pii(2,i);
+ u:=pii[1,i]+(p/p0)*pii[2,i];
Строка 1424
- if(p<=pii(5,i)) then                        // первая часть двухстепенной
+ if(p<=pii[5,i]) then                        // первая часть двухстепенной
Строка 1425
- u=pii(1,i)*Power((p/p0),pii(2,i))      // зависимости
+ u:=pii[1,i]*Power((p/p0),pii[2,i])      // зависимости
Строка 1427
- u=pii(3,i)*Power((p/p0),pii(2,i));     // зависимости
+ u:=pii[3,i]*Power((p/p0),pii[2,i]);     // зависимости
Строка 1432
- if(p<=pii(1,i)) then
+ if(p<=pii[1,i]) then
Строка 1433
- u:=ui(1,i);                               // значение скорости на левой границе таблицы
+ u:=ui[1,i];                               // значение скорости на левой границе таблицы
Строка 1435
- if(p>=pii(20,i)) then
+ if(p>=pii[20,i]) then
Строка 1436
- u:=ui(20,i);                            //значение скорости на правой границе таблицы
+ u:=ui[20,i];                            //значение скорости на правой границе таблицы
Строка 1441
- if (p>pii(k,i))and(p<pii(k+1,i)) then
+ if (p>pii[k,i])and(p<pii[k+1,i]) then
Строка 1444
- u:=ui(k1,i)+(ui(k2,i)-ui(k1,i))*(p-pii(k1,i))/(pii(k2,i)-pii(k1,i));
+ u:=ui[k1,i]+(ui[k2,i]-ui[k1,i])*(p-pii[k1,i])/(pii[k2,i]-pii[k1,i]);
Строка 1483
- if (Zvs(i)>0.99999) then
+ if (Zvs[i]>0.99999) then
Строка 1486
- Zvs[i]=1.0;
+ Zvs[i]:=1.0;
Строка 1487
- p_rg[i]=0;                             // Значения производной для относительного сгоревшего свода
+ p_rg[i]:=0;                             // Значения производной для относительного сгоревшего свода
Строка 1500
- if (Zvs(i)>0.99999) then
+ if (Zvs[i]>0.99999) then
Строка 1510
- a2:=u*a1/emi(i)
+ a2:=u*a1/emi[i]
Строка 1529
- mahvs=ac*sqrt(Pvs/(advs*Rovs));                   // Число Маха на выходе из корпуса воспламенителя
+ mahvs:=ac*sqrt(Pvs/(advs*Rovs));                   // Число Маха на выходе из корпуса воспламенителя
Строка 1545
- p_rg[nfr+3]=0.             // и энергии в корпусе воспламенителя
+ p_rg[nfr+3]:=0.             // и энергии в корпусе воспламенителя
Строка 1580
- a1:=(1.0-a(1))*srou-Gvs;        // Баланс массы в корпусе воспламенителя
+ a1:=(1.0-a[1])*srou-Gvs;        // Баланс массы в корпусе воспламенителя
Строка 1581
- a2:=(1.0-a(1))*se-Gvs*cpvs*Tvs;  // Баланс энергии в корпусе воспламенителя
+ a2:=(1.0-a[1])*se-Gvs*cpvs*Tvs;  // Баланс энергии в корпусе воспламенителя
Строка 1601
- i,imax,n_rg: real;
+ i,imax,n_rg: integer;
Строка 1603
- u_rg,p_rg: array [1..13] of real;        // производные от интегрируемых переменных
+ u_rg,p_rg: TArray_2;        // производные от интегрируемых переменных
Строка 1611
- tk=0.0;                                        //
+ tk:=0.0;                                        //
Строка 1632
- Zvs[i]=0;                   // каждой фракции навески
+ Zvs[i]:=0;                      // каждой фракции навески
-------------------------
Всего различий 38
ну и ещё. Ошибки, как ты догадываешься, по коду я искал не сам.
Открыл проект в Delphi, там же нажимал "скомпилировать" и смотрел, что мне показывал Delphi - где возникла ошибка и какая она. Потом правил ошибку и повторял попытку скомпилировать код.

больше всего ошибок у тебя - вместо присвоения := у тебя голый знак =
индексы массива указаны в круглых скобках (должны быть в квадратных)
и несовпадение типов данных.
1
2 / 1 / 1
Регистрация: 07.04.2020
Сообщений: 22
09.06.2020, 22:12  [ТС]
Спасибо большое. Из-за незнания иностранного языка я встал на первой ошибке, ты помог мне разобраться.
Вынес для себя небольшой вывод:
1. Тип данных, в подфункции не соответствовал типу данных в самой функции. Я переделал немного подфункцию и все встало на свои места.
2. Я не знал, что тип данных используемых в функции, а именно статический массив, нужно его определять самому как новый тип.

Ещё раз большое спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.06.2020, 22:12

Странная ошибка не могу понять что она хочет)
#include &quot;stdafx.h&quot; #include &lt;windows.h&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;cstdlib&gt; using namespace std; ...

Не могу понять что не так :(
Народ вот написал код но выдает ошибку И показывает после then (останавливается тут курсор) inc(s) var i,p,s,z : integer; ...

Не могу понять что не так
Помогите пожалуйста в чем там проблема?

Не могу понять, что не так
Не могу изменить вид приглашения через файл *.bat (необходимо вывести время) При вводе prompt $T$H$H$H$H$H$H программа не выводит ничего ...

не могу понять что не так(((((
привет всем! у меня проблемка возникла компиятор никак не проглатывает мой код #include &lt;iostream&gt; using namespace std; int...


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

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru