/*
Obliczenie Min,Max i Średniej
Program prosi o podanie ciągu liczb który użytkownik kończy średnikiem.
Po zakończeniu wprowadzania wypisuje Min, Max i Średnią z podanego ciągu.
funkcja cin.get(); nadaje się nie tylko dla zatrzymania okna przed zamknięciem ;-)
możliwość pominięcia części instrukcji for



















*/
#include <iostream>

using namespace std; // w starszych kompilatorach trzeba zakomentować ten wiersz

int main()
  {
   for(;;) // to samo co while(true)
     {
      unsigned Ilosc=0;
      double Suma=0,Min=0,Max=0;
      while(true)
        {
         cout<<"Podaj liczbe nr "<<(Ilosc+1)<<" (;-koniec): ";
         double X;
         cin>>X;
         if(cin) // to samo co cin.good()
           {
            Suma+=X;
            if(Ilosc)
              {
               if(Min>X) Min=X;
               if(Max<X) Max=X;
              }
            else Min=Max=X;
            ++Ilosc;
           }
         else
           {
            cin.clear();
            if(cin.get()==';') break; // zakończenie ciągu przy wprowadzeniu znaku ;
            cout<<"Blad wprowadzania"<<endl;
           }
         cin.ignore(1024,'\n');
        }
      if(!Ilosc) break; // zakończenie programu jeżeli nic nie zostało wprowadzone
      cout<<"Min="<<Min<<"; Avg="<<(Suma/Ilosc)<<"; Max="<<Max<<';'<<endl<<endl;
     }
   return 0;
  }


