IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> множества
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 82
Пол: Женский

Репутация: -  0  +


var
cf: set of 100..107;
a: integer;
begin
cf:=[ ];
a:=12;
cf:=cf+[a];
writeln (' ',a in cf,' ', size of (cf));
end.

не пойму почему меняя значения в описании типа set и давая разные значения а на экран выводится то false 2, то false 1, то же с true
от чего это зависит??
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Цитата
от чего это зависит??
От значений, которые задаются граничными для множества... Все дело здесь - во внутреннем представлении множества: это набор битов, по одному на каждый допустимый элемент множества. То есть, если ты задашь
cf: set of 0 .. 7;
то для представления этого множества достаточно 8 бит (1 байт), если
cf: set of 0 .. 9;
, то понадобится уже 10 бит, а это 2 байта...

Теперь по поводу True/False... Всегда, когда значение A находится в интервале, разрешенном базовым диапазоном множества, результат будет True. Во всех остальных случаях - False...

Но твоя программа, например, и на диапазоне
cf: set of 100 .. 107;
выдает размер в 2 байта. Почему? Попробуй догадаться сама. Нужно немного подправить программу, чтобы результат всегда был ожидаемым и правильным... smile.gif

 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 21:20
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name