Advertisement
Toliak

app1

Dec 13th, 2018
389
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.49 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. void transform(int **matrix, int n, int lineIndex)
  4. {
  5.     for (int i = 0; i < n; i++) {
  6.         matrix[lineIndex][i] *= lineIndex;
  7.     }
  8. }
  9.  
  10. int getExpectedLine(int **matrix, int n)
  11. {
  12.     int minIndex = 0;
  13.     int minElement = matrix[0][n - 1];
  14.  
  15.     for (int i = 0; i < n; i++) {
  16.  
  17.         if (matrix[i][n - 1 - i] < minElement) {
  18.             minElement = matrix[i][n - 1 - i];
  19.             minIndex = i;
  20.         }
  21.     }
  22.  
  23.     return minIndex;
  24. }
  25.  
  26. int main()
  27. {
  28.     int n;
  29.     std::cout << "Enter matrix size: ";
  30.     std::cin >> n;
  31.  
  32.     int **matrix = new int *[n];
  33.     for (int i = 0; i < n; i++) {
  34.         matrix[i] = new int[n];
  35.  
  36.         std::cout << "Enter " << i << " line: ";
  37.         for (int j = 0; j < n; j++) {
  38.             std::cin >> matrix[i][j];
  39.         }
  40.     }
  41.  
  42.     int lineIndex = getExpectedLine(matrix, n);
  43.     std::cout << "Result line: " << lineIndex << std::endl;
  44.  
  45.     int **newMatrix = new int *[n];
  46.     for (int i = 0; i < n; i++) {
  47.         newMatrix[i] = new int[n];
  48.  
  49.         for (int j = 0; j < n; j++) {
  50.             newMatrix[i][j] = matrix[i][j];
  51.         }
  52.     }
  53.  
  54.     transform(newMatrix, n, lineIndex);
  55.  
  56.     std::cout << "Result matrix: " << std::endl;
  57.     for (int i = 0; i < n; i++) {
  58.         for (int j = 0; j < n; j++) {
  59.             std::cout << newMatrix[i][j] << ' ';
  60.         }
  61.         std::cout << std::endl;
  62.  
  63.         delete[] newMatrix[i];
  64.     }
  65.     delete[] newMatrix;
  66.  
  67.     std::cout << "Source matrix: " << std::endl;
  68.     for (int i = 0; i < n; i++) {
  69.         for (int j = 0; j < n; j++) {
  70.             std::cout << matrix[i][j] << ' ';
  71.         }
  72.         std::cout << std::endl;
  73.         delete[] matrix[i];
  74.     }
  75.     delete[] matrix;
  76.  
  77.     return 0;
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement