0 / 0 / 0
Регистрация: 20.03.2012
Сообщений: 23
1

не могу разобраться с ошибками

21.03.2013, 18:52. Показов 653. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
работы с обыкновенными дробями. Класс должен содержать следующие элементы.
Поля (скрытые):
числитель дроби
знаменатель дроби
Методы:
конструктор по умолчанию, заполняющий оба поля единичными значениями; конструктор, параметрами которого являются заданные значения числителя и знаменателя; конструктор-копировщик
методы-функции для задания значений и получения числителя и знаменателя
метод-функция для вывода дроби на экран в общепринятом формате «числитель/знаменатель»
метод-функция для сокращения дроби, в результате которого должна получиться несократимая дробь (например, было 6/8 – станет 3/4)
Реализовать для разработанного класса методы-операторы:
+, - , * , / (плюс, минус, умножить, разделить) - для выполнения арифметических действий над обыкновенными дробями. При этом результат должен также быть обыкновенной дробью.
Разработать программу, которая демонстрировала бы работоспособность всех методов данного класса.

Листинг:
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
#include <iostream.h>
#include <cmath>
class Tdrob
\\Интерфейс
{
  int znam,chisl;
public:
  Tdrob();             \\Здесь
  Tdrob(int r, int i); \\объявляем
  Tdrob(Tdrob &c);     \\ конструкторы.
  void introduce();    \\Объявляем функции ввода,
  void print();        \\вывода на экран и
  void abbraviate(int c, int z); \\сокращения.
  Tdrob operator -(Tdrob a);     \\Объявляем
  Tdrob operator +(Tdrob a);     \\операции:
  Tdrob operator *(Tdrob a);     \\*,/,-,+  для
  Tdrob operator /(Tdrob a);     \\класса Tdrob.
};
\\Реализация
Tdrob::Tdrob()
{
  chisl = 0;
  znam = 0;
}
Tdrob::Tdrob(int r, int i)
{
  chisl = r;
  znam = i;
}
Tdrob::Tdrob(Tdrob &c)
{
  chisl = c.chisl;
  znam = c.znam;
}
void Tdrob::introduce()
{
  cin >> chisl >> znam;
}
void Tdrob::print()
{
  cout << chisl << endl << "-" << endl << znam;
}
void Tdrob::abbraviate(int c, int z)
{
  for (int NOD = 9999;NOD == 1;NOD--)
  {
    c = chisl%NOD; z = znam%NOD;
    if ((c == 0) && (z == 0))
    {
    chisl = chisl/NOD;znam = znam/NOD;
    };
  };
}
Tdrob Tdrob::operator*(Tdrob a)
{
  Tdrob multiplication;
  multiplication.znam = znam * a.znam;
  multiplication.chisl = chisl * a.chisl;
  return multiplication;
}
Tdrob Tdrob::operator/(Tdrob a)
{
  Tdrob division;
  division.znam = znam * a.chisl;
  division.chisl = chisl * a.znam;
  return division;
}
Tdrob Tdrob::operator+(Tdrob a)
{
  Tdrob addition;
  addition.znam = znam * a.znam;
  addition.chisl = chisl * a.znam + znam * a.chisl;
  return addition;
}
Tdrob Tdrob::operator-(Tdrob a)
{
  Tdrob subtraction;
  subtraction.znam = znam * a.znam;
  subtraction.chisl = chisl * a.znam - znam * a.chisl;
  return subtraction;
}
void main()
{
  cout << "programm for working with fractions" << endl;
 
  Tdrob first(5,9);
  cout << "first" << endl;
  first.print();
  cout << endl << endl;
 
  Tdrob second;
  cout << "second" << endl;
  second.print();
  cout << endl << endl;
  second.introduce();
  cout << endl;
  cout << "second introduce" << endl;
  second.print();
  cout << endl << endl;
 
  Tdrob third(6,7);
  third = first + second;
  cout << "third = first + second" << endl;
  third.print();
  cout << endl << endl;
 
  Tdrob fourth = first;
  cout << "fourth = first" << endl;
  fourth.print();
  cout << endl << endl;
 
  Tdrob fifth;
  fifth = fourth * third;
  cout << "fifth = fourth * third" << endl;
  fifth.print();
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.03.2013, 18:52
Ответы с готовыми решениями:

Не могу с ошибками разобраться
Помогите, не могу с ошибками разобраться

не могу разобраться с ошибками
Приветствую всех форумчан!!! Столкнулся со следующей проблемой: при компиляции в С++(3.1) данный...

Не могу разобраться с ошибками
При попытке компиляции выскакивает: Expected FINALLY but received else at line 142(142:1) и еще...

Не могу разобраться с ошибками, наследование и шаблоны
Задание: Смоделировать стек на базе статического массива по заданию. Написать основные операции...

2
1702 / 898 / 207
Регистрация: 25.11.2009
Сообщений: 1,847
21.03.2013, 19:44 2
михаил, какие ошибки?
0
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
21.03.2013, 20:18 3
Цитата Сообщение от михаил Посмотреть сообщение
\\Интерфейс
может всё таки // для комментария?
0
21.03.2013, 20:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.03.2013, 20:18
Помогаю со студенческими работами здесь

Разобраться с ошибками
что нужно исправить #include &lt;iostream.h&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; int main...

Разобраться с ошибками в программе
#include &lt;uniostream&gt; ; using namespace std; void main() { char name1, name2, name3;

Разобраться с ошибками в программе
#include &lt;stdio.h&gt; using namespace std; int main(void) { setlocale(LC_ALL,&quot;Russian&quot;); char...

Разобраться с ошибками в коде
подскажите, ошибки в коде есть подчеркиваются &quot;красным&quot; они, препод говорит, что это связано с...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru