fork download
  1. #include <array>
  2. #include <iostream>
  3.  
  4. template <std::size_t ROW, std::size_t COL>
  5. using Matrix = std::array<std::array<float, COL>, ROW>;
  6.  
  7. template <std::size_t ROW, std::size_t COL>
  8. Matrix<ROW, COL> div(const Matrix<ROW, COL>& A, const Matrix<ROW, COL>& B)
  9. {
  10. Matrix<ROW, COL> res;
  11. for (std::size_t x = 0; x != ROW; ++x) {
  12. for (std::size_t y = 0; y != COL; ++y) {
  13. res[x][y] = (A[x][y]/B[x][y]);
  14. }
  15. }
  16. return res;
  17. }
  18.  
  19. template <std::size_t ROW, std::size_t COL>
  20. void display(const Matrix<ROW, COL>& m)
  21. {
  22. for (std::size_t x = 0; x != ROW; ++x) {
  23. for (std::size_t y = 0; y != COL; ++y) {
  24. std::cout << m[x][y] << " ";
  25. }
  26. std::cout << std::endl;
  27. }
  28. }
  29.  
  30. int main()
  31. {
  32. Matrix<20, 5> N;
  33. for (std::size_t x = 0; x != 20; ++x) {
  34. for (std::size_t y = 0; y != 5; ++y) {
  35. N[x][y] = 1;
  36. }
  37. }
  38. N = div(N, N);
  39. std::cout << "Displaying N ..." << std::endl;
  40. display(N);
  41. }
Success #stdin #stdout 0s 3456KB
stdin
Standard input is empty
stdout
Displaying  N  ...
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1 
1 1 1 1 1