[ Delphi / Pascal ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 6 May 2007.

Thread Status:
Not open for further replies.
  1. t04

    t04 Elder - Старейшина

    Joined:
    10 Jan 2007
    Messages:
    137
    Likes Received:
    40
    Reputations:
    8
    ты загоняешь. скорее всего у парнишки есть *.pas модуль, но он вне области видимости компилятора, то есть в разделе uses объявлен а в папке проекта его нету. Вот компилятор и ругается что не найден соответствующий *.dcu. Надо просто перетащить *.pas файл в папку с проектом (или в папку C:\Program Files\Borland\Delphi7\Projects\Bpl\) и нажать CTRL+F9, компилятор автоматически сгенерирует dcu из pas и линковщик подключит его к exe.
     
  2. Proger10

    Proger10 Member

    Joined:
    19 Dec 2008
    Messages:
    80
    Likes Received:
    7
    Reputations:
    0
    Люди, подскажите как в паскале сделать двумерный массив 1000*1000.
    Code:
    var
      m: array [1..1000, 1..1000] of byte;
    Проблема в том, что для размешения в памяти такого массива потредуется больше 64К, ну и паскаль ругается.. Помогите, плиз!
     
  3. RumShun

    RumShun Member

    Joined:
    27 Oct 2008
    Messages:
    283
    Likes Received:
    75
    Reputations:
    6
    как вариант используй динамические структуры, стек или список, их размер не ограничен фактически.
     
  4. Proger10

    Proger10 Member

    Joined:
    19 Dec 2008
    Messages:
    80
    Likes Received:
    7
    Reputations:
    0
    Пробывал вот так:
    Code:
    program Big_Mas;
    CONST N1= 1000; N2= 1000;
    
    type M1= array [1..N1 ] of REAL;
    M2= array[1..N2] of ^M1;
    var a1, a2: M2;
    i, j: word;
    BEGIN
    for i:=1 to N2 do 
    New(a1[i]);
    for i:=1 to N2 do 
    New(a2[i]);
    for j:= 1 to N1 do
    for i:= 1 to N2 do 
    begin
    a1[i]^[j]:= j + i*3;
    a2[i]^[j]:= j - i*5;
    end;
    for i:= 1 to N2 do 
    Dispose(a1[i]); 
    for i:= 1 to N2 do 
    Dispose(a2[i]);
    Readln;
    END.
    Вылетает ошибка 203: Heap overflow error! на девятой строке (for i:=1 to N2 do ), а если N1=10, N2=10. То всё норм!
     
  5. 0ldbi4

    0ldbi4 Elder - Старейшина

    Joined:
    14 Apr 2008
    Messages:
    264
    Likes Received:
    51
    Reputations:
    10
    2 t04, парень уже обращался с вопросом, у него сторонняя библиотека без проекта!
     
  6. 0ldbi4

    0ldbi4 Elder - Старейшина

    Joined:
    14 Apr 2008
    Messages:
    264
    Likes Received:
    51
    Reputations:
    10
    Proger10 а тип констант не пробывал указать? и зачем тебе 2 контстанты если матрица квадратная
     
  7. transserg

    transserg Elder - Старейшина

    Joined:
    2 Jul 2008
    Messages:
    147
    Likes Received:
    25
    Reputations:
    2
    в какой библиотеке находится компонет TChart?
     
  8. Proger10

    Proger10 Member

    Joined:
    19 Dec 2008
    Messages:
    80
    Likes Received:
    7
    Reputations:
    0
    Name: TChart
    Unit: Chart
    Package: dcltee8140
     
    1 person likes this.
  9. Proger10

    Proger10 Member

    Joined:
    19 Dec 2008
    Messages:
    80
    Likes Received:
    7
    Reputations:
    0
    Бесполезно! Пробовал. Дело в том что если значение уменьшаю то все норм!
     
  10. Markus_13

    Markus_13 Member

    Joined:
    19 Feb 2009
    Messages:
    74
    Likes Received:
    19
    Reputations:
    0
    Помоему такого свойства нет (точно не знаю), т.к. этот компонент забирает себе на время загрузки весь поток - чтобы не подвисать, можно кинуть на форму TIdAntiFreeze или запускать IdHttp в отдельных потоках - взависимости от задачи...

    З.Ы. насчет глючности хз - не замечал глюков - все пашет прекрасно =)
     
    1 person likes this.
  11. RumShun

    RumShun Member

    Joined:
    27 Oct 2008
    Messages:
    283
    Likes Received:
    75
    Reputations:
    6
    Proger10 если ты в паскале пишешь, то вполне вероятно что может памяти не хватать, я думал тебе на делфи надо. Я с такой проблемой не сталкивался и на паскале уже года 4 не писал, могу тебе две вещи посоветовать, либо в настройках поройся, либо промежуточные значения сохраняй в типизированный файл на диске.
     
  12. ZdezBilYa

    ZdezBilYa Elder - Старейшина

    Joined:
    29 Aug 2008
    Messages:
    198
    Likes Received:
    75
    Reputations:
    19
    Proger10, попробуй директиву $M

     
  13. 0ldbi4

    0ldbi4 Elder - Старейшина

    Joined:
    14 Apr 2008
    Messages:
    264
    Likes Received:
    51
    Reputations:
    10
    Здрасть, забыл какое событие stringrid'а возвращает выделенную ячейку??
     
  14. StealthMaster

    StealthMaster Member

    Joined:
    3 Dec 2008
    Messages:
    52
    Likes Received:
    11
    Reputations:
    0
    У StringGrid'a есть свойство Selection, там хранится информация о выделенном диапозоне: номера левого и правого столбцов, а также верхней и нижней строки.

    Если выделена 1 ячейка, то значения StringGrid1.Selection.Left и StringGrid1.Selection.Right совпадают.
    Аналогично с StringGrid1.Selection.Top и StringGrid1.Selection.Bottom.

    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    var
      i, j: integer;
    begin
      // с учетом того, что в Cells первый индекс закреплен за столбцом
      j := StringGrid1.Selection.Left;
      i := StringGrid1.Selection.Top;
      showmessage('Выделена ячейка [' + IntToStr(j)+ ',  ' + IntToStr(i) + 
                  '].  Ее значение: ' + StringGrid1.Cells[j, i]);
    end;
    
     
    #4854 StealthMaster, 2 Dec 2009
    Last edited: 2 Dec 2009
    1 person likes this.
  15. StealthMaster

    StealthMaster Member

    Joined:
    3 Dec 2008
    Messages:
    52
    Likes Received:
    11
    Reputations:
    0
    Вопрос по Delphi 7
    Есть абстрактный класс TCrypt и несколько его потомков TVigenereCrypt, TEnigmaCrypt и TAESCrypt.
    В каждом из потомков описаны внутренние методы. Можно ли каким-либо способом получить доступ к методам потомков (разумеется к тем, которые не являются реализацией абстрактных методов TCrypt), если переменная описана как
    Code:
    var
      Crypt: TCrypt
    и при этом используется контруктор одного из потомков класса TCrypt, например, TAESCrypt?
     
    #4855 StealthMaster, 2 Dec 2009
    Last edited: 2 Dec 2009
  16. >>serhio<<

    >>serhio<< New Member

    Joined:
    10 Feb 2009
    Messages:
    40
    Likes Received:
    0
    Reputations:
    0
    Можете глянуть две задачки на pascale ?
    1)Определить сумму элементов, массива целых чисел размерностью 15, элементов с 1 по 12 и с 8 по 15.И найти произведения этих сумм с использованием функций.
    2)Найти min элемент одномерного массива описав процедуры ввода элементов массива, процедура нахождения min элемента массива.
     
  17. t04

    t04 Elder - Старейшина

    Joined:
    10 Jan 2007
    Messages:
    137
    Likes Received:
    40
    Reputations:
    8
    1 задача - решил от делать нечего
    Code:
    
    function multiple(const a,b:Integer):Integer;
    begin
      result := a*b;
    end;
    
    var
      A:Array [1..15]of integer;
      i,sum1,sum2,mult:integer;
    begin
    
     // предполагается что массив уже заполнен
      Sum1 := 0;
      Sum2 := 0;
      for i := 1 to 12 do
        Inc(Sum1,a[i]);
      for i := 8 to 15 do
        Inc(Sum2,a[i]);
      mult := multiple(sum1,sum2);
      WriteLn(Mult);// Это твой ответ
    end;
    2 лень чё то стало писать, с такой задачей даже ребенок 3го класса справится, поднапряги мозги.
     
    #4857 t04, 2 Dec 2009
    Last edited: 2 Dec 2009
  18. SHAXID

    SHAXID Elder - Старейшина

    Joined:
    13 Dec 2007
    Messages:
    24
    Likes Received:
    17
    Reputations:
    -6
    -----
     
    #4858 SHAXID, 2 Dec 2009
    Last edited: 4 Dec 2009
  19. t04

    t04 Elder - Старейшина

    Joined:
    10 Jan 2007
    Messages:
    137
    Likes Received:
    40
    Reputations:
    8
    меню на VCL или на API?
    или надо вообще просто в консоли выбор делать?
     
  20. 0ldbi4

    0ldbi4 Elder - Старейшина

    Joined:
    14 Apr 2008
    Messages:
    264
    Likes Received:
    51
    Reputations:
    10
    2 t04 ты видел в API chаrt? или на консоли?)
    Извиняюсь за офтоп, не у кого нет исходничка по решению транспортной задачи методом фогеля?
     
Thread Status:
Not open for further replies.