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

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

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

Шаблон функции для удвоения максимального значения из трех аргументов - C++

16.11.2012, 20:25. Просмотров 529. Ответов 3
Метки нет (Все метки)

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

Шаблон функции для удвоения максимального значения - C++
Помогите написать программу : Напишите программу, которая использует шаблон функции для удвоения минимального значения из трех...

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

Как сделать шаблон функции для определения максимального расстояния между элементами - C++
Написать программу которая использует шаблон функции для определения максимального расстояния между элементами в наборе в 5 элементов....

Шаблон функции с переменным количеством аргументов - C++
Добрый вечер, мне необходимо при помощи шаблона функции реализовать поиск минимального числа(тип данных не известен, количество чисел...

Шаблон с переменным числом аргументов, и возвращаемое значение функции - C++
Здравствуйте! Использую С++11. Хочу возвращать элементы кортежа пытаюсь так, auto Deserialize(unsigned long long i) ->...

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

Вызов функции для определения максимального и мин значения в массиве - C++
Выдает ошибку на строках:r = maxima(a ); и k = minima(a); что делать? #include "iostream" using namespace std; int main()...

Шаблон функции поиска максимального элемента - C++
Шаблон функции поиска максимального элемента массива задается след.образом: template <typename T> T max(T *x, int len) { T max=x; ...

Отсутствует список аргументов для шаблон класса std::vector - C++
Есть функция: LoadFBX(std::vector* pOutVertexVector); на загрузку модели формата FBX в DX. На std::vector выдает ошибку... Что делать?

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Eugine
3 / 3 / 0
Регистрация: 10.11.2012
Сообщений: 63
16.11.2012, 20:54     Шаблон функции для удвоения максимального значения из трех аргументов #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
#include <iostream>
using namespace std;
template<typename Type> void func(Type& arg1, Type& arg2, Type& arg3)
{
    if(arg1 < arg2) {
        if(arg2 > arg3)
            arg2 *= 2;
        else
            arg3 *= 2;
    } else {
        if(arg1 > arg3)
            arg1 *= 2;
        else
            arg3 *= 2;
    }
}
int main(int argc, char* argv[])
{
    int a = 2, b = 4, c = 3;
    cout << a << " " << b << " " << c << endl;
    func<int>(a,b,c);
    cout << a << " " << b << " " << c << endl;
    return 0;
}
Kuzia domovenok
1889 / 1744 / 117
Регистрация: 25.03.2012
Сообщений: 5,922
Записей в блоге: 1
16.11.2012, 20:57     Шаблон функции для удвоения максимального значения из трех аргументов #3
C++
1
2
3
4
5
6
7
template <typename T>
void max3(T& a, T& b, T& c){
if ((a>=b)&&(a>=c)) a*=2;
else
if ((b>=a)&&(b>=c)) b*=2;
else c*=2;
}
darius_man
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 5
16.11.2012, 21:27  [ТС]     Шаблон функции для удвоения максимального значения из трех аргументов #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
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <conio.h>
#include "locale.h"
using namespace std;
template <class T>
T maximum(T value1, T value2, T value3)
{
    if  (value1>value2 && value2>value3) return 2*value1;
    else if (value2>value3 && value3>value1) return 2*value2;
    else if (value3>value2 && value2>value1) return 2*value3;
    else if (value1>value3 && value3>value2) return 2*value1;
    else if (value3>value1 && value1>value2) return 2*value3;
    else if (value2>value1 && value1>value3) return 2*value2;
}
 
int main()
{   setlocale(LC_ALL,"rus");
    int x1,x2,x3;
    cout <<"Введите три целых числа: ";
for (;;)
{   cin >> x1;
if ((x1>0)||(x1<0)) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
};
}
for (;;)
{
    cin >> x2;
    if ((x2>0)||(x2<0)) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
}
}
for (;;)
{
    cin >> x3;
    if ((x3>0)||(x3<0)) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
}
}
    cout <<"Удвоенный максимум равен="
         <<maximum(x1,x2,x3);
 
float t1,t2,t3;
    cout <<"Введите три веществееных  числа: ";
for (;;)
{   cin >> t1;
if ((t1>0)||(t1<0)) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
};
}
for (;;)
{
    cin >> t2;
    if ((t2>0)||(t2<0)) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
}
}
for (;;)
{
    cin >> t3;
    if ((t3>0)||(t3<0)) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
}
}
    cout <<"Удвоенный максимум равен="
        <<maximum(t1,t2,t3);
 
char c1,c2,c3;
    cout <<"Введите символы: ";
for (;;)
{   cin >> c1;
if (c1>0) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
};
}
for (;;)
{
    cin >> c2;
    if (c2>0) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
}
}
for (;;)
{
    cin >> c3;
    if (c3>0) break;
    else {
        cout<<"Некорректный ввод!Давай еще разок";
        cin.clear();
        cin.sync();
}
}
    cout <<"Удвоенный максимум равен="
         <<maximum(x1,x2,x3);
}
Yandex
Объявления
16.11.2012, 21:27     Шаблон функции для удвоения максимального значения из трех аргументов
Ответ Создать тему
Опции темы

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