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

N-мерные вектора - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ отдельный файл http://www.cyberforum.ru/cpp-beginners/thread359911.html
я сделал программу в форме на Microsoft Visual C++ 2005 Express Edition . но создал 2 класса и программа ругается ( Warning 1 The class Form1 can be designed, but is not the first class in the file. Visual Studio requires that designers use the first class in the file. Move the class code so that it is the first class in the file and try loading the designer again.) подскажите как вынести один...
C++ Перегруженная функция есть два задания. 1) - посчитать количество чисел в самой длинной возрастающей последовательности например, массив a={7, 2, 4, 48, 54, 1, 7, 4, 0}; 0 - конец массива. самая длинная возраст. последовательность это получается 2,4,48,54 2) - посчитать кол-во символов в самом длинном слове, массив b="клавиатура bios_11 охохо \0"; самое длинное слово - клавиатура (10 символов) как всё это... http://www.cyberforum.ru/cpp-beginners/thread359904.html
Примитивная графика (Dev-C++) C++
Здравствуйте. Есть консольная "Жизнь", хотелось бы сделать для неё хоть какую-нибудь графику. Думал использовать graphics.h, но все вокруг твердят, что это уже раритет и использовать её нерационально. Отсюда вопрос: что использовать, чтобы, ничего не переписывая "с нуля", прикрутить графику к готовой консольной программе? Спасибо.
C++ Многопоточность, visual studia
//================================================================================================= #include <windows.h> //================================================================================================= #include <process.h> //================================================================================================= #include "resource.h"...
C++ две задачки http://www.cyberforum.ru/cpp-beginners/thread359892.html
1. Дано целое число. Определить является ли оно четным. 2. Составьте программу, заменяющую меньшее из двух данных чисел модулем разности, а большее – модулем произведения этих чисел. ЗАРАНЕЕ СПАСИБО
C++ Ускорение алгоритма перебора Здравствуйте! В общем есть такая задачка: Имеются N(1 ≤ N ≤ 18) камней с массами W1, W2 , … WN. И, короче, нужно разложить камни на 2 кучки так, чтобы разница масс этих кучек была минимальной. Например: IN 4 1 2 3 4 OUT 0 подробнее

Показать сообщение отдельно
Zheka91
4 / 4 / 1
Регистрация: 22.11.2010
Сообщений: 101
03.10.2011, 17:18     N-мерные вектора
неработает вывод и оператор = . помогите пожалуйста
main.cpp
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
#include "vector.h"
int main()
{
    int mas1[]={3,4,5,8,7,3,5}; vector<int>A(mas1,sizeof(mas1)/sizeof(mas1[0]));
    int mas2[]={4,1,8,2,8,9,5}; vector<int>B(mas2,sizeof(mas2)/sizeof(mas2[0]));
    vector<int>C;
    printf("A=");   A.output();     printf("\n");
    printf("--------------------------------\n");
    printf("B=");   B.output();     printf("\n");
    printf("--------------------------------\n");
    C=A+B;
    printf("A+B="); C.output();     printf("\n");
    printf("--------------------------------\n");
    C=A-B;
    printf("A-B="); C.output();     printf("\n");
    printf("--------------------------------\n");
    C=A*B;
    printf("A*B="); C.output();     printf("\n");
    printf("--------------------------------\n");
    C=A*5;
    printf("A*5="); C.output();     printf("\n");
    printf("--------------------------------\n");
    printf("|A|=%lf\n",A.modul());
    printf("--------------------------------\n");
    printf("|B|=%lf\n",B.modul());
    printf("--------------------------------\n");
    printf("|A|>|B|");  if(A>B)printf("true\n");    else printf("false\n");
    printf("--------------------------------\n");
    printf("|A|<|B|");  if(A<B)printf("true\n");    else printf("false\n");
    printf("--------------------------------\n");
    printf("|A|==|B|"); if(A==B)printf("true\n");   else printf("false\n");
    printf("--------------------------------\n");
    printf("|A|!=|B|"); if(A!=B)printf("true\n");   else printf("false\n");
    printf("--------------------------------\n");
    system("pause");
    return 0;
}
vector.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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#pragma once
#include "iostream"
#include "stdio.h"
#include "math.h"
template<class T>
class vector
{
    int size;
    T *x;
public:
    vector():x(0),size(0){}
    vector(T *y, int s)
    {
        size=s;
        x=new T [size];
        for(int i=0;i<size;i++)
            x[i]=y[i];
    }
    void output();
    vector operator+(const vector &t);
    vector operator-(const vector &t);
    vector operator*(const vector &t);
    vector operator*(const int &t);
    double modul();
    vector&operator=(const vector &t)
    {
        size=t.size;
        for(int i=0; i<size; i++)
            x[i]=t.x[i];
        return *this;
    }
    bool operator>(vector &t);
    bool operator<(vector &t);
    bool operator==(vector &t);
    bool operator!=(vector &t);
};
 
template<class T>void vector<T>::output()
{
    for(int i=0; i<size; i++)
    {
        if (i==0)
            cout<<"("<<x[i];
        else if (i==size-1)
            cout<<x[i]<<")";
        else 
            cout<<x[i]<<",";
    }
}
template<class T>vector<T> vector<T>::operator+(const vector &t) 
{
    vector <T>temp;
    temp.x=new int[temp.size=size];
    for(int i=0; i<size; i++)
    {
        temp.x[i]=x[i]+t.x[i];
    }
    return temp;
}
template<class T>vector<T> vector<T>::operator-(const vector &t)
{
    vector <T>temp;
    temp.x=new int[temp.size=size];
    for(int i=0; i<size; i++)
    {
        temp.x[i]=x[i]-t.x[i];
    }
    return temp;
}
template<class T>vector<T> vector<T>::operator*(const vector &t)
{
    vector <T>temp;
    temp.x=new int[temp.size=size];
    for(int i=0; i<size; i++)
    {
        temp.x[i]=x[i]*t.x[i];
    }
    return temp;
}
template<class T>vector<T> vector<T>::operator*(const int &t)
{
    vector <T>temp;
    temp.x=new int[temp.size=size];
    for(int i=0; i<size; i++)
    {
        temp.x[i]=x[i]*t;
    }
    return temp;
}
template<class T>double vector<T>::modul()
{
    int temp=0;
    for(int i=0; i<size; i++)
    {
        temp+=x[i]*x[i];
    }
    return(sqrtl(temp));
}
template<class T>bool vector<T>::operator>(vector &t)
{
    if(this->modul()>t.modul())
        return true;
    else return false;
}
template<class T>bool vector<T>::operator<(vector &t)
{
    if(this->modul()<t.modul())
        return true;
    else return false;
}
template<class T>bool vector<T>::operator ==(vector &t)
{
    if (this->modul()== t.modul())
        return true;
    else return false;
}
template<class T>bool vector<T>::operator!=(vector &t)
{
    if (this->modul()!= t.modul())
        return true;
    else return false;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru