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

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

Войти
Регистрация
Восстановить пароль
 
STyDeNTuK
30 / 12 / 3
Регистрация: 22.09.2009
Сообщений: 157
#1

написать программу демонстрирующую перегрузку функций - C++

12.12.2011, 01:07. Просмотров 739. Ответов 10
Метки нет (Все метки)

Функция нахождения минимального элемента массива(целочисленного , вещественного). Помогите плиз, что то не пойму как написать.

Добавлено через 19 минут
что мне передать в функцию в качестве параметров?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2011, 01:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос написать программу демонстрирующую перегрузку функций (C++):

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

Используя перегрузку функций, написать программу определения максимального значения элемента массива разного типа - C++
Используя перегрузку функций, написать программу определения максимального значения элемента массива разного типа

Массив: Используя перегрузку функций, написать программу определения минимального значения элемента массива разного типа - C++
Используя перегрузку функций, написать программу определения минимального значения элемента массива разного типа

написать перегрузку функций - C++
Помогите написать перегрузку функций на с++ #include "stdafx.h" #include<iostream> #include<time.h> #include<stdlib.h> using...

ФУНКЦИИ/Используя перегрузку функций, написать - C++
#include "stdafx.h" #include "stdio.h" #include "conio.h" #define n 5 int func1(int a, int i) { return(a); ...

Написать класс по строительству домов. Написать программу, демонстрирующую работу с классом. - C++
Собственно, в С++ немного насасываю, код читать умею, а прогать - нет. К сожалению, обстоятельства сложились так, что я поступил именно...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
12.12.2011, 01:09 #2
int Func(float, float)
int Func(int, int)

Вот пример перегрузки функции.
0
STyDeNTuK
30 / 12 / 3
Регистрация: 22.09.2009
Сообщений: 157
12.12.2011, 01:14  [ТС] #3
это я в курсе, но как мне эту хрень с массивами провернуть
0
hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
12.12.2011, 01:25 #4
int Func(int Array[5][1]);

так разве не работает? Ты передаешь элемент массива в функцию которая, как я понимаю будет производит поиск мин. эл. функции.
0
STyDeNTuK
30 / 12 / 3
Регистрация: 22.09.2009
Сообщений: 157
12.12.2011, 01:33  [ТС] #5
но мне то нужно весь массив передать а не один элемент, либо создавать и заполнять массив внутри функции
0
DU
1483 / 1059 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
12.12.2011, 01:48 #6
для передачи массива в ф-ию достаточно в ф-ию передать указатель на первый элемент и размер массива. если нужна перегрузка для целочисленных и вещественных массивов, то вот так:
C++
1
2
float GetMinElement(const float* array, unsigned arraySize) {...}
int GetMinElement(const int* array, unsigned arraySize) { ...}
0
hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
12.12.2011, 02:18 #7
ну у меня пока только такие идеи, но результат не тот который хотел(
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
#include <iostream>
using namespace std;
 
int Mas[3][2]={1,2,3,4,5,6};
int Func(int);
 
int main()
{
setlocale(LC_ALL,"russian");
 
int Func(int);
 
 
 
system("pause");
return 0;
}
 
int Func(int)
{
    int b;
    b=Mas[0][0];
    for(int i=0, j=0; i<2, j<1; i++, j++)
    {
        if(b<Mas[i][j])
            b=Mas[i][j];
    }
    cout<<b;
    return 0;
}
Добавлено через 30 минут
Реализовал твою идею.
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
#include <iostream>
using namespace std;
 
int Mas[2][2]={9,2,3,1};
int Func(int);
 
int main()
{
setlocale(LC_ALL,"russian");
int a, b;
 
for(int i=0; i<2; i++)
    {
        for(int j=0;j<2;j++)
        {
            a=Mas[i][j];
        }
    }
b=Func(a);
cout<<b;
 
system("pause");
return 0;
}
 
 
int Func(int a)
{
    int b=a;
        if(b<a)
            b=a;
    return b;
}
Ты ведь это хотел сделать?
0
easybudda
Модератор
Эксперт CЭксперт С++
9627 / 5575 / 947
Регистрация: 25.07.2009
Сообщений: 10,710
12.12.2011, 02:19 #8
Цитата Сообщение от STyDeNTuK Посмотреть сообщение
Функция нахождения минимального элемента массива(целочисленного , вещественного).
min_element()
0
Vidok
37 / 37 / 2
Регистрация: 03.09.2011
Сообщений: 279
12.12.2011, 02:27 #9
Глобальный массив лучше не делать, пусть будет все локально, особенно для больших проектов это плохо. Для перегрузки можно использовать разные типы или разные комбинации типов, то есть
C++
1
double func(double,double), double func(int,double), double func(double,int)
и т.д.
C++
1
double *mas = new double[10]
это у нас массив с 10 элементов. И передаем mas в функцию. После использования массива удаляем его.
0
hoot
100 / 21 / 3
Регистрация: 10.11.2010
Сообщений: 193
12.12.2011, 02:59 #10
Извиняюсь, предыдущий код не совсем корректно работал.
Вот код с исправлениями:
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
#include <iostream>
using namespace std;
 
int Func(int, int);
 
int main()
{
setlocale(LC_ALL,"russian");
int Mas[3][3]={9,1,3,2,5,0,11,15,7};
int a, b, r;
b=Mas[0][0];
for(int i=0; i<3; i++)
    {
        for(int j=0;j<3;j++)
        {
            a=Mas[i][j];
            b=Func(a, b);
        }
}
cout<<b;
 
system("pause");
return 0;
}
 
 
int Func(int a, int b)
{
        if(b>a)
        {
            b=a;
        }
    return b;
}
0
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
12.12.2011, 03:59 #11
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
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
 
int getMin(int[], const int &);
float getMin(float[], const int &);
 
int main() {
 
    const int size = 5;
    int myIntArr[size] = { 2, 1, 4, 5, 3 };
    float myFloatArr[size] = { 2.1, 1.4, 1.5, 5.2, 3.1 };
 
    cout << "Min value in INT array is   :: " << getMin(myIntArr, size) << endl;
    cout << "Min value in FLOAT array is :: " << getMin(myFloatArr, size);
 
    cin.get();
    return 0;
}
 
int getMin(int intArr[], const int &size) {
    int min = intArr[0];
    for (int i = 1; i < size; ++i) {
        if (intArr[i] < min) {
            min = intArr[i];
        }
    }
    return min;
}
 
float getMin(float floatArr[], const int &size) {
    float min = floatArr[0];
    for (int i = 1; i < size; ++i) {
        if (floatArr[i] < min) {
            min = floatArr[i];
        }
    }
    return min;
}
Добавлено через 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
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
 
template<typename T> T getMin(T[], const int &);
 
int main() {
    setlocale(LC_ALL, "russian");
    const int size = 5;
    int myIntArr[size] = { 2, 1, 4, 5, 3 };
    float myFloatArr[size] = { 2.1, 1.4, 1.5, 5.2, 3.1 };
    double myDoubletArr[size] = { 2.12, 1.99, 1.52, 5.27, 3.13 };
    char myCharArr[size] = { 'a', 'c', 'f', 'n', 'e' };
 
    cout << "Min value in INT array is    :: " << getMin(myIntArr, size) << endl;
    cout << "Min value in FLOAT array is  :: " << getMin(myFloatArr, size) << endl;
    cout << "Min value in DOUBLE array is :: " << getMin(myDoubletArr, size) << endl;;
    cout << "Min value in CHAR array is   :: " << getMin(myCharArr, size);
    //  and so on
 
    cin.get();
    return 0;
}
 
template<typename T> T getMin(T arr[], const int &size){
    T min = arr[0];
        for (int i = 1; i < size; ++i) {
            if (arr[i] < min) {
                min = arr[i];
            }
        }
        return min;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2011, 03:59
Привет! Вот еще темы с ответами:

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

Написать программу, демонстрирующую работу функции - C++
Пожалуйста, помогите написать программу, демонстрирующую работу функции которая в зависимости от введенного параметра в строке 1) меняет...

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

Написать программу, демонстрирующую работу с объектами двух типов - C++
Написать программу, демонстрирующую работу с объектами двух типов: Т1 и Т2, для чего создать систему соответствующих классов. Каждый объект...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
12.12.2011, 03:59
Ответ Создать тему
Опции темы

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