Страница 2 из 3

Re: записи с вариантами и вложенные записи, нужна помощь.

Добавлено: 08 июн 2009, 22:57
ronayt
Naeel Maqsudov писал(а):Потому, что "множеству" тут не место. Тут может быть только диапазон или значение или список из значений и диапазонов.
а как диапазон вставить? ) я пока не прошареный )))хоть пока и не нужно но интересно))на будущее пригодится )

.

Добавлено: 09 июн 2009, 09:26
BBB
ronayt писал(а):а как диапазон вставить? ) я пока не прошареный )))хоть пока и не нужно но интересно))на будущее пригодится )
А прочитать написанное выше? Могём или не могём? (c)

Re: .

Добавлено: 09 июн 2009, 10:37
ronayt
BBB писал(а):А прочитать написанное выше? Могём или не могём? (c)
та я уже пробывал как увидел...выдаёт сразу 3 ошибки: (буду выделять место курсора)
2..19,20|: ATracks: array[1..19] of Track;
end;
[Error] Project2.dpr(9): ':' expected but '..' found

2..19,20: ATracks:| array[1..19] of Track;
end;
[Error] Project2.dpr(9): '=' expected but ':' found

2..19,20: ATracks: array[1..19] of Track;
end;|
[Error] Project2.dpr(10): '.' expected but ';' found

Re: записи с вариантами и вложенные записи, нужна помощь.

Добавлено: 09 июн 2009, 11:23
Naeel Maqsudov
Дайте пожалуйста из секции Type полное описание этого типа и связанных с ним типов. А также укажите какой используется компилятор.

Re: записи с вариантами и вложенные записи, нужна помощь.

Добавлено: 09 июн 2009, 11:37
ronayt

Код: Выделить всё

type
  Track = record
    Name: string[50];
    Hours: 0..3;
    Minutes: 0..59;
    Seconds: 0..59;
end;
  CD = record
    Author: string[20];
    Title: string[50];
    Year: integer;
    Kind: string[10];
    case Tracks: byte of
      1: (Trackl: Track);
      [2..20]: (ATracks: array[1..20] of Track);
end;
Borland Delphi 7

Re: записи с вариантами и вложенные записи, нужна помощь.

Добавлено: 09 июн 2009, 11:58
Naeel Maqsudov
Придется написать так

Код: Выделить всё

  Track = record
    Name: string[50];
    Hours: 0..3;
    Minutes: 0..59;
    Seconds: 0..59;
  end;
  CD = record
    Author: string[20];
    Title: string[50];
    Year: integer;
    Kind: string[10];
    case Tracks: byte of
      1: (Trackl: Track);
      2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,
      18,19,20: (ATracks: array[1..20] of Track);
  end;

Re: записи с вариантами и вложенные записи, нужна помощь.

Добавлено: 09 июн 2009, 12:21
ronayt
да уж, если надо 100 чисел то придеться всех их писать...
ну спасибо, не буду больше себе морочить голову и пытаться что от сделать )))
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
о, сор за вопрос не по теме, но какого есть отличия в компиляторе между турбо паксалем и делфи? )
книжка то по турбо... но мне облом было пользоваться той средой, удобнее в делфи ))) но в турбо множество почему то работает )

Re: записи с вариантами и вложенные записи, нужна помощь.

Добавлено: 09 июн 2009, 13:40
Naeel Maqsudov
В турбо-паскале? Вот именно в этом самом месте? Множества? Такого никогда не было и не будет. В крайнем случае диапазоны, да и то они тут не особо актуальны.

У множеств совсем другое назначение. Да и на низком уровне они представлены обычно как битовые маски, чтобы облегчить выполнение таких операций как объединение или пересечение.

Re: записи с вариантами и вложенные записи, нужна помощь.

Добавлено: 09 июн 2009, 14:08
ronayt
Naeel Maqsudov писал(а):В турбо-паскале? Вот именно в этом самом месте? Множества? Такого никогда не было и не будет. В крайнем случае диапазоны, да и то они тут не особо актуальны.

У множеств совсем другое назначение. Да и на низком уровне они представлены обычно как битовые маски, чтобы облегчить выполнение таких операций как объединение или пересечение.
да! сначала написал просто обьявления записи никаких ошибок не выдало, почему и написал что можно...потом когда Вы написали что этого не возможно написал там весь код и всё заработало! )
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
Но то, что нельзя этого делать в дельфи меня это огорчает ((
придеться на паскале книжку всетаки проходить )

Re: записи с вариантами и вложенные записи, нужна помощь.

Добавлено: 09 июн 2009, 15:18
BBB
А почему вот так не написать? (Собственно, Naeel Maqsudov так давно уже предлагал)

Код: Выделить всё

Track = record
    Name: string[50];
    Hours: 0..3;
    Minutes: 0..59;
    Seconds: 0..59;
  end;
  CD = record
    Author: string[20];
    Title: string[50];
    Year: integer;
    Kind: string[10];
    case byte of
      1: (Trackl: Track);
      2: (ATracks: array[1..20] of Track);
  end;
Какой смысл перечислять все 20 штук значений?