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

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

Войти
Регистрация
Восстановить пароль
 
Heroses
Сообщений: n/a
#1

Функции. Вычислить результат выражения - C++

01.11.2009, 20:46. Просмотров 506. Ответов 6
Метки нет (Все метки)

Вычислите результат выражения
((A/B+C)-(C/B-C))*E/F
В виде правильной дроби, где A,B,C,E,F - целые числа. Воспользуйтесь формулой сложения дробей.

Вот такая задачка. Подскажите как решить? Или хотя-бы намекните
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.11.2009, 20:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функции. Вычислить результат выражения (C++):

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

Вычислить результат выражения, заданного формулой - C++
Кто может помочь с формулой (вложения), что бы вывело результат

Вычислить значение выражения: результат не совпадает с ответом - C++
пересчитал вручную, ничего не вышло. такой ответ как в задании не получается. помогите пожалуйста. #include <iostream> #include...

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

Объяснить результат и вывести на экран результат логического выражения - C++
Объяснить результат и вывести на экран результат логического выражения T = S для заданных значений логических переменных a, b, c. ...

Вычислить значение функции и вывести результат в виде таблицы - C++
Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x) – S(x)| и вывести в виде таблицы....

6
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
01.11.2009, 20:51 #2
каждую не дробь представляй как числитель делить на 1 и по формуле сложения дробей (5 класс)) ) складывай их все учитывая порядок действий в итоге получишь два int'a (chisl , znamen )
0
Heroses
Сообщений: n/a
01.11.2009, 20:55 #3
хм.. :O а можно немножко по подробнее?
Желательно в кодовом варианте ^^
odip
Эксперт С++
7158 / 3220 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
02.11.2009, 19:51 #4
Пусть есть две дроби: A/B и C/D.
Тогда сумма двух дробей есть дробь: (A*D)/(B*D) + (C*B)/(B*D) == (A*D+C*B)/(B*D).
Осталось сократить числитель и знаменатель - чтобы они стали меньше.

Аналогично делается вычитание дробей.
Умножение дроби на число и деление дроби на число вообще тривиально.
Умножение дроби на дробь тоже просто.
0
audiophile
9 / 9 / 0
Регистрация: 01.11.2009
Сообщений: 67
02.11.2009, 20:35 #5
минуту

Добавлено через 32 минуты
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
#include <iostream>
#include <cmath>
using namespace std;
 
int main () {
    int a,b,c,e,f,chisl,znam,celoe;
    cout << "A? ";
    cin >> a;
    cout << "B? ";
    cin >> b;
    cout << "C? ";
    cin >> c;
    cout << "E? ";
    cin >> e;
    cout << "F? ";
    cin >> f;
    chisl = (a - c + (2 * c * b)) * e;
    znam = b * f;
 
    if ( chisl == znam )
    {
        cout << 1 << endl;
        return 0;
    }
    
    if (chisl <= 0 && znam < 0)
    {
        chisl = -chisl;
        znam = -znam;
    }
    if( abs(chisl) > abs(znam) )
    {
        celoe = chisl/znam;
        chisl = chisl%znam;
        if ( celoe < 0 )
        {
            chisl = abs(chisl);
            znam = abs(znam);
        }
        if ( chisl != 0 )
            cout << celoe << " " << chisl << "/" << znam << endl;
        else
            cout << celoe << endl;
    }
    else
        cout << chisl << "/" << znam << endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
Блин, вот это я намудрил-то. Проверь, правильно ли считает .
0
odip
Эксперт С++
7158 / 3220 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
02.11.2009, 21:49 #6
А нужно-то всего лишь выравнять знак.
А потом поделить и числитель и знаменатель на NOD(числитель,знаменатель).
Что-то я тут не вижу - где NOD ?
0
audiophile
9 / 9 / 0
Регистрация: 01.11.2009
Сообщений: 67
02.11.2009, 21:52 #7
Ах, блин. Использовать НОД в алгоритме не пришла в голову идея (не обратил внимание на то, что дробь должна быть правильной, что как раз легко позволяет сделать НОД) .
0
02.11.2009, 21:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.11.2009, 21:52
Привет! Вот еще темы с ответами:

Вычислить значение функции y для x=a(h)b - получается всего один результат - C++
#include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;math.h&gt; using namespace std; int main() { double y,x, a, b, h; x=1; ...

Вычислить значение функции на отрезке и результат представить в виде таблицы - C++
Нужно решение в с++ буду благодраен Составить программу для вычисления значений функции F(x) на отрезке с шагом /г. Результат...

Вычислить значение функции на отрезке. Результат представить в виде таблицы. - C++
Табулирование функций Составить программу для вычисления значений функции F(x) на отрезке с шагом h. Результат представить в виде...

Вычислить значение выражения в зависимости от выбранной функции - C++
Добрый день,как нужно составить,можете мне помочь в этом,алгоритм задачи? вот условие: Вычислить значение y в зависимости от выбранной...


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

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

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