tablica w funkcji

0

Witam. Mam do napisania program: "Napisz program, który wyznaczy i wyświetli największą oraz najmniejszą wartość 10 elementowej tabeli, użyj funkcji." Bez funkcji zrobiłem to zadanie jednak z funkcją już mi nie wyszło... Teraz wyrzuca mi błąd cannot be used as function. Być może jest dużo więcej błędów niż mi się wydaje. Proszę bardzo o pomoc w zadaniu. A tu mój kod;

#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int tab[10];
int main()
{
 int najwieksza, najmniejsza;

    srand( time(0)*1000);

    cout << "Losuje 10 liczb do tablicy" << endl;
    for (int i=0; i<10; i++)
    {
        tab[i] = std:: rand()%100;
        cout << tab[i] << "\t";
    }

	cout << endl;

        cout<< "Najwieksza wartosc tablicy;  " << najwieksza(tab) << endl;

        cout<< "Najmniejsza wartosc tablicy:  " << najmniejsza(tab) << endl;
  return 0;
}

int najwieksza(int maximum)
{

    int max;
    max=tab[0];

    for(int i=0;i<10;i++)
    {
       if(tab[i]>max) max=tab[i];
	}
    return max;
}

int najmniejsza(int minimum)
{
    int min;
    min=tab[0];

    for(int i=0;i<10;i++)
    {
	   if(tab[i]<min) min=tab[i];
	}
    return min;
}

2
  1. masz deklarację zmiennych
int najwieksza, najmniejsza;

oraz nazwy funkcji

int najwieksza(int maximum);
int najmniejsza(int minimum);

Musisz wybrać, co ma mieć taką nazwę.
2) W momencie wywołania funkcji (linie z cout) nie są znane ich deklaracje. Kompilator parsuje źródła liniami z góry na dół.
Jeśli powyżej wywołania funkcji, nie ma jej deklaracji, to nie zostanie rozpoznana.
Jeżeli masz kod:

int main() {
    fun();
    return 0;
}

void fun() {
...
}

To będzie on błędny. Powyżej main musi być przynajmniej deklaracja:

void fun();

tab jest zmienną globalną, więc jest dostępna wewnątrz funkcji bez przekazania jako argument.
Jeśli już chcesz to zrobić, to tab nie jest typu int, tylko int nazwa[] lub int* nazwa[1].

[1] Konwersja między typami tablicy i wskaźnika jest dość specyficzna i ma swoją nazwę - array decaying.

1 użytkowników online, w tym zalogowanych: 0, gości: 1