klasscho

Untitled

Nov 25th, 2019
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.95 KB | None | 0 0
  1. #include <fstream>
  2. #include <iostream>
  3. using namespace std;
  4.  
  5. int ReadMatrix()
  6. {
  7. ifstream in("filein.txt");
  8.  
  9. if (in.is_open())
  10. {
  11. int count = 0;
  12. int temp;
  13.  
  14. while (!in.eof())
  15. {
  16. in >> temp;
  17. count++;
  18. }
  19.  
  20. in.seekg(0, ios::beg);
  21. in.clear();
  22.  
  23. int count_space = 0;
  24. char symbol;
  25. bool FirstIt = true;
  26. while (!in.eof() && (FirstIt))
  27. {
  28. in.get(symbol);
  29. if (symbol == ' ') count_space++;
  30. if (symbol == '\n') {
  31. FirstIt = false;
  32. }
  33. }
  34.  
  35. in.seekg(0, ios::beg);
  36. in.clear();
  37.  
  38. int n = count / (count_space + 1);
  39. int m = count_space + 1;
  40. double** x;
  41. x = new double* [n];
  42. for (int i = 0; i < n; i++) x[i] = new double[m];
  43.  
  44. for (int i = 0; i < n; i++)
  45. for (int j = 0; j < m; j++)
  46. in >> x[i][j];
  47.  
  48.  
  49. for (int i = 0; i < n; i++)
  50. {
  51. for (int j = 0; j < m; j++)
  52. cout << x[i][j] << "\t";
  53. cout << "\n";
  54. }
  55.  
  56. for (int i = 0; i < n; i++) delete[] x[i];
  57. delete[] x;
  58.  
  59. in.close();
  60. }
  61. else
  62. {
  63. cout << "File isn't find";
  64. }
  65.  
  66. system("pause");
  67. return 0;
  68. }
  69.  
  70. void Average(int** Matrixx, int n, float* Arr) {
  71. int Sum = 0;
  72. int Amount = 0;
  73. int i, j;
  74. for (int i = 0; i < n; i++) {
  75. for (int j = 0; j < n; j++) {
  76. if ((Matrixx[j, i]) > 0) {
  77. Arr[i] += Matrixx[j][i];
  78. }
  79. for (i = 0; i < n; i++) {
  80. cout << Arr[i] << endl;
  81. Arr[i] /= n;
  82. cout << "The avarage of colums is: " << Arr[i] << endl;
  83. }
  84. }
  85.  
  86. }
  87. }
  88. void WriteToFile(int** Matrixx, char* FName, int n) {
  89. FILE* FileIn = fopen(FName, "w");
  90. for (int i = 0; i <= n; i++) {
  91. for (int j = 0; j <= n; j++) {
  92. fprintf(FileIn, "%d ", Matrixx[i][j]);
  93. }
  94. fprintf(FileIn, "\n");
  95. }
  96. printf("Saved to file: %s", FName);
  97. }
  98.  
  99. int main() {
  100. int** Matrixx;
  101. float* Arr;
  102. int n;
  103. char* FileName;
  104. puts("\nInitial matrix:");
  105. Matrixx = ReadMatrix;
  106. puts("\nThe result after addition::");
  107. Average(Matrixx, n, Arr);
  108. WriteToFile(Matrixx, FileName, n);
  109. return 0;
  110. }
Advertisement
Add Comment
Please, Sign In to add comment