Cześć! Mam do napisania program, gdzie mam podaną tablicę z danymi (wyniki firmy w danym miesiącu). Liczę średnią wartości z tablicy, wyszukuję największą i najmniejszą wartość oraz w ilu miesiącach dane były mniejsze od zera i ile tych miesięcy było. Do tego momentu nie ma żadnego problemu, ale później mam zapytać użytkownika, czy chce zmienić jakąś daną i jeśli tak wprowadzić ją i wykonać ponownie obliczenia ze zmienionymi danymi. Nie wiem jak zrobić, żeby program nie korzystał z początkowych danych tylko liczył z tymi nowymi. Kod niestety jest mało czytelny z powodu mnóstwa prób rozwiązania tego problemu. Bardzo proszę o pomoc
#include <iostream> using namespace std; void maxmin() { int i, ma, mi,tab[12]={-128,48,72.5,150.5,10,321,134,12,185.9,-54,100,332}; ma=tab[0]; mi=tab[0]; for(i=0; i<12; i++) { if (mi>tab[i]) mi=tab[i]; if (ma<tab[i]) ma=tab[i]; } cout<<"min = "<<mi<<" max= "<<ma<<endl; } int srednia() { int i, tab[12]={-128,48,72.5,150.5,10,321,134,12,185.9,-54,100,332}; int suma=0; for (i=0; i<12; i++) { suma+=tab[i]; } float srednia=(suma/12); return srednia; } void straty() { int i,tab[12]={-128,48,72.5,150.5,-10,321,134,12,185.9,-54,100,332}; int ile=0; cout<<"straty wystapily w miesiacach:"<<endl; for(i=0;i<12;i++) { if(tab[i]<0) {ile=ile+1; cout<<i+1<<endl;} } cout<<"czyli w "<<ile<<" miesiacach"<<endl; } void zmiana(int tab[12]) { int x; cout<<"Dane z ktorego miesiaca chcesz zmienic?"<<endl; cin>>x; cout<<"podaj nowa wartosc: "<<endl; cin>>tab[x-1]; cout<<tab[x-1]<<endl; for(int i=0; i<12; i++) cout<<tab[i]<<endl; } int main() { int i, s, x, c; char z; int tab[12]={-128,48,72.5,150.5,10,321,134,12,185.9,-54,100,332}; maxmin(); cout<<"srednia= "<<srednia()<<endl; straty(); cout<<"czy chcesz zmienic dane?"; cin>>z; if(z=='t') { zmiana(tab); } else return 0; }