[ create a new paste ] login | about

Link: http://codepad.org/z7Qsoy3T    [ raw code | output | fork ]

salvador@conclase.net - C++, pasted on Sep 16:
#include <iostream>
using namespace std;

class Cuenta {
  public:
   Cuenta() { for(int i = 0; i < 4; contador[i++] = 0); }
   int &operator[](double n); // (1)
   
   void Mostrar() const;
   
  private:
   int contador[4];  
};

int &Cuenta::operator[](double n) { // (2)
   if(n < 0.001) return contador[0];
   else if(n < 0.01) return contador[1];
   else if(n < 0.1) return contador[2];
   else return contador[3];
}

void Cuenta::Mostrar() const { 
   cout << "Entre      0 y 0.0009: " << contador[0] << endl; 
   cout << "Entre 0.0010 y 0.0099: " << contador[1] << endl; 
   cout << "Entre 0.0100 y 0.0999: " << contador[2] << endl; 
   cout << "Entre 0.1000 y 1.0000: " << contador[3] << endl; 
}
 
int main() {
   Cuenta C;
   
   for(int i = 0; i < 50000; i++) 
      C[(double)rand()/RAND_MAX]++; // (3)
   C.Mostrar();
   
   cin.get();
   return 0;
}


Output:
1
2
3
4
Entre      0 y 0.0009: 55
Entre 0.0010 y 0.0099: 448
Entre 0.0100 y 0.0999: 4503
Entre 0.1000 y 1.0000: 44994


Create a new paste based on this one


Comments: