Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/12: Рейтинг темы: голосов - 12, средняя оценка - 5.00
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782

Класс вектор

25.12.2008, 00:48. Показов 2624. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть задача:
Разработать пользовательский тип “ вектор в n-мерном пространстве”. Для разрабатываемого типа обязательно определить:
конструктор (или несколько, если необходимо)
набор методов “get” и “set” ;
операторы + и – для сложения и вычитания векторов с получением нового вектора (суммы или разности);
оператора * для вычисления скалярного произведения двух векторов;
оператор присваивания;
оператор сравнения ==;
оператор << для вывода в поток;

В общем, для какой-нибудь операции с вектором в многомерном пространстве (сложение, вычитание, произведение…) обязательно нужно знать номер координаты и значение.
Использование массива, не подойдёт, т.к. может быть какая-нибудь 100000 – я координата.

Как можно реализовать эту задачу?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.12.2008, 00:48
Ответы с готовыми решениями:

Класс "вектор" с конструкторами, позволяющими создать нулевой вектор и вектор с произвольным числом элементов
Привет! Задача следующая. Нужно реализовать класс &quot;вектор&quot; с конструкторами, которые позволяют создать нулевой вектор и вектор с...

Создать класс, полем которого является класс вектор
как это выглядит?

Класс Вектор
Нужна помощь в написании программы. Класс &quot;Вектор&quot;. (Чем он отличается от массива? в том что мне дали про вектора ни слова. Помогите...

6
Эксперт С++
 Аватар для XuTPbIu_MuHTAu
2256 / 771 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
25.12.2008, 01:04
qwert,vector,list из stl
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
25.12.2008, 01:16  [ТС]
Цитата Сообщение от XuTPbIu_MuHTAu Посмотреть сообщение
qwert,vector,list из stl
А что за vector,list? Я этого ещё не знаю.
Наверное, все эти функции нужно реализовать самому.
0
Эксперт С++
 Аватар для XuTPbIu_MuHTAu
2256 / 771 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
25.12.2008, 01:29
Цитата Сообщение от qwert Посмотреть сообщение
А что за vector,list? Я этого ещё не знаю.
Наверное, все эти функции нужно реализовать самому.
Ну я точно не знаю,чем вам можно/нужно пользоваться. Это классы из стандартной библиотеки шаблонов.

http://www.cplusplus.com/reference/
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
25.12.2008, 01:39  [ТС]
У меня основной вопрос - как лучше реализовать. Я уже писал про использование в этой задаче массивов. Если создать массив типа Vector, то на это уйдёт много памяти и это нерационально. Можно ли как-нибудь по другому, чтобы иметь доступ к номеру координаты и её значению?
0
Эксперт С++
 Аватар для XuTPbIu_MuHTAu
2256 / 771 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
25.12.2008, 01:56
qwert, ааа,т.е не держать в памяти массив,но знать каждое его значение?
Единственная возможность хранить данные не в памяти - хранить их на жестком диске,загружая в память когда нужно.
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
26.12.2008, 01:44  [ТС]
Цитата Сообщение от XuTPbIu_MuHTAu Посмотреть сообщение
qwert, ааа,т.е не держать в памяти массив,но знать каждое его значение?
Единственная возможность хранить данные не в памяти - хранить их на жестком диске,загружая в память когда нужно.
Верно. Например, если нужно сложить вектор a, у которого координаты (a1,a2,a3,...,an)
с вектором b с координатами (b1,b2,b3,..., bn), то a + b = (a1+b1, a2+b2,a3+b3,...,an+bn). Выглядит просто, но как это реализовать с использованием классов? Может создать структуру, вида координата.значение, но всё равно проблема как это использовать с большим количеством координат.

Добавлено через 39 минут 35 секунд
А если с использованием массива, то создав 2 массива класса vector с какой - нибудь размерностью, то как тогда, опять же с использованием классов, написать все эти функции суммы, разности и т.д.?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.12.2008, 01:44
Помогаю со студенческими работами здесь

Класс вектор
Создать абстрактный тип данных - класс вектор, который имеет указатель на float, число элементов и переменную состояния. Определить...

Класс Вектор
Помогите пожалуйста горит индевидуалка... Создать класс векторов поддерживающий следующие операции: изменение размеров вектора,сложение...

Вектор класс
Всем привет!!! Вот написал программу с класами а она не правильно работеает. Пожалуйста помогоите исправить ошыбки. Сама задача:Создать...

Класс Вектор
Здраствуйте! Может ли кто-нибудь помочь с объяснением проблемы , потому что я не знаю точно , что это берет. Это условие ....

Класс Вектор
Решил написать свой класс вектор, приблизительно как в СТЛ. Сначала решил сделать каркас. Все функции без аллокатора и итератора. Сделал. И...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru