Advertisement
wintest

МАТРИЦА: Ненулеви елементи под главния диагонал

Jan 15th, 2017
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.34 KB | None | 0 0
  1. #include <iostream>
  2. #include <clocale>
  3. #include <ctime>
  4. #include <cmath>
  5.  
  6. using namespace std;
  7.  
  8. #define M 5
  9. #define N 5
  10.  
  11. bool differentThanZero(int array[][N], size_t rows);
  12. void fillTheArray(int array[][N], size_t rows);
  13. void printTheArray(int array[][N], size_t rows);
  14.  
  15. int main(){
  16.     setlocale(LC_ALL, "Bulgarian");
  17.     srand(time(NULL));
  18.  
  19.     int array[M][N];
  20.     fillTheArray(array, M);
  21.     printTheArray(array, M);
  22.     cout << endl;
  23.     cout << boolalpha << differentThanZero(array, M);
  24.    
  25.     return 0;
  26. }
  27. //да се провери дали всички елементи под главния диагонал (без него) НЕ са 0. (при откриване на 1 нула прекъсва)
  28. bool differentThanZero(int array[][N], size_t rows){
  29.     for (size_t j = 0; j < N; j++){
  30.         for (size_t i = j+1; i < M; i++)
  31.     {
  32.         if (array[i][j] == 0) return false;
  33.  
  34.         }
  35.     }
  36.     return true;
  37. }
  38.  
  39. void fillTheArray(int array[][N], size_t rows){
  40.     for (size_t i = 0; i < M; i++)
  41.     {
  42.         for (size_t j = 0; j < N; j++){
  43.             array[i][j] = rand() % 10 - 1;
  44.  
  45.         }
  46.     }
  47. }
  48. //принтирам масив
  49. void printTheArray(int array[][N], size_t rows){
  50.     cout << "Оригиналната матрица е това : " << endl;
  51.  
  52.     for (size_t i = 0; i < M; i++)
  53.     {
  54.         for (size_t j = 0; j < N; j++){
  55.             cout << array[i][j] << "\t";
  56.         }
  57.         cout << endl;
  58.     }
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement