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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 59, средняя оценка - 4.86
KirArg
0 / 0 / 0
Регистрация: 18.12.2010
Сообщений: 9
#1

Сложение обыкновенных дробей - C++

22.01.2011, 20:18. Просмотров 8366. Ответов 6
Метки нет (Все метки)

Две дроби a/b и c/d можно сложить следующим образом:
a/b + c/d = (a*d + b* c)/(b*d)
Например, 1/4 + 2/3 = (1*3 + 4*2)/4*3 = 11/12
Напишите программу, запрашивающую у пользователя значения двух дробей, а затем выводящую результат, также записанный в форме дроби.
Взаимодействие программы с пользователем может выглядеть, например, следующим образом:

Введите первую дробь: 1/2
Введите вторую дробь: 2/5
Сумма равна 9/10

Вы можете использовать тот факт, что операция извлечения >> может считывать более одного значения за раз.

Сам пытался написать,но вышло криво и ответ был в десятичной дроби...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2011, 20:18     Сложение обыкновенных дробей
Посмотрите здесь:

Калькулятор для обыкновенных дробей - C++
Не компилируется( #include <iostream> #include <math.h> using namespace std; class Calc

Найти сумму и разность двух обыкновенных дробей - C++
Помогите пожалуйста,нужно написать консольную программу на с++,находящую сумму и разность двух обыкновенных дробей. Посмотрел похожие...

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

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

Выполнить перегрузку функции вычитания для обыкновенных и десятичных дробей - C++
Написать перегруженные функции и основную программу, которая их вызывает. а) для вычитания десятичных дробей; б) для вычитания...

сложение дробей - C++
Даны две дроби A/B и C/D (А, В, С, D — натуральные числа). Составить функцию сложения этих дробей. Ответ должен быть несократимой дробью.

Сложение дробей - C++
Как сложить две дроби? #include<iostream> using namespace std; class Drob { private: float chislet, znamenat;

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
681 / 583 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
22.01.2011, 20:20     Сложение обыкновенных дробей #2
Как написать класс «несократимая дробь» (т.е. дроби 2/4, 4/8 и т.п. есть дробь 1/2)?
KirArg
0 / 0 / 0
Регистрация: 18.12.2010
Сообщений: 9
22.01.2011, 20:27  [ТС]     Сложение обыкновенных дробей #3
sandye51 Мне нужно всего лишь написать простое консольное приложение для сложения обыкновенных дробей по той формуле что я написал, а в той теме что вы дали рассматриваются классы, которые я ещё не изучал..
Мигрень
20 / 20 / 2
Регистрация: 09.11.2010
Сообщений: 102
22.01.2011, 21:07     Сложение обыкновенных дробей #4
не знаю точно как нормально ввести такую дробь (с слешем), но можно выкрутиться и так
C++
1
2
3
4
5
6
7
8
9
10
int a,b,c,d,ch,zn;
char l;
cout << "Введите первую дробь: ";
cin >> a >> l >> b;
cout << "Введите вторую дробь: ";
cin >> c >> l >> d;
ch = (a*d) + (b* c);
zn = b*d;
 
cout << "\n\nСумма равна " << ch << "/" << zn;
no0ker
101 / 88 / 4
Регистрация: 17.12.2010
Сообщений: 416
22.01.2011, 21:19     Сложение обыкновенных дробей #5
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
int _d(int a, int b){
    int tmp;
    tmp=a*b;
    while (a!=0 && b!=0){
        (a>b) ? a=a%b : b=b%a;
    }
    return tmp/(a+b);
}
 
int main(){
    
    int a_t, a_d, b_t, b_d, c_t, c_d;
    
    printf("enter 1 drob \n");
    scanf("%d/%d", &a_t, &a_d);
    
    printf("enter 2 drob \n");
    scanf("%d/%d", &b_t, &b_d);
    
    c_d = _d(a_d, b_d);
    
    c_t = ( a_t*(c_d / a_d) + b_t*(c_d / b_d));
    
    printf("result: \n%d/%d",c_t,c_d);
}
KirArg
0 / 0 / 0
Регистрация: 18.12.2010
Сообщений: 9
22.01.2011, 21:58  [ТС]     Сложение обыкновенных дробей #6
Спасибо, оба варианта работают.Мигрень Char l я так понял,позволяет ставить знак / ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2011, 22:01     Сложение обыкновенных дробей
Еще ссылки по теме:

Сложение дробей. - C++
Я хочу сложить массив дробей. Числитель у меня один массив а знаменательль другой массив. Если бы у меня небыло дробей можно было бы...

Сложение и вычитание дробей - C++
Не знаю как это можно сделать, надеюсь на вашу помощь Нужно вычеслить : \frac{1}{100}-\frac{1}{101}+\frac{1}{102}-\....+\frac{1}{10000}

Сложение дробей через структуру - C++
Робота с файлами. C++.Пользователь читает файл и меняет его он сохраняеца в другом файле и наоборот!!!! 2) Слажывание дробей через...

Структура состоящая из двух дробей и методов работы с ними(сложение, вычитание) - C++
Пишем в Microsoft Visual Studio 2010 -&gt; Win32 Console Application -&gt; C++ Собственно задача такова - создать программу со структурой...

Сравнение дробей - C++
Здравствуйте, очень нужна ваша помощь. Помогите, пожалуйста с сравнение дробями. больше, меньше, равно. #include &quot;stdafx.h&quot; ...


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

Или воспользуйтесь поиском по форуму:
Мигрень
20 / 20 / 2
Регистрация: 09.11.2010
Сообщений: 102
22.01.2011, 22:01     Сложение обыкновенных дробей #7
Да

Точнее просто в переменную типа char, в l записывает знак /
Yandex
Объявления
22.01.2011, 22:01     Сложение обыкновенных дробей
Ответ Создать тему
Опции темы

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