Tobiahao

Histogram

May 7th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.01 KB | None | 0 0
  1. /*
  2. Stworzyc histogram pliku binarnego
  3. */
  4.  
  5. // W pliku binarnym znajduja sie liczby od 0-9
  6.  
  7. #include <iostream>
  8. #include <fstream>
  9. using namespace std;
  10.  
  11. int main()
  12. {
  13.     int liczby[10]; // Tablica wszystkich liczb
  14.     memset(liczby, 0, sizeof(int)*10); // Wyzerowanie tablicy
  15.  
  16.     ifstream plik; // Deklaracja strumienia do odczytania pliku
  17.     plik.open("plik.bin", ios::binary); // Otworzenie pliku
  18.    
  19.     if(!plik.is_open()){ // Sprawdzenie czy otworzono plik
  20.         cerr << "Blad przy otwieraniu pliku" << endl;
  21.         return -1;
  22.     }
  23.    
  24.     int bufor;
  25.     while(!plik.eof()){
  26.         plik.read(reinterpret_cast<char*>(&bufor), sizeof(bufor)); // Zapisanie wartosci do bufora
  27.         liczby[bufor]++; // Inkrementacja wartosci w tablicy wszystkich liczb
  28.     }
  29.    
  30.     for(int i = 0; i < 10; i++){ // Petle wypisujace histogram
  31.         for(int j = 0; j < liczby[i]; j++)
  32.             cout << i << " ";
  33.         cout << endl;
  34.     }
  35.    
  36.     plik.close(); // Zamkniecie pliku
  37.     return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment