Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 0
Регистрация: 05.11.2016
Сообщений: 18
1

Перегрузка и шаблоны функций

31.05.2017, 12:42. Показов 1042. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребят, проверьте правильно ли написал.Главное, чтобы удовлетворяла всем условиям!
Выполнить задания третьего семинара
(1. Найти максимальный элемент массива.
2. Найти сумму элементов массива, расположенных до последнего положительного элемента.
3. Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b]. Освободившиеся в конце
массива элементы заполнить нулями.), оформив каждый пункт задания в виде шаблона функции. Все необходимые
данные для функций должны передаваться им в качестве параметров.Использование глобальных переменных в функциях не допускается.
Привести примеры программ, использующих эти шаблоны для типов int, float и double.
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
#include <iostream>
#include <clocale>
#include <conio.h>
 
using namespace std;
template <typename T>
T LookMax(T *Arr, int n)
{
    T max = Arr[0], imax = 0;
    for (int i = 0; i < n; i++) 
    {
        if (max < Arr[i])
        {
            imax = i;
            max = Arr[i];
        }
    }
    return max;
}
template <typename T>
int ResizeMas(T *Arr, int n, int a, int b)
{
    int j = 0;
    for (int i = 0; i < n; i++)
    {
        if (abs(Arr[i]) < a || abs(Arr[i]) > b)
        {
            Arr[j] = Arr[i];
            j++;
        }
    }
    return j;
}
 
int main() 
{
    setlocale(LC_ALL, "Russian");
    int n, i, a, b, j = 0;
    cout << " Введите количество элементов: ";
    cin >> n;
    cout << endl;
    int *Arr = new int[n];
    cout << " Введите элементы массива:";
    for (int i = 0; i < n; i++)
        cin >> Arr[i];
    for (int i = 0; i < n; i++)
        cout << Arr[i] << " ";
    cout << endl;
    cout << "Максимальный элемент массива: " << LookMax(Arr, n) << endl;
    cout << endl;
 
    int ineg = -1;
    for (int i = 0; i < n; i++) 
    {
        if (Arr[i] > 0)
            ineg = i;
    }
    if (ineg == -1)
        cout << "Положительных элементов нет!" << endl;
    else if (ineg == 0)
        cout << "Положительный элемент - первый!" << endl;
    else
    {
        double sum = 0;
        for (int i = ineg - 1; i >= 0; i--)
            sum += Arr[i];
        cout << "Сумма положительных: " << sum << endl;
 
    }
    cout << "Введите границы массива[a, b]: ";
    cin >> a >> b;
    cout << endl;
    cout << "Сжатый массив:" << endl;
 
    for (i = ResizeMas(Arr, n, a, b); i < n; i++)
        Arr[i] = 0;
    for (i = 0; i < n; i++)
        cout << Arr[i] << " ";
    cout << endl;
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.05.2017, 12:42
Ответы с готовыми решениями:

Перегрузка и шаблоны функций
Добрый день. Приведенную нижу задачу нужно оформить в виде шаблонов функций. В одномерном массиве,...

Множественное наследование, Перегрузка функций, Перегрузка операторов, Использование дружественных функций и классов, Использование шаблонов классов
Здравствуйте!!! Я бы хотел попросить помоч решить...ну или скинуть примеры таких задач, если вдруг...

Перегрузка и шаблоны
Для каждого пункта задания создать: 1. Перегружаемые функции для типов int и double 2. Шаблоны...

Перегрузка оператора [] и шаблоны.
Всем доброго времени суток! Проблема такая: есть класс сVector template &lt;class T, int Size&gt;...

0
31.05.2017, 12:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.05.2017, 12:42
Помогаю со студенческими работами здесь

Перегрузка оператора == и шаблоны
Почему присутствие структуры Hard Logic приводит к ошибке компиляции, а структуры SoftLogic — нет?...

Перегрузка операторов и шаблоны
#include &lt;iostream&gt; using namespace std; template &lt;class X, int size&gt; class type { X mas;...

Шаблоны перегрузка ввода/вывода
#include &lt;iostream&gt; #include &lt;assert.h&gt; #include &lt;stdlib.h&gt; using namespace std; template...

Перегрузка операторов через шаблоны
Есть класс дробь, переопределил операторы (внутри класса). В таком случае (дробь оператор что-то)...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru