Moje zadanie to wprowadzić ręcznie liczby do tablicy, a potem za pomocą funkcji znaleźć największą liczbę z tablicy. Nie działa do końca poprawnie bo pokazuje cały czas pierwszy element tablicy, a program wyświetla w dodatku komunikat że przy wywoływaniu funkcji używam zmiennej max, która nie była inicjowana (a przecież jest w funkcji).
Proszę o pomoc
#include <iostream>
using namespace std;
float max_value(float* tab, unsigned int ilosc)
{
float max;
float x = tab[0];
for (int l=0; l<ilosc; l++)
{
if(x>max)
max=tab[l];
else
max=x;
}
return max;
}
int main()
{
unsigned int ilosc;
cout<<"Podaj ile liczb chcesz wprowadzic: ";
cin>>ilosc;
cout<<endl;
float* tab = new float[ilosc];
int i;
for (i=0; i<ilosc; i++)
{
cout<<"Podaj "<<i+1<<" liczbe: ";
cin>>tab[i];
}
cout<<"Najwieksza liczba sposrod podanych to: "<<max_value(tab,ilosc)<<endl;
delete [] tab;
system ("PAUSE");
return 0;
}