Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Алина333
0 / 0 / 0
Регистрация: 28.09.2016
Сообщений: 2
#1

Реализуйте класс «Вектор», а именно: Операции сложения, скалярного и векторного умножения, память выделяется - C++

28.09.2016, 15:51. Просмотров 266. Ответов 4
Метки нет (Все метки)

Помогите написать код.
Реализуйте класс «Вектор», а именно:
Операции сложения, скалярного и векторного умножения, память выделяется динамически.
Обязательно с динамическим выделением памяти. С++
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2016, 15:51     Реализуйте класс «Вектор», а именно: Операции сложения, скалярного и векторного умножения, память выделяется
Посмотрите здесь:

Visual C++ Операции сложения и умножения над римскими числами
Создайте класс Время, в котором реализованы операции сложения, вычитания, сравнения, ввода и вывод на экран C++
C++ Создать класс Vector – вектор, используя динамическую память
Создать класс Vector – вектор, используя динамическую память C++
C++ Создать класс матриц с целочисленными элементами и определить операции умножения и сложения
Ввести класс для работы с прямоугольной матрицей, реализовать операции сложения и умножения матриц C++
Нужно разработать класс "вектор" и реализовать операцию векторного умножения векторов C++
Создать класс вектор Vector (int *). Перегрузить операции: C++
C++ Класс "Пара чисел" с перегруженными операциями сложения и умножения
Создать класс Matrix и функции умножения и сложения матриц C++
C++ Параллельные алгоритмы матрично-векторного умножения
Реализовать класс Vector и перегруженные операции сложения (+), скалярного (%) и векторного (*) произведения C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Почтальон
Модератор
311 / 237 / 38
Регистрация: 22.03.2015
Сообщений: 1,854
Завершенные тесты: 1
28.09.2016, 16:02     Реализуйте класс «Вектор», а именно: Операции сложения, скалярного и векторного умножения, память выделяется #2
Поиском по форуму воспользуйтесь, наверняка подобное уже было от студентов
Алина333
0 / 0 / 0
Регистрация: 28.09.2016
Сообщений: 2
28.09.2016, 16:07  [ТС]     Реализуйте класс «Вектор», а именно: Операции сложения, скалярного и векторного умножения, память выделяется #3
да код по операции сложения, скалярного и векторного умножения, есть, но не понимаю как записать динамическое выделение памяти
Почтальон
Модератор
311 / 237 / 38
Регистрация: 22.03.2015
Сообщений: 1,854
Завершенные тесты: 1
28.09.2016, 16:25     Реализуйте класс «Вектор», а именно: Операции сложения, скалярного и векторного умножения, память выделяется #4
оператором new
Germanant
104 / 104 / 39
Регистрация: 28.02.2011
Сообщений: 893
Завершенные тесты: 1
28.09.2016, 16:28     Реализуйте класс «Вектор», а именно: Операции сложения, скалярного и векторного умножения, память выделяется #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifndef TVECTOR_H
#define TVECTOR_H
#include<iostream>
using namespace std;
 
 
class Vector
{
private:
      int *data;
      int size;
public:
   Vector(int n);
   Vector(Vector&t);
   ~Vector();
Vector &operator=(Vector& t);
int &operator*(Vector& t);
friend istream& operator>>(istream&in, Vector&t);
friend ostream& operator<<(ostream&out, const Vector&t);
};
#endif // TVECTOR_H
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include "TVector.h"
 
#include<iostream>
#include<time.h>
#include<cstdlib>
using namespace std;
 
 
Vector::Vector(int n)
{
size=n;
data=(int *)malloc(sizeof(int)*size);
srand(time(NULL));
for(int i=0;i<size;i++)
 data[i]=rand()%10;
};
 
Vector:: ~Vector()
{
free(data);
};
 
Vector &Vector::operator=(Vector& t)
{
size=t.size;
data=(int*)realloc(data,sizeof(int)*size);
for(int i=0;i<size;i++)
    data[i]=t.data[i];
return*this;
};
 
Vector::Vector(Vector&t)
{
*this=t;
};
 
istream& operator>>(istream&in, Vector&t)
{
 for(int i=0;i<t.size;i++)
  in>>t.data[i];
return in;
};
 
ostream& operator<<(ostream&out, const Vector&t)
{
 for(int i=0;i<t.size;i++)
  out<<t.data[i]<<" ";
 out<<endl;
 return out;
};
 
int &Vector::operator*(Vector& t)
{
int scalar=0;
for(int i=0;i<size;i++)
 scalar+=data[i]*t.data[i];
return scalar;
};
Yandex
Объявления
28.09.2016, 16:28     Реализуйте класс «Вектор», а именно: Операции сложения, скалярного и векторного умножения, память выделяется
Ответ Создать тему
Опции темы

Текущее время: 03:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru