Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.04.2017, 21:43   #1
wolf777
Пользователь
 
Регистрация: 06.11.2011
Сообщений: 27
По умолчанию ошибка Undeclared identifier: 'minT'

использую процедуру minT
Код:
procedure minT(masID: array of real;szmID:integer;var min: real);
  var
   i: integer;
   m: real ;
   begin
     m:= masID[1];
     for i := 2 to szmID-1 do
    if masID[i] < m then
      m := masID[i];
      min:=m;
  end;
ниже прописал функцию распределения

Код:
procedure funcRaspr();   // формирование массива  функции распределения
     var
          i,j,k,n:integer;
        tekZn,intN,intK: real;
         KolInt: integer;
        mo,disp,maxID,minID,Lo,Ko,minT,maxT: real;
 begin
   if RedTxt then     // если masID редактировался
    begin
     for i:=1 to szmID-1 do
     begin
       masID[i]:=StrToFloat(FrmProizvIS.StrGridID.Cells[i,1]);  //восстановление отредактированного masID
     end;
        RedTxt:=false;
     end;
         KolInt:=StrToInt(FrmProizvIS.EditKolInt.Text);
         FrmProizvIS.minT(masID,szmID,minID); // ТУТ ОШИБКА!!!!!!!!
         maxT(masID,szmID,maxID);
         TintFr:=round((maxID-minID)/KolInt)+1;
         FrmProizvIS.EditTint.Text:=IntToStr(TintFr);
      szmFR:=KolInt;
         SetLength(masFR,szmFR);
      for i:=0 to szmFR-1 do
        begin
        intN:=(i)*TintFr;
        intK:=(i+1)*TintFr;
           k:=0;
         for j:=0 to szmID-1 do
            begin
            tekZn:=masID[j];
          if (intN < tekZn) And (tekZn <= intK) then
               k:=k+1;
            end;
         masFR[i]:=k;
        end;
       n:=FrmProizvIS.StrGridFR.ColCount;
FrmProizvIS.LabelR.Caption:='Распределение по интервалам Tint= '+IntToStr(TintFr)+' сек';
         for i:=0 to n-1  do
           begin
             FrmProizvIS.StrGridFR.Cells[i+1,0]:=IntToStr(i);
             FrmProizvIS.StrGridFR.Cells[i+1,1]:=FloatToStr(masFR[i]);
           end;
           mo:=StrToFloat(FrmProizvIS.EditMo.Text);
           disp:=StrToFloat(FrmProizvIS.EditDisp.Text);
           Lo:=StrToFloat(FrmProizvIS.EditLO.Text);
           Ko:=StrToFloat(FrmProizvIS.EditKO.Text);
       //FrmProizvIS.EditMo.Text:=FloatToStr(mo);
       //FrmProizvIS.EditDisp.Text:=FloatToStr(disp);
       //FrmProizvIS.EditLO.Text:=FloatToStr(Lo);
       //FrmProizvIS.EditKO.Text:=FloatToStr(Ko);
     Lo:=mo/disp;
     Ko:=Lo*mo;
     FrmProizvIS.StsMasID(masID,szmID,mo,disp);
     end;
суть проблемы в том, что ошибка выходит тут FrmProizvIS.minT(masID,szmID,minID) ;

ошибка такая: Undeclared identifier: 'minT'
_______________
как её исправить?

Последний раз редактировалось Аватар; 08.04.2017 в 21:54.
wolf777 вне форума Ответить с цитированием
Старый 08.04.2017, 21:53   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

А зачем при обращении FrmProizvIS перед ней, если она не объявлена методом формы? И код не надо цитировать, для него другой тег, см. кнопку #
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 08.04.2017 в 21:55.
Аватар вне форума Ответить с цитированием
Старый 08.04.2017, 21:56   #3
wolf777
Пользователь
 
Регистрация: 06.11.2011
Сообщений: 27
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А зачем при обращении FrmProizvIS перед ней, если она не объявлена методом формы?
я навичок в дельфик, объявил в var

Цитата:
var
FrmProizvIS: TFrmProizvIS;
для того чтобы потом в другой модуль передавать переменные

Цитата:
szmID:=StrToInt(FrmProizvIS.EditKD. Text);
или это считается ошибкой тоже?
wolf777 вне форума Ответить с цитированием
Старый 08.04.2017, 21:59   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Смотри что компилятор скажет. А по обрывкам кода трудно что-то сказать ))
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 08.04.2017, 22:00   #5
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

потому что ваш объект FrmProizvIS ничего не знает про minT
Код:
FrmProizvIS.minT(masID,szmID,minID) ; // ТУТ ОШИБКА!!!!!!!!
программа — запись алгоритма на языке понятном транслятору
evg_m на форуме Ответить с цитированием
Старый 08.04.2017, 22:05   #6
wolf777
Пользователь
 
Регистрация: 06.11.2011
Сообщений: 27
По умолчанию

evg_m а как сделать чтоб узнал?
wolf777 вне форума Ответить с цитированием
Старый 08.04.2017, 22:15   #7
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

а зачем, просто удали то то зачеркнуто и всё.
программа — запись алгоритма на языке понятном транслятору
evg_m на форуме Ответить с цитированием
Старый 09.04.2017, 01:15   #8
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,859
По умолчанию

2 wolf777
А нафига вы эту функцию перенесли из модуля ProcUnit в модуль FrmProizvIS?

Цитата:
Сообщение от evg_m Посмотреть сообщение
потому что ваш объект FrmProizvIS ничего не знает про minT
У ТС FrmProizvIS это имя модуля в котором описан класс формы TFrmProizvIS. Чуешь засаду?
И это не исключение. Это правило, которому следуют все модули с формами.
northener вне форума Ответить с цитированием
Старый 09.04.2017, 14:51   #9
wolf777
Пользователь
 
Регистрация: 06.11.2011
Сообщений: 27
По умолчанию

Цитата:
А нафига вы эту функцию перенесли из модуля ProcUnit в модуль FrmProizvIS?
всем спасибо с задачей справился, а перенес ProcUnit из модуля потому что, в ProcUnit у меня функции и процедуры хранятся, так удобнее, чтоб каши небыло
wolf777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка Undeclared identifier: 'Caption' wolf777 Общие вопросы Delphi 4 03.04.2017 02:38
ошибка undeclared identifier getline delphi mishammm Помощь студентам 12 27.09.2014 18:24
Ошибка undeclared identifier FieldByName Anariem Общие вопросы Delphi 1 12.05.2013 16:02
Ошибка Undeclared identifier: 'Locate' Valeria15 БД в Delphi 7 22.08.2011 13:21
Ошибка Undeclared Identifier 'edit1'. kote404 Помощь студентам 1 19.05.2011 23:00