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

прототип функции - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
fruktik
 Аватар для fruktik
32 / 32 / 3
Регистрация: 03.03.2011
Сообщений: 302
16.03.2011, 16:33     прототип функции #1
сделал стандуртную программу нахождения max в массиве с помощью фунцкции...
а как переделать программу чтобы перед главной фунцией, подфункцию поиска макс эл-та описать прототипом, а тело функции впихнуть уже после int main()
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 "stdafx.h"
#include <iostream>
using namespace std;
const int n = 4;;
int maxim(int mas[n])
{
    int max ;
    max = mas[1];
    for (int i = 0; i < n; i++)
    {
        if (mas[i] > max)
            max = mas[i];
    }
    return max;
}
    int main()
{
    int mas[4];
    for (int i = 0; i < n; i++)
        cin >> mas[i];
    cout << maxim(mas);
    system ("pause");
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2011, 16:33     прототип функции
Посмотрите здесь:

Прототип функции C++
C++ Прототип функции С++
Прототип функции C++
C++ Прототип функции
Прототип функции C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MILAN
 Аватар для MILAN
883 / 777 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
16.03.2011, 16:37     прототип функции #2
fruktik,
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;
const int n = 4;
int maxim(int mas[n]);
int main()
{
        int mas[4];
        for (int i = 0; i < n; i++)
                cin >> mas[i];
        cout << maxim(mas);
        system ("pause");
 
}
int maxim(int mas[n])
{
        int max ;
        max = mas[1];
        for (int i = 0; i < n; i++)
        {
                if (mas[i] > max)
                        max = mas[i];
        }
        return max;
}
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16843 / 5264 / 323
Регистрация: 30.03.2009
Сообщений: 14,159
Записей в блоге: 26
16.03.2011, 16:38     прототип функции #3
C++
1
2
3
4
5
6
7
8
9
10
11
int maxim(int mas[n]); // Это прототип
 
main()
{
...
}
 
int maxim(int mas[n])
{
  // тело функции
}
fruktik
 Аватар для fruktik
32 / 32 / 3
Регистрация: 03.03.2011
Сообщений: 302
16.03.2011, 16:59  [ТС]     прототип функции #4
МНЕ еще нужно минимальный в одной проге искать...нельзя ли как-нибудь прогу поменьше сделать)...чтоб кода не было столько
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16843 / 5264 / 323
Регистрация: 30.03.2009
Сообщений: 14,159
Записей в блоге: 26
16.03.2011, 17:12     прототип функции #5
Есть такое понятие, как "экономить на спичках" - это когда разводят геморрой ради того, чтобы сэкономить совсем не много и, как правило, не понятно ради чего. Так вот ты сейчас хочешь примерно того же (если я правильно понимаю суть вопроса)
fruktik
 Аватар для fruktik
32 / 32 / 3
Регистрация: 03.03.2011
Сообщений: 302
16.03.2011, 17:23  [ТС]     прототип функции #6
в данном случае я хочу сэкономить, но совсем не для отдельно этой программы....в контексте я имел ввиду более наглядное и краткое представление моих действий, более рациональное даже может быть....чтобы в дальнейшем использовать это рациональное решение для следующих задач....если конечно это решение существует)
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16843 / 5264 / 323
Регистрация: 30.03.2009
Сообщений: 14,159
Записей в блоге: 26
16.03.2011, 17:30     прототип функции #7
Да тут экономить не на чем, у тебя и так программа проще некуда
fruktik
 Аватар для fruktik
32 / 32 / 3
Регистрация: 03.03.2011
Сообщений: 302
16.03.2011, 17:37  [ТС]     прототип функции #8
Evg, ок. спасибо
именно за такими ответами я и веду охоту на форуме...потому что с си связался совсем недавно...
мне-то в принципе нужно "здесь проще уже некуда".....или "попробуй вот так"(если есть варианты еств)
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16843 / 5264 / 323
Регистрация: 30.03.2009
Сообщений: 14,159
Записей в блоге: 26
16.03.2011, 17:50     прототип функции #9
Только для порядку "max = mas[1]" исправь на "max = mas[0]", потому что при n=1 у тебя будет выход за границу массива. А вот "i = 0" после этого можно будет заменять на "i = 1" и сэкономить одну итерацию цикла на исполнении
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
16.03.2011, 17:56     прототип функции #10
Цитата Сообщение от fruktik Посмотреть сообщение
нельзя ли как-нибудь прогу поменьше сделать
Да не вопрос!
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
int * max(int * arr, size_t size){ return size < 2 ? arr : *(arr + size - 1) > *arr ? max(++arr, --size) : max(arr, --size); }
int * min(int * arr, size_t size){ return size < 2 ? arr : *(arr + size - 1) < *arr ? min(++arr, --size) : min(arr, --size); }
void dump(int * arr, size_t size){ while ( size-- ) printf("%d ", *arr++); }
#define SIZE 5
int main(void){
    int arr[SIZE] = { 5, 3, 1, 2, 4 };
    printf("Array: ");
    dump(arr, SIZE);
    printf("\nMin: %d\nMax: %d\n", *min(arr, SIZE), *max(arr, SIZE));
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2011, 18:33     прототип функции
Еще ссылки по теме:

прототип функции C++
C++ Прототип функции
C++ Прототип функции

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

Или воспользуйтесь поиском по форуму:
fruktik
 Аватар для fruktik
32 / 32 / 3
Регистрация: 03.03.2011
Сообщений: 302
16.03.2011, 18:33  [ТС]     прототип функции #11
easybudda, а как-нибудь с объяснением можно?)если не сложно
Yandex
Объявления
16.03.2011, 18:33     прототип функции
Ответ Создать тему
Опции темы

Текущее время: 22:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru