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

Перегрузка операторов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сортировка вставкой http://www.cyberforum.ru/cpp-beginners/thread106957.html
while(mc!=m) {nov=n; for(is=0;is<n;is++){ for (i=nov;i<n;i++){if (vmatr<sk2){sk2=vmatr;c=i;}} nov++; if(sk2==vmatr){continue;} for (i=c;i>nov;i--){vmatr=vmatr;} vmatr=sk2; sk2=1000;} nov=0; mc++; }
C++ вычислить среднее арифметическое значение положительных элементов матрицы, расположенных над главной диагональю. Помогите пожалуйста найти ошибку!!! Нужно вычислить среднее арифметическое значение положительных элементов матрицы, расположенных над главной диагональю.А программа считает среднее арифметическое под диагональю. #include<iostream.h> #include<stdlib.h> #include<time.h> int main() { int n, **mas,i,j,sum=0, count=0; http://www.cyberforum.ru/cpp-beginners/thread106951.html
C++ Интегрирование дифференциального уравнения
Задание: Подготовить программу интегрирования дифференциального уравнения у’=cos(x+1)*tg(x)+y на отрезке 0<=x<=1 при у(0)=0. Интерфейс приложения – диалог. Обязательные элементы управления – EditBox, Picture и ListBox. Есть следующий код: { UpdateData(true); float p1,d; float fk,f1;
Заменить в тексте все символы 'a' на 'z', 'b' на 'y', 'c' на 'x' и т.д. C++
Добрый день. У меня такая задача: Заменить в тексте все символы 'a' на 'z', 'b' на 'y', 'c' на 'x' и т.д. Большое спасибо, мне написали на форуме программу для 1 строки. А как быть, если строк несколько, то есть массив из строк? Вот программа для 1 строки #include <iostream> int main() { char stroka;
C++ Ввод матрицы из файла - затирает последний элемент предыдущей строки http://www.cyberforum.ru/cpp-beginners/thread106938.html
Странный эффект Содержимое вводимого файла- 1 2 3 4 5 6 int *a; a = new(2*3); for (i=0;i<2;i++) for (j=0;j<3;j++)
C++ Описать структуру с именем Route Описать структуру с именем Route, содержащую следующие поля: название начального пункта маршрута, название конечного пункта маршрута, номер маршрута. Написать программу, выполняющую ввод с клавиатуры данных в массив Traffic, состоящий из 8 элементов типа Route. Упорядочить записи по номерам маршрутов. Вывести на экран информацию о маршруте, номер которого введен с клавиатуры. Если таких маршрутов... подробнее

Показать сообщение отдельно
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
21.03.2010, 12:08     Перегрузка операторов
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
#include <iostream.h>
#include <math.h>
 
class Otrezok
{
private:
        double x1;
        double y1;
        double x2;
        double y2;
public:
 
        Otrezok();
        Otrezok(double dx1, double dy1, double dx2, double dy2);
        Otrezok(const Otrezok &);
        ~Otrezok();
 
 
       Otrezok operator+(const Otrezok& c); 
       Otrezok operator*(const Otrezok& c);
 
       double Dlina();
 
       void Print_coord(){
       cout<<x1<<' '<<y1<<' '<<x2<<' '<<y2<<'\n';
       }
};
 
Otrezok::Otrezok() {
x1 = 0;
x2 = 0;
y1 = 0;
y2 = 0;
}
Otrezok::~Otrezok() {}
 
 
Otrezok::Otrezok(double dx1, double dy1, double dx2, double dy2)
{
        x1 = dx1;
        y1 = dy1;
        x2 = dx2;
        y2 = dy2;
}
 
 
Otrezok::Otrezok(const Otrezok &O)
{
        x1 = O.x1;
        y1 = O.y1;
        x2 = O.x2;
        y2 = O.y2;
}
 
double Otrezok::Dlina()
{
        double d;
        d = sqrt(pow(y2-y1, 2) + pow(x2-x1, 2));
        return d;
}
 
Otrezok Otrezok::operator+(const Otrezok &c)
{  
       Otrezok obj(*this);
       //Если слаживаться должно не так передалай на свое усмотрение.
       obj.x1 +=c.x1;
       obj.x2 +=c.x2;
       obj.y1 +=c.y1;
       obj.y2 +=c.y2;
       return obj;
        
}
 
Otrezok Otrezok::operator*(const Otrezok &c)
{
       Otrezok obj(*this);
       //Если ужножаться должно не так передалай на свое усмотрение.
       obj.x1 *=c.x1;
       obj.x2 *=c.x2;
       obj.y1 *=c.y1;
       obj.y2 *=c.y2;
       return obj;
}
int main(){
 
        Otrezok L1;
        Otrezok L2(1,2,3,4);
        Otrezok L3  = L1 + L2;
 
        cout << "Dlina otrezka L2:" << L2.Dlina() << "\n";
        L3.Print_coord();
        cout << "Dlina otrezka L3:" << L3.Dlina() << "\n";
return 0;
}
Так же я обнаружил у тебя ляп в реализации конструктора с параметрами.
Совет: с названиями переменных будь повнимательнее.
Пришлось присобачить ещё дополнительную функцию без неё я бы не выяснил ошибки.
 
Текущее время: 18:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru