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

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

Войти
Регистрация
Восстановить пароль
 
@r!er
2 / 2 / 1
Регистрация: 15.09.2011
Сообщений: 25
#1

Операции с дробями - C++

20.05.2012, 08:21. Просмотров 863. Ответов 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
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
#include <iostream>
#include <windows.h>
using namespace std;
//------------------------------------------------------------------------------
class fraction
{
 private:
 int num;
 int den;
 public:
 fraction(): num(0), den(0)
 {}
 fraction(int n, int d): num(n), den(d)
 {}
 void input()
 {
  cout<<"÷èñëèòåëü:";
  cin>>num;
  cout<<"Г§Г*Г*ìåГ*Г*òåëü:";
  cin>>den;
 }
 void output()
 {
  cout<<num<<'/'<<den;
 }
 fraction operator+ (fraction frac)
 {
  fraction temp;
  temp.num=num*frac.den+den*frac.num;
  temp.den=den*frac.den;
  return temp;
 }
 fraction operator- (fraction frac)
 {
  fraction temp;
  temp.num=num*frac.den-den*frac.num;
  temp.den=den*frac.den;
  return temp;
 }
 fraction operator* (fraction frac)
 {
  fraction temp;
  temp.num=num*frac.num;
  temp.den=den*frac.den;
  return temp;
 }
 fraction operator/ (fraction frac)
 {
  fraction temp;
  temp.num=num*frac.den;
  temp.den=den*frac.num;
  return temp;
 }
};
//------------------------------------------------------------------------------
int main()
{
 setlocale(LC_ALL, "Russian");
 char ch, ch2;
 fraction f1, f2, f3;
 do
 {
  cout<<"Ââåäèòå ïåðâóþ äðîáü\n";
  f1.input();
  cout<<"Âûáåðèòå îïåðГ*öèÿ (+,-,*,/):";
  cin>>ch;
  cout<<"Ââåäèòå âòîðóþ äðîáü\n";
  f2.input();
  switch(ch)
  {
   case '+':
            f3=f1+f2;
   case '-':
            f3=f1-f2;
   case '*':
            f3=f1*f2;
   case '/':
            f3=f1/f2;
  }
  cout<<"ÐåçóëüòГ*ГІ:";
  f1.output();
  cout<<' '<<ch<<' ';
  f2.output();
  cout<<" = ";
  f3.output();
  cout<<endl<<"Г…Г№Вё (y/n)?:";
  cin>>ch2;
 } while(ch2!='n');
 system("pause");
 return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2012, 08:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Операции с дробями (C++):

Операции над обыкновенными дробями - C++
Нужно написать программу для того чтобы полноценно показать возможные операции над обыкновенными дробями посредством C++, желательно с...

Работа с дробями - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;locale&gt; void main() { setlocale(LC_ALL, &quot;RUSSIAN&quot;); char a; char fn; ...

Работа с дробями - C++
Создать программу в виде учебника, раздел дроби, провести тестирования по теме. program s1; uses crt; Var a,b,f:word; ...

Задачка с дробями - C++
Здравствуйте! Ломаю голову над следующей задачей: Найти все простые несократимые дроби, заканчивающиеся между 0 и 1, знаменатели которых не...

Класс с дробями - C++
Всем привет. Помогите пожалуйста решить задачу: &quot;Создать класс «Дробь», содержащий два поля: числитель и знаменатель. Оба этих поля...

Работа с дробями - C++
Написать программу, работы с дробями используя структуры. Написал функцию сложения (но чет напортачил) #include&lt;iostream&gt; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6358 / 5922 / 1920
Регистрация: 18.12.2011
Сообщений: 15,220
Завершенные тесты: 1
20.05.2012, 11:19 #2
C++
1
2
3
4
5
6
7
8
9
10
11
switch(ch)
  {
   case '+':
            f3=f1+f2;break;
   case '-':
            f3=f1-f2;break;
   case '*':
            f3=f1*f2;break;
   case '/':
            f3=f1/f2;
  }
Добавлено через 1 минуту
C++
1
2
3
4
void output()
 {
  cout<<num<<'/'<<den<<endl;
 }
@r!er
2 / 2 / 1
Регистрация: 15.09.2011
Сообщений: 25
20.05.2012, 11:39  [ТС] #3
Благодарю, вот я лошара
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2012, 11:39
Привет! Вот еще темы с ответами:

Калькулятор с дробями, классы - C++
Помогите пожалуйста, что ни так? #include &quot;stdafx.h&quot; #include &quot;iostream&quot; using namespace std; class Calc {public: ...

Действие над дробями - C++
Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными дробями вида P:Q (Р − целое, Q —...

Работа с десятичными дробями - C++
Ув. господа:) В качестве тренировки написал на Борланде простенький калькулятор, и почти все работает, за исключением счета десятичных...

Структуры, работа с дробями. - C++
Пишу в Microsoft Visual Studio -&gt;Win32 Console application -&gt;C++. Имеется такая задача: Создайте структуру, описывающую простую дробь....


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

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

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