Вернуться   CoderX :: Forums > Основные форумы > Программинг
Войти через OpenID

Программинг Форум для тем связанных с программированием

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 16.01.2010, 17:25   #11
Местный
 
Регистрация: 08.05.2008
Сообщений: 107
Сказал Спасибо: 6
Имеет 12 спасибок в 6 сообщенях
finomen пока неопределено
По умолчанию

а ты уверен что тебе оно надо? может можно и без такой демонической таблицы....
finomen вне форума   Ответить с цитированием
Старый 16.01.2010, 18:04   #12
Местный
 
Аватар для peacefully
 
Регистрация: 21.10.2009
Сообщений: 690
Сказал Спасибо: 125
Имеет 180 спасибок в 68 сообщенях
peacefully пока неопределено
По умолчанию

Хочу АЦЦКОЕ ГИГАБИТНОЕ ТАБЛИЧКО!!!1раз
peacefully вне форума   Ответить с цитированием
Старый 16.01.2010, 18:59   #13
Местный
 
Регистрация: 08.05.2008
Сообщений: 107
Сказал Спасибо: 6
Имеет 12 спасибок в 6 сообщенях
finomen пока неопределено
По умолчанию

я понимаю, что встречаются задачи по обработке и терабайтных матриц....но это очень специфические задачи и решаются они не на PC...
finomen вне форума   Ответить с цитированием
Старый 17.01.2010, 14:24   #14
Местный
 
Аватар для peacefully
 
Регистрация: 21.10.2009
Сообщений: 690
Сказал Спасибо: 125
Имеет 180 спасибок в 68 сообщенях
peacefully пока неопределено
По умолчанию

На самом деле задача сначала сгенерить табличко максимально-какого-получится-размера, а потом просчитать ее.

Добавлено через 5 часов 47 минут
Код:
const N = 65534;
var A: array[0..N,0..N] of Boolean;
Если N на единицу больше - Data type too large: exceeds 2 GB

Delphi 7.

Печаль(

Последний раз редактировалось peacefully, 17.01.2010 в 14:24. Причина: Добавлено сообщение
peacefully вне форума   Ответить с цитированием
Старый 17.01.2010, 17:05   #15
Местный
 
Регистрация: 08.05.2008
Сообщений: 107
Сказал Спасибо: 6
Имеет 12 спасибок в 6 сообщенях
finomen пока неопределено
По умолчанию

думаю 64 битная система позволит сожрать побольше памяти. но не 200Гб.
finomen вне форума   Ответить с цитированием
Старый 17.01.2010, 17:44   #16
Admin!
 
Аватар для xkor
 
Регистрация: 04.08.2007
Сообщений: 2,360
Сказал Спасибо: 113
Имеет 1,566 спасибок в 651 сообщенях
xkor на пути к лучшему
По умолчанию

peacefully, на 32битной системе массив не может быть размером больше 2 гигабайт так как индекс имеет тип Integer для которого максимальное значение - 2 гигабайта

finomen, дельфи пока не поддерживает 64бита, но в теории там размер массива может быть более 7 эксабайт (ну или более 8 000 000 терабайт)
__________________
Я здесь практически не появляюсь!, Skype - ikskor
xkor вне форума   Ответить с цитированием
За это сообщение xkor нажился спасибкой от:
Старый 17.01.2010, 18:26   #17
Местный
 
Аватар для peacefully
 
Регистрация: 21.10.2009
Сообщений: 690
Сказал Спасибо: 125
Имеет 180 спасибок в 68 сообщенях
peacefully пока неопределено
По умолчанию

Еще более печально то, что табличко кусками необрабатываемоабельная.. ЖЖЖАЛЬ!

Добавлено через 7 минут
Цитата:
Сообщение от xkor Посмотреть сообщение
peacefully, на 32битной системе массив не может быть размером больше 2 гигабайт так как индекс имеет тип Integer для которого максимальное значение - 2 гигабайта
Точно. Не подумал об этом..

Таблица симметрична относительно диагонали.. матрица такая. А если замутить структуру типа массива 1-мерных массивов для верхне-/нижнедиагональной матрицы..
Код:
A[0]: 0 1 0 0 1 ...
A[1]: 0 1 1 1 ...
A[2]: 0 0 1 ...
A[3]: 1 1 ...
A[4]: 0 ...

Последний раз редактировалось peacefully, 17.01.2010 в 18:26. Причина: Добавлено сообщение
peacefully вне форума   Ответить с цитированием
Старый 17.01.2010, 18:30   #18
Местный
 
Регистрация: 08.05.2008
Сообщений: 107
Сказал Спасибо: 6
Имеет 12 спасибок в 6 сообщенях
finomen пока неопределено
По умолчанию

мути. тогда сможешь в раза больше сделать)
finomen вне форума   Ответить с цитированием
Старый 17.01.2010, 20:39   #19
Рыцарь
 
Аватар для alexteam
 
Регистрация: 07.03.2009
Сообщений: 9,139
Сказал Спасибо: 70
Имеет 2,820 спасибок в 1,735 сообщенях
alexteam на пути к лучшему
По умолчанию

пихай все в файлстрим. и представляй его в виде матрицы.
написано от балды:
где-то обявление и открытие fs : tfilestream;
delphi Код:
Function GetCellValue(x,y:integer):boolean; begin   fs.position := round(x*sqrt(fs.size)+y);   fs.read(result,1); end; Procedure SetGetCellValue(x,y:integer; value:boolean); begin   fs.position := round(x*sqrt(fs.size)+y);   fs.write(value,1); end;
__________________
L2Ext - project closed.
alexteam вне форума   Ответить с цитированием
За это сообщение alexteam нажился спасибкой от:
Старый 20.01.2010, 11:34   #20
Местный
 
Регистрация: 11.03.2008
Сообщений: 529
Сказал Спасибо: 10
Имеет 111 спасибок в 71 сообщенях
Xa4ik пока неопределено
По умолчанию

делфа она нубская.
тип булеан реально занимает 1 байт по умолчанию. физически можно впихнуть 8 булеанов в 1 байт.
если компилятор некушает масив[65к х 65к] чей сумарный индес выходит за 2^32, в сях прокатывает масив[][] тоесть масив масивов.
если матрица симетрическая, то при таких размерах ее нужно хранить в десятке линейных масивов, без излишеств в хранимой структуре.
Xa4ik вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Основные форумы > Программинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 16:43.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!