Advertisement
Zyazev

Бинарные файлы 4

Mar 12th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.37 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cmath>
  4. using namespace std;
  5. void main()
  6. {
  7. int x; int min=99; int max=-99; double summa=0; double kol=0; double sred=0;double otkl=0;
  8. setlocale(LC_ALL, "Russian");
  9. ofstream outbin("out.bin", ios::binary);
  10. if (!outbin)
  11. {
  12. cout<<"Не возможно открыть файл"<<endl;
  13. exit(1);
  14. }
  15. cout<<"Вводите целые числа для первого бинарного файла. Число 9999-конец ввода"<<endl;
  16. while (cin>>x&&x!=9999)
  17. outbin.write((char*)&x, sizeof(int));
  18. outbin.close();
  19. ifstream inbin("out.bin",ios::binary);
  20. while (inbin.peek()!=EOF)
  21. {
  22. inbin.read((char*)&x, sizeof(int));
  23. summa+=x; kol++;
  24. if(x>max)
  25. max=x;
  26. if(x<min)
  27. min=x;
  28. }
  29. sred=summa/kol;
  30. inbin.clear();
  31. inbin.seekg(0);
  32. while (inbin.peek()!=EOF)
  33. {
  34. inbin.read((char*)&x, sizeof(int));
  35. otkl+=(x-sred)*(x-sred);
  36. }
  37. otkl=sqrt(otkl/(kol-1));
  38. inbin.close();
  39. cout<<"Значение минимальной компоненты: "<<min<<", а значение максимальной компоненты: "<<max<<endl;
  40. cout<<"Сумма компонент: "<<summa<<", среднее значение: "<<sred<<", отклонение: "<<otkl<<endl;
  41. system("pause");
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement