Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 06.01.2012
Сообщений: 5
1

Пожалуйста объясните, что не так??

06.01.2012, 16:30. Просмотров 591. Ответов 2
Метки нет (Все метки)


Есть код.
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
procedure TMain.N19Click(Sender: TObject);
  var
i,j: integer;
B_EL,KOOR_EL,Matrix_A: TMatrixData;
KOOR_ELM: TMatrix;
S_EL:real;
begin
SetLength(KOOR_EL,3,3);
for i:=1 to N_ELEMENT do
begin
 
  KOOR_EL[2,0]:=1;
  KOOR_EL[2,1]:=1;
  KOOR_EL[2,2]:=1;
  KOOR_EL[0,0]:=X[ELEM[i].ii];
  KOOR_EL[0,1]:=X[ELEM[i].jj];
  KOOR_EL[0,2]:=X[ELEM[i].kk];
  KOOR_EL[1,0]:=Y[ELEM[i].ii];
  KOOR_EL[1,1]:=Y[ELEM[i].jj];
  KOOR_EL[1,2]:=Y[ELEM[i].kk];
  KOOR_ELM:=TMatrix.Create(KOOR_EL);
 
  S_EL:=KOOR_ELM.Det;
  S_EL:=KOOR_EL[1,2];
 
  KOOR_ELM.Free;
end;
end;
Проблема в передачи значений из массива (KOOR_EL) определенного как TMatrix (он же array of array) в переменные (в данном случае S_EL), Если её задать как real, то ей будет присвоено значение 2.64е-308, в случает extendet, то получим е+3104.
*.det - функция, которая выдает значения Extended, Пошагово проверено, что она все считает и в конце получаем нужное значение, но аналогично оно не передается в переменную S_EL.

TMatrix и *.det Находятся в отдельном модуле, может ли это как то влиять?
Как вытащить значения из массива?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.01.2012, 16:30
Ответы с готовыми решениями:

объясните, что не так с delphi
скачал я дельфи седьмую и тут что называется пошло поехало. создав программу- таймер в первый день...

Объясните, что не так с кодом
procedure TForm1.Button1Click(Sender: TObject); const n=10; var b,c,d:double; a:integer;...

Объясните, что опять не так в модуле
unit procfun; interface uses opis; procedure vvod(n,m,i,j,l:integer;var ma:matr); ...

Объясните, пожалуйста, что происходит в исходном коде (полностью)
Объясните, пожалуйста, что происходит в исходном коде (полностью) . Условие и код: В заданном...

2
1299 / 705 / 107
Регистрация: 25.05.2011
Сообщений: 2,158
Записей в блоге: 51
06.01.2012, 16:44 2
описание классов/типов TMatrixData, TMatrix в студию!
1
0 / 0 / 0
Регистрация: 06.01.2012
Сообщений: 5
07.01.2012, 00:56  [ТС] 3
Спасибо за оперативность. Выкладываю:
Pascal
1
2
3
4
5
6
7
type
  TMatrixData = array of array of Extended;
 
  TMatrix = class
  protected
    FData: TMatrixData; // матрица
    FOrigin: Integer; // начальный индекс
Добавлено через 8 часов 8 минут
Тему можно закрывать. Проблема была в компиляторе, который игнорил неиспользуемую переменную. Всем спасибо.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.01.2012, 00:56

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Пожалуйста, объясните что не так)
Напишите программу, которая проверяет правильность скобочного выражения с четырьмя видами скобок:...

объясните, пожалуйста, что я делаю не так
Ошибка LNK2005 "bool __cdecl ForSortForBodyType(struct AutoCars &,struct AutoCars &)"...

Объясните пожалуйста,что я делаю не так
Есть 3 двумерных массива A, B, C. Количество строк и столбцов для них вводит пользователь с...

Объясните, пожалуйста, что я не так делаю с отладкой
Объясните, пожалуйста, мне что я делаю не так. Суть программы: создать массив сотрудников с...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.