С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
snoop9x
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 14
#1

Функция с переменным числом параметров - C++

03.12.2010, 21:12. Просмотров 1047. Ответов 4
Метки нет (Все метки)

Написать функцию sum с переменным числом параметров, которая находит сумму заданных обыкновенных дробей. Написать вызывающую функцию main, которая обращается к функции sum не менее трех раз с количеством параметров 5, 10, 12.

уже столько над ней сижу и все ни как не получается, люди добрые помогите!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2010, 21:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция с переменным числом параметров (C++):

Функция с переменным числом параметров находящая максимальный элемент в списке параметров - C++
Написать функцию с переменным числом параметров:Максимальный из элементов в списке параметров, стоящих на нечетных местах....

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

В функция с переменным числом параметров. - C++
В функцию с переменным числом параметров поступают слова, конец списка - указатель NULL. Найти и вывести все слова, которые читаются...

Функция с переменным числом параметров - C++
Написать функцию с переменным числом параметров, которая определяет количество чисел, являющихся точными квадратами (2, 4, 9, 16,. . . )...

Функция с переменным числом параметров - C++
В функцию с переменным числом параметров поступают символы, конец списка - ноль-символ '\ 0'. Найти и вывести символ чаще всего...

Функция с переменным числом параметров - C++
Задача посчитать сокрытые сумму сокрытых аргументов ф-ции. #include<iostream> #include<conio.h> #include<stdarg.h> using namespace...

4
lemegeton
2925 / 1354 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
03.12.2010, 22:28 #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
#include <iostream>
#include <vector>
#include <string>
#include <iomanip>
#include <sstream>
#include <limits>
#include <algorithm>
#include <time.h>
 
using namespace std;
 
int Gcd(int a, int b) { return b == 0 ? a : Gcd(b, a % b); }
 
class fraction
{
    int dividend;
    int divisor;
 
public:
    fraction(int dividend, int divisor) { this->dividend = dividend; this->divisor = divisor; }
 
    fraction &optimize()
    {
        int gcd = Gcd(dividend, divisor);
        dividend /= gcd;
        divisor  /= gcd;
        return *this;
    }
 
 
    fraction &operator=(const fraction &a)
    {
        this->dividend = a.dividend;
        this->divisor = a.divisor;
        return *this;
    }
 
    friend fraction operator+(const fraction &a, const fraction &b)
    {
        fraction f = fraction(a.dividend*b.divisor+a.divisor*b.dividend, a.divisor*b.divisor);
        return f.optimize();
    }
 
    friend ostream &operator<<(ostream &o, fraction &f)
    {
        o << f.dividend << "/" << f.divisor;
        return o;
    }
};
 
fraction sum(fraction *a, ...)
{
    fraction **p = &a;
    fraction s = *(*p++);
    while (*p!=0)
    {
        s = s + **p;
        p++;
    }
    return s;
}
 
int main()
{
    srand(static_cast<unsigned int>(time(0)));
 
    fraction a(rand()%10+1, 5), b(rand()%10+1, 5);
    cout << (a+b) << endl;
    cout << sum(&a, &b, 0) << endl;
 
    system("pause");
}
1
snoop9x
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 14
20.12.2010, 23:28  [ТС] #3
Написать функцию sum с переменным числом параметров, которая находит сумму заданных обыкновенных дробей. Написать вызывающую функцию main, которая обращается к функции sum не менее трех раз с количеством параметров 5, 10, 12.
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
#include "stdafx.h"
#include <iostream>
#include <vector>
#include <string>
#include <iomanip>
#include <sstream>
#include <limits>
#include <algorithm>
#include <time.h>
 
using namespace std;
 
int Gcd(int a, int b) { return b == 0 ? a : Gcd(b, a % b); }
 
class fraction
{
        int dividend;
        int divisor;
 
public:
        fraction(int dividend, int divisor) { this->dividend = dividend; this->divisor = divisor; }
 
        fraction &optimize()
        {
                int gcd = Gcd(dividend, divisor);
                dividend /= gcd;
                divisor  /= gcd;
                return *this;
        }
 
 
        fraction &operator=(const fraction &a)
        {
                this->dividend = a.dividend;
                this->divisor = a.divisor;
                return *this;
        }
 
        friend fraction operator+(const fraction &a, const fraction &b)
        {
                fraction f = fraction(a.dividend*b.divisor+a.divisor*b.dividend, a.divisor*b.divisor);
                return f.optimize();
        }
 
        friend ostream &operator<<(ostream &o, fraction &f)
        {
                o << f.dividend << "/" << f.divisor;
                return o;
        }
};
 
fraction sum(fraction *a, ...)
{
        fraction **p = &a;
        fraction s = *(*p++);
        while (*p!=0)
        {
                s = s + **p;
                p++;
        }
        return s;
}
 
int main()
{
        srand(static_cast<unsigned int>(time(0)));
 
        fraction a(rand()%10+1, 5), b(rand()%10+1, 5);
        cout << (a+b) << endl;
        cout << sum(&a, &b, 0) << endl;
 
        system("pause");
        return 0;
}
что то не работает, помогите исправить...
0
deadlock
376 / 355 / 8
Регистрация: 14.12.2010
Сообщений: 1,265
20.12.2010, 23:30 #4
та же самая задача:
Функции с переменным числом параметров
0
snoop9x
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 14
20.12.2010, 23:35  [ТС] #5
Здесь не совсем то же самое, я не знаю как посчитать сумму обыкновенных дробей. А нельзя ли переделать ту программу под это условие?
0
20.12.2010, 23:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2010, 23:35
Привет! Вот еще темы с ответами:

Функция с переменным числом параметров - C++
Функция с переменным числом параметров. Задание: Среднее арифметическое с елементов в списке параметров ,которые стоят на парных местах.

Функция с переменным числом параметров - C++
Доброе время суток! Решил навести красивость в функции что бы по мимо возврата хеш суммы она еще и печатала она (а то там базу надо...

Функция nok с переменным числом параметров - C++
Написать функцию nok с переменным числом параметров, которая находит наименьшее общее кратное для нескольких чисел

Функция с переменным числом параметров Va_arg - C++
Нужно посчитать количество слов в каждой строке ... va_arg(arg_list , char) не переключает на другой параметр , я не могу обработать...


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

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

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