|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
|
Размер матрицы24.08.2010, 01:26. Показов 11145. Ответов 39
Метки нет (Все метки)
Люди, помогите пожалуйста!
У меня есть задание: создать библиотеку функций для работы с матрицами. Можно ли сделать ,так что в параметрах функций были только матрицы , а размеры их программа знала сама??? Объясните пожалуйста новичку! Заранее благодарен.
0
|
|
| 24.08.2010, 01:26 | |
|
Ответы с готовыми решениями:
39
Нужно считать размер квадратной матрицы из файла.Размер заранне считать не известным размер матрицы Размер vs. размерность матрицы |
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 24.08.2010, 17:27 | |
|
Кстати, sizeof возвращает размер переменной (в твоем случае - массива) в байтах. Так что, чтобы узнать число элементов в массиве, нужно этот размер разделить на размер одного элемента. Но повторюсь, это сработает только для статических массивов.
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
|
| 24.08.2010, 17:30 [ТС] | |
|
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||||||||||||||||||||||
| 24.08.2010, 17:40 | ||||||||||||||||||||||||||
|
Классы обеспечивают сложение и умножение матриц, умножение/деление матриц и векторов на число, умножение матриц на вектора, возведение матрицы в степень. Построение единичной и нулевой матриц заданных размеров.
Объявление и реализация классов: vector.hpp
vector.cpp
matrix.hpp
matrix.cpp
Тестирование класса matrix: main.cpp
Вычисления определителя и обратной матрицы я делать не стал, но это добавить не трудно.
1
|
||||||||||||||||||||||||||
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
|
| 24.08.2010, 17:44 [ТС] | |
|
Большое человеческое спасибо!!!
Но у меня вопрос что это за разрешение 'hpp'? Это как ''.H'' для С++?
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 24.08.2010, 17:47 | |
|
andreyich, это один из форматов расширения для заголовочных файлов С++
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
|
| 24.08.2010, 18:23 [ТС] | |
|
Есть проблемка: не могу подключить файлы!
Напомните пожалуйста как правильно использовать #ifndef и #endif?
0
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
| 24.08.2010, 18:26 | ||||||
|
andreyich,
0
|
||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 24.08.2010, 18:27 | |
|
andreyich, эти директивы не отвечают непосредственно за подключение файла, они лишь препятствуют его повторному подключению. Тебе же нужно создать файлы с теми же именами и содержимым, которое я привел, и подключить их к проекту. Ничего менять, тем более директивы препроцессора, не надо.
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
||||||
| 24.08.2010, 18:30 [ТС] | ||||||
0
|
||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 24.08.2010, 18:32 | |
|
andreyich, так сразу и не скажешь. А в чем ошибка заключается?
Кстати, у тебя класс матрицы совсем не содержит переменных-членов? Конструкторов? Деструктора?
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
|
| 24.08.2010, 18:35 [ТС] | |
|
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 24.08.2010, 18:38 | |
|
Да вроде синтаксически все верно. По крайней мере, если судить по тому участку кода, что ты привел.
Выложи весь код программы.
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
||||||||||||
| 24.08.2010, 18:43 [ТС] | ||||||||||||
|
matrix.cpp
0
|
||||||||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 24.08.2010, 18:55 | |
|
Вообще непонятно. Почему в "main.cpp" подключается "matrix.hpp", а в "matrix.cpp" - "matrix.h"? И что за класс у тебя такой непонятный - MATRIX? По сути - это набор функций, никаких данных он не инкапсулирует. Хотя основной идеей определения класса "матрица" было то, что экземляр этого класса помимо внутреннего представления матрицы (которого у тебя тоже нет) должен хранить еще и ее размеры.
Ты не обижайся, но код, который ты привел - ужасен. Непонятные идентификаторы у методов класса (по названию функции фиг догадаешься, что она должна делать), произвольные отступы у вложенных блоков... Ты бы хоть комментарии написал, что к чему, а то и за полдня в таком коде не разберешься.
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
|
| 24.08.2010, 19:00 [ТС] | |
|
Я же говорю что это пробник. А мэйн я вобще еще не лез
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 24.08.2010, 19:16 | |
|
andreyich, ты пойми, если ты хочешь и дальше в таком виде развивать свою библиотеку, можно абсолютно спокойно избавиться класса - здесь он совершенно не нужен. Нужно просто реализовать отдельно все функции, которые были в нем определены. Все равно введение этого класса никаких преимуществ ни тебе, ни гипотетическому программисту, который будет использовать твою библиотеку, не принесет.
По сути, класс "матрица" - это некая абстракция. Ты должен выбрать представление этой абстракции - т.е. способ хранения данных, описывающих матрицу (к примеру, двумерный массив типа double и два натуральных числа - размеры матрицы). Также ты должен определить механизмы, которые будут связывать высокоуровневые операции, работающие с матрицами, с внутренним представлением самих матриц, - т.е. конструкторы и методы твоего класса. Если отнесешься к процессу проектирования серьезно, тогда с твоей библиотекой будет удобно работать, и, что более важно, вероятность ошибок при работе с ней будет стремиться к минимуму.
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
||
| 24.08.2010, 19:27 [ТС] | ||
|
Я так понимаю ,если я в отдельном класе просто пропишу фу-и и подключу он тоже будет работать?? Я просто в этих делах нуб.
0
|
||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||||||||
| 24.08.2010, 19:31 | ||||||||||||
0
|
||||||||||||
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
|
| 24.08.2010, 19:34 [ТС] | |
|
Я про это и спрашивал.
Буду исправлятся)))
0
|
|
|
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 16
|
|
| 24.08.2010, 21:26 [ТС] | |
|
Новая ошибка: "Linker Eror: Undefined symbol _main in module c0.ASM"
0
|
|
| 24.08.2010, 21:26 | |
|
Помогаю со студенческими работами здесь
40
Задать размер матрицы
Найти минимальный размер матрицы размером m x n Как задать размер матрицы в конструкторе класса?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации:
В классе Работник добавить:
накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни
коэффициентПрезентеизма — снижает продуктивность. . .
|
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день.
Для работы необходим браузер,. . .
|
Модель здравосохранения 16. Слишком хорошие и здоровые сотрудники уходят, недовольные зарплатой
anaschu 23.05.2026
Отладка увольнений и настройка производительности
Сегодня во второй половине дня разобрались с механикой увольнений и настроили коэффициент сложности заданий. Вот что было сделано.
. . .
|
Как я стал коммунистом))) Модель сохранения здоровья сотрудников, запись блога номер 15
anaschu 23.05.2026
Внезапно хорошее здоровье сотрудников не нужно капиталистам?))
|
|
Модель здравоСохранения 15. Как мы чинили AnyLogic модель рабочего коллектива: сочленение диаграммы состояний болезней и поломок в ресурспул
anaschu 23.05.2026
Как мы чинили AnyLogic модель рабочего коллектива
Сегодня разобрались с пятью багами, из-за которых модель либо падала с ошибкой, либо давала совершенно бессмысленные результаты. Каждый баг был. . .
|
Диалоги с ИИ
zorxor 23.05.2026
Насколько я понимаю - Вы - Искусственный Интеллект. Это так?
Да, всё верно. Я — искусственный интеллект.
Я представляю собой большую языковую модель, созданную для помощи в самых разных задачах. . . .
|
Модель здравосохранения 14. Собираем всю модель вместе.
anaschu 22.05.2026
Модель собрана. В будущих постах на видео я покажу, как она работает.
В этом посте запускаем её, проверяем результаты и разбираем что можно с ней делать дальше.
Перед запуском проверяем. . .
|
Модель здравоохранения 13. Добавление самой системы здравоохранения.
anaschu 22.05.2026
В предыдущем посте мы настроили болезни. Теперь добавим события, которые управляют здоровьем всего коллектива, а также настроим рабочий график и расчёт финансов.
В Main создаём четыре события. . . .
|