Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Aglaya
0 / 0 / 0
Регистрация: 18.06.2008
Сообщений: 13
#1

Работа с очень большой матрицей - C++

24.09.2008, 17:02. Просмотров 998. Ответов 4
Метки нет (Все метки)

Надо постоянно в программе обращаться к матрице большого размера с элементами double (приблизительно она весит 40Гб). Какие элементы С++ лчше для этого использовать. Принимаются все варианты (желательно не самые супер-сложные)

спасибо
http://www.cyberforum.ru/cpp-beginners/thread1388638.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.09.2008, 17:02
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Работа с очень большой матрицей (C++):

Головоломка с матрицей. Очень интересно!
Не в корысных целях(мне эта программа не нужна, просто интересно стало, как...

очень большой массив
Здравстуйте! Необходимо решить физическую задачку явной схемой, однако...

Очень большой перебор
Всем привет,я новичок,осваиваюсь на C++. В общем,имеется задача....

Очень большой геморрой с классами.
вот уже сегодня первый раз написал простенькую программу,мне понравилось,сразу...

Создать очень большой двумерный массив
всем привет)) нужна матрица очень большая #define M 8000 #define N 8000...

4
Vourhey
Почетный модератор
6490 / 2264 / 187
Регистрация: 29.07.2006
Сообщений: 12,534
24.09.2008, 17:15 #2
Ну, если реально 40Гб, то только с временными файлами. Выгружать, все равно, куда-то придется. Главное, чтобы винта хватило...

Никаких особенностей чисел нет в этой матрице? (может, они откуда берутся, считаются, по каким правилам, а то можно динамически высчитывать). Я думал, представить размер матрицы лучше с помощью ее границ, а не в гигабайтах. Может, приведете ее размерность.
0
qwone
9 / 9 / 2
Регистрация: 18.08.2008
Сообщений: 127
24.09.2008, 17:50 #3
Создается класс и при помощи него эмулируется большой массив . Разумеется прийдется информацию хранить на диске в нескольких файлах- данных . Ну и динамическую память надо подключить . Можно это легко реализовать на С++ .
Да и код не будет сложный . Надо просто знать ,что требуется , и заточить класс под задачу. Можно шаблоны подключить . но с шаблонами я пас.
0
Aglaya
0 / 0 / 0
Регистрация: 18.06.2008
Сообщений: 13
24.09.2008, 20:54  [ТС] #4
Спасибо)

Больше не буду приставать - приехал друг-"профи-программист" из командировки, обещал зайти на чай и рассказать как победить массив. Буду его доставать)

Напишу потом
0
Vourhey
Почетный модератор
6490 / 2264 / 187
Регистрация: 29.07.2006
Сообщений: 12,534
25.09.2008, 14:21 #5
Если нет правил формирования данных в матрице (т. е., элементы нельзя высчитать динамически), если у элементов нет никакой закономерности распределения, то в любом случае будешь данные на диске хранить. Есть книга "Жемчужины программирования", там автор весьма интересно справился с большим массивом на одном метре памяти. Можешь найти. Но, опять же, только, если есть еще что-то кроме данных.
0
25.09.2008, 14:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.09.2008, 14:21
Привет! Вот еще темы с решениями:

Как вычислить интеграл, если сама функция вычисляется с очень большой погрешностью? (ужасная точность)
Нужно вычислить интеграл. Но как вычислить интеграл, если сама функция...

Работа с матрицей в С++
Почему матрица выводится неправильно, подскажите пожалуйста? П.5.18.Правил ...

Dev-C++: очень большой файл при компиляции
Я перепробовал очень много всяких компиляторов C++ и мне они все не нравились...

Работа с матрицей и сортировка
Проблема с вводом матрицы на экран. При #define работает отлично всё, но это...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru