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

добавление к дроби целого числа - C++

Восстановить пароль Регистрация
 
PK91
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 42
24.04.2013, 17:00     добавление к дроби целого числа #1
Подскажите пожалуйста, как реализовать: добавление к дроби целого числа выполняется по правилу сложения дробей (без сокращения) ¾ + 1 = 7/4.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2013, 17:00     добавление к дроби целого числа
Посмотрите здесь:

C++ нужен тип целого числа для числа 19!= 121 645 100 408 832 000
Корень из целого числа. C++
Найти все дроби и их количество, знаменатель которых меньше заданного числа C++
. Дана строка, изображающая десятичную запись целого положительного числа. Вывести строку, изображающую двоичную запись этого же числа C++
C++ Разность дроби и целого числа
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
24.04.2013, 17:11     добавление к дроби целого числа #2
PK91, а как у Вас реализована сама дробь?
GetVariable
 Аватар для GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
24.04.2013, 17:24     добавление к дроби целого числа #3
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
#include <iostream>
#include <math.h>
 
int NOD(int x, int y);
int NOK(int x, int y);
 
int main()
{
    std::cout << "Example: " << std::endl;
    std::cout << " a    a1" << std::endl;
    std::cout << "--  + --" << std::endl;
    std::cout << " c      c1" << std::endl << std::endl;
 
    std::cout << "Enter a a1 c c1. ex[5 6 9 6]: ";
 
    int a,a1,c,c1;
    std::cin >> a >> a1 >> c >> c1;
 
    int nok = NOK(c, c1);
 
    c = nok / c;
    a *= c;
 
    c1 = nok / c1;
    a1 *= c1;
 
    /*
    [url]http://ru.onlinemschool.com/math/library/fraction/lcd/[/url]
    */
 
    int answer = a + a1;
 
    std::cout << "Answer: " << std::endl;
 
    std::cout << answer << std::endl;
    std::cout << "----" << std::endl;
    std::cout << nok << std::endl;
 
 
    return 0;
}
 
int NOD(int x, int y)
{
    if (x != 0)
        return NOD(y%x,x);
    else
        return y;
}
 
int NOK(int x, int y)
{
    return (x/NOD(x,y))*y;
}
если всё верно, то отзыв вот сюда [ссылка удалена]
-=ЮрА=-
Заблокирован
Автор FAQ
24.04.2013, 17:27     добавление к дроби целого числа #4
Цитата Сообщение от Tulosba Посмотреть сообщение
PK91, а как у Вас реализована сама дробь?
- поддержу вопрос, дробь идёт как отдельный класс или просто структура?
C++
1
2
3
4
5
struct DROB
{
     double chislitel;
     double znamenatel;
}
Ответ на вопрос повлияет на реализацию
GetVariable
 Аватар для GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
24.04.2013, 17:31     добавление к дроби целого числа #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
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
#include <iostream>
#include <math.h>
 
int NOD(int x, int y);
int NOK(int x, int y);
 
int main()
{
    std::cout << "Example: " << std::endl;
    std::cout << " a    a1" << std::endl;
    std::cout << "--  + --" << std::endl;
    std::cout << " c      c1" << std::endl << std::endl;
 
    std::cout << "Enter a a1 c c1. ex[5 6 9 6]: ";
 
    int a,a1,c,c1;
    std::cin >> a >> c >> a1 >> c1;
 
    int nok = NOK(c, c1);
 
    c = nok / c;
    a *= c;
 
    c1 = nok / c1;
    a1 *= c1;
 
    /*
    [url]http://ru.onlinemschool.com/math/library/fraction/lcd/[/url]
    */
 
    int answer = a + a1;
 
    std::cout << "Answer: " << std::endl;
 
    std::cout << answer << std::endl;
    std::cout << "----" << std::endl;
    std::cout << nok << std::endl;
 
 
    return 0;
}
 
int NOD(int x, int y)
{
    if (x != 0)
        return NOD(y%x,x);
    else
        return y;
}
 
int NOK(int x, int y)
{
    return (x/NOD(x,y))*y;
}
PK91
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 42
24.04.2013, 17:36  [ТС]     добавление к дроби целого числа #6
Дробь идёт как отдельный класс.
-=ЮрА=-
Заблокирован
Автор FAQ
24.04.2013, 17:38     добавление к дроби целого числа #7
Цитата Сообщение от PK91 Посмотреть сообщение
Подскажите пожалуйста, как реализовать: добавление к дроби целого числа выполняется по правилу сложения дробей (без сокращения) ¾ + 1 = 7/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
#include <iostream>
using namespace std;
 
class DROB
{
private:
    double chislitel;
    double znamenatel;
public :
    DROB();
    DROB(double chisl, double znam);
    DROB(const DROB &pCopy);
    DROB operator + (DROB   pAdd);
    DROB operator + (double pAdd);
    void show();
};
 
DROB::DROB()
{
    chislitel = znamenatel = 0;
}
 
DROB::DROB(double chisl, double znam)
{
    chislitel = chisl;
    znamenatel= znam;
}
 
DROB::DROB(const DROB &pCopy)
{
    chislitel = pCopy.chislitel;
    znamenatel= pCopy.znamenatel;
}
 
DROB 
DROB::operator + (DROB   pAdd)
{
    chislitel *= pAdd.znamenatel;
    znamenatel*= pAdd.chislitel;
    return (*this);
}
 
DROB 
DROB::operator + (double pAdd)
{
    chislitel += pAdd*znamenatel;
    return (*this);
}
 
void DROB::show()
{
    cout<<chislitel<<" / "<<znamenatel<<endl;
}
 
int main()
{
    DROB pDrob(3, 4);
    pDrob.show();
    pDrob = pDrob + 1;
    pDrob.show();
    cin.get();
    return 0;
}
Миниатюры
добавление к дроби целого числа  
PK91
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 42
24.04.2013, 17:38  [ТС]     добавление к дроби целого числа #8
Спасибо!!!! Объясните пожалуйста, что значит:
C++
1
2
3
4
5
6
7
int nok = NOK(c, c1);
 
    c = nok / c;
    a *= c;
 
    c1 = nok / c1;
    a1 *= c1;
GetVariable
 Аватар для GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
24.04.2013, 17:39     добавление к дроби целого числа #9
Цитата Сообщение от PK91 Посмотреть сообщение
Спасибо!!!! Объясните пожалуйста, что значит:
C++
1
2
3
4
5
6
7
int nok = NOK(c, c1);
 
    c = nok / c;
    a *= c;
 
    c1 = nok / c1;
    a1 *= c1;
http://ru.onlinemschool.com/math/library/fraction/lcd/
-=ЮрА=-
Заблокирован
Автор FAQ
24.04.2013, 17:41     добавление к дроби целого числа #10
Цитата Сообщение от PK91 Посмотреть сообщение
Спасибо!!!! Объясните пожалуйста, что значит:
Код C++
int nok = NOK(c, c1);
c = nok / c;
* * a *= c;
c1 = nok / c1;
* * a1 *= c1;
- нахождение общего кратного, твоя дробь приводится в знаменателе к наименьшему общему кратному(идёт сокращение в числителе и знаменателе), так что ответ поста 3 вобщем-то не по заданию
Цитата Сообщение от PK91 Посмотреть сообщение
числа выполняется по правилу сложения дробей (без сокращения)
GetVariable
 Аватар для GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
24.04.2013, 17:44     добавление к дроби целого числа #11
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
- нахождение общего кратного, твоя дробь приводится в знаменателе к наименьшему общему кратному, так что ответ поста 3 вобщем то не по заданию

Не по теме:

всё лучше, чем нечего

PK91
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 42
24.04.2013, 17:46  [ТС]     добавление к дроби целого числа #12
Спасибо большое!!! Объясните пожалуйста:
C++
1
2
3
4
5
DROB::DROB(const DROB &pCopy)
{
    chislitel = pCopy.chislitel;
    znamenatel= pCopy.znamenatel;
}
-=ЮрА=-
24.04.2013, 17:47
  #13

Не по теме:

Цитата Сообщение от GetVariable Посмотреть сообщение
всё лучше, чем нечего
- лучше делать то что просят

-=ЮрА=-
Заблокирован
Автор FAQ
24.04.2013, 17:50     добавление к дроби целого числа #14
Цитата Сообщение от PK91 Посмотреть сообщение
DROB:ROB(const DROB &pCopy)
{
* * chislitel = pCopy.chislitel;
* * znamenatel= pCopy.znamenatel;
}
- конструктор копирования - privat переменные из класса pCopy присваиваются privat переменным текущего экземпляра класса, дословно - чтобы можно было написать pDrob1 = pDrob2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.04.2013, 17:55     добавление к дроби целого числа
Еще ссылки по теме:

C++ Дана строка. Определить, представляет ли она собой запись целого числа или запись дробного числа
Определить цифры целого числа (тип числа - целое без знака) C++
Ввод целого числа C++

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

Или воспользуйтесь поиском по форуму:
PK91
0 / 0 / 0
Регистрация: 20.10.2012
Сообщений: 42
24.04.2013, 17:55  [ТС]     добавление к дроби целого числа #15
Спасибо!!!
Yandex
Объявления
24.04.2013, 17:55     добавление к дроби целого числа
Ответ Создать тему
Опции темы

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