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

Задача про комплексные числа(закрытые переменные) - C++

Восстановить пароль Регистрация
 
Sheben
 Аватар для Sheben
0 / 0 / 0
Регистрация: 09.02.2014
Сообщений: 34
24.02.2014, 08:54     Задача про комплексные числа(закрытые переменные) #1
Нужна срочно ваша помощь, помогите не смыслящему человеку, модифицировать программу таким образом, чтобы класс содержал закрытые переменные. Код готов. И еще проблема в программе есть когда выводится комплексное число после сложения, вычитания или умножения получается какой-то неверный вид, как исправить?что-то там с типами.
Буду благодарна за сразу исправленный код, так как я честно пыталась переделать, но у меня ошибки.
Вот само условие, если что:Составить описание класса для представления комплексных чисел. Обеспечить выполнение операций сложения, вычитания и умножения комплексных чисел.

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
123
124
125
126
127
128
129
130
131
132
133
#include <iostream>
#include <stdlib.h>
#include <time.h>
 
 
using namespace std;
 
class Komplecs{
int *a;
public:
 
        Komplecs()
    {
        a= new int[2];
        a[0] = 0;
        a[1] = 0;
    }
 
    ~Komplecs()
    {
     delete []a;
    }
 void Vvod();
 void Slog();
 void Umnog();
 void Vich();
  void Print();
};
void Komplecs::Print()
{
    cout<<a[0] <<"+i*"<<a[1]<<endl;
}
 
void Komplecs::Vvod()
{
cout<<"Введите действительную часть числа";
cout<<endl;
cin>>a[0];
cout<<"Введите мнимую часть числа";cout<<endl;
cin>>a[1];
cout<<endl;cout<<"Число равно  ";
cout<< a[0]<<"+i*"<< a[1];cout<<endl;
}
void Komplecs::Slog()
{int t,d,x,z;
cout<<"Введите действительную часть первого числа";
cout<<endl;
cin>>t;
cout<<"Введите мнимую часть первого числа";cout<<endl;
cin>>d;
cout<<endl;
cout<<"Введите действительную часть второго числа";
cout<<endl;
cin>>x;
cout<<"Введите мнимую часть второго числа";cout<<endl;
cin>>z;
a[0]=(t+x);
a[1]=(d+z);
cout<<"Сумма равна";
cout<<endl;
cout<< a<<"+i*"<< a[1]; cout<<endl;
}
void Komplecs::Umnog()
{
int t,d,x,z;
cout<<"Введите действительную часть первого числа";
cout<<endl;
cin>>t;
cout<<"Введите мнимую часть первого числа";cout<<endl;
cin>>d;
cout<<endl;
cout<<"Введите действительную часть второго числа";
cout<<endl;
cin>>x;
cout<<"Введите мнимую часть второго числа"; cout<<endl;
cin>>z;
a[0]=(t*x-d*z);
a[1]=(t*z+d*x);
cout<<"При умножении число равно";cout<<endl;
cout<< a<<"+i*"<< a[1];cout<<endl;
}
void Komplecs::Vich()
{
int t,d,x,z;
cout<<"Введите действительную часть первого числа";
cout<<endl;
cin>>t;
cout<<"Введите мнимую часть первого числа";cout<<endl;
cin>>d;
cout<<endl;
cout<<"Введите действительную часть второго числа";
cout<<endl;
cin>>x;
cout<<"Введите мнимую часть второго числа";cout<<endl;
cin>>z;
a[0]=(t-x);
a[1]=(d-z);
cout<<"При вычитании число равно";cout<<endl;
cout<< a<<"+i*"<< a[1];cout<<endl;
}
 
 
void main()
{ 
    setlocale (LC_ALL, "Russian");
    Komplecs c;int v;
v=1;
while(v!=0)
{
cout<<endl;
cout<<"1-Ввод числа";cout<<endl;
cout<<"2-Сложение чисел"; cout<<endl;
cout<<"3-Умножение чисел";cout<<endl;
cout<<"4-Вычитание чисел";cout<<endl;
cout<<"0-Выход";cout<<endl;
cin>>v;
if (v==1)
{
c.Vvod();
}
if (v==2)
{
c.Slog();
}
if (v==3)
{
c.Umnog();
}
if (v==4)
{
c.Vich();
}
} }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2014, 08:54     Задача про комплексные числа(закрытые переменные)
Посмотрите здесь:

C++ Комплексные числа
Задача про простые числа. C++
C++ Комплексные числа
C++ Комплексные числа
Обьявить в классе 2 символьные ЗАКРЫТЫЕ переменные, вывести их значения на печать C++
Создать свой класс, содержащий три закрытые переменные C++
C++ Модифицировать программу таким образом, чтобы класс содержал закрытые переменные
C++ Создайте класс Тест, содержащий две закрытые переменные типа int с именами count и max

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
aLarman
636 / 557 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
24.02.2014, 09:28     Задача про комплексные числа(закрытые переменные) #2
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
#include <iostream>
class MyComplex
{
    double x;
    double y;
public:
    MyComplex():x(0), y(0)
    {
 
    }
    MyComplex(double Real, double Im = 0): x(Real), y(Im){}
    const MyComplex operator+(const MyComplex & r)
    {
        MyComplex tmp;
        tmp.x = x + r.x;
        tmp.y = y + r.y;
        return tmp;
    }
    const MyComplex operator-(const MyComplex & r)
    {
        MyComplex tmp;
        tmp.x = x - r.x;
        tmp.y = y - r.y;
        return tmp;
    }
    const MyComplex operator*(const MyComplex & r)
    {
        MyComplex tmp;
        tmp.x = x*r.x - y*r.y;
        tmp.y = x*r.y + y*r.x;
        return tmp;
    }
    friend std::ostream & operator<<(std::ostream & os, MyComplex & r)
    {
        os << "Real = " << r.x << ", Im = " << r.y;
        return os;
    }
};
 
void main()
{
    MyComplex ampl1(1.1,3.5);
    MyComplex ampl2(3,4);
    std::cout << ampl1<<std::endl;
    std::cout << ampl2<<std::endl;
 
    MyComplex ampl3 = ampl1 + ampl2;
    std::cout << ampl3<<std::endl;
    MyComplex ampl4 = ampl1 * ampl2;
    std::cout << ampl4<<std::endl;
    system("pause");
}
Sheben
 Аватар для Sheben
0 / 0 / 0
Регистрация: 09.02.2014
Сообщений: 34
24.02.2014, 17:47  [ТС]     Задача про комплексные числа(закрытые переменные) #3
спасибо, но немного не так, в смысле нужно модифицировать именно мой код, это возможно?
Yandex
Объявления
24.02.2014, 17:47     Задача про комплексные числа(закрытые переменные)
Ответ Создать тему
Опции темы

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