Computer >> Máy Tính >  >> Lập trình >> C ++

Tìm Mô hình của 1 bên trong 0 bằng C ++

Trong bài viết này, chúng tôi cung cấp các giá trị của một số hàng và một số cột. Chúng tôi cần in Mẫu hộp sao cho 1 được in trên hàng đầu tiên, cột đầu tiên, hàng cuối cùng, cột cuối cùng và 0 được in trên các phần tử còn lại. Ví dụ -

Input : rows = 5, columns = 4
Output :
   1 1 1 1
   1 0 0 1
   1 0 0 1
   1 0 0 1
   1 1 1 1

Input : rows = 8, columns = 9
Output :
   1 1 1 1 1 1 1 1 1
   1 0 0 0 0 0 0 0 1
   1 0 0 0 0 0 0 0 1
   1 0 0 0 0 0 0 0 1
   1 0 0 0 0 0 0 0 1
   1 0 0 0 0 0 0 0 1
   1 0 0 0 0 0 0 0 1
   1 1 1 1 1 1 1 1 1

Phương pháp tiếp cận để tìm ra giải pháp

Một cách tiếp cận đơn giản có thể là lặp lại mọi hàng và cột và kiểm tra xem phần tử có nằm trong hàng đầu tiên, cột đầu tiên, hàng cuối cùng và cột cuối cùng hay không; nếu có, in ‘1’; nếu không, chúng ta đang ở bên trong đường viền in ‘0’. Bằng cách này, chúng ta có thể tạo một mẫu hộp theo cách chúng ta muốn.

Ví dụ

using namespace std;

#include <bits/stdc++.h>
// Function to print pattern
void create_pattern (int rows, int columns) {

   int i, j;
   for (i = 1; i <= rows; i++) {
      for (j = 1; j <= columns; j++) {
      // If element is in first/last row or first/last column
         if (i == 1 || i == rows || j == 1 || j == columns) {
            cout << " 1";
         } else {
            cout << " 0";
         }
      }
      cout << "\n";
   }
   return;
}

int main () {
   int no_of_rows = 7;
   int no_of_columns = 8;

   create_pattern (no_of_rows, no_of_columns);
   return 0;
}

Đầu ra

1 1 1 1 1 1 1 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1

Giải thích về đoạn mã trên

  • Gọi hàm create_pattern () với các giá trị là số hàng và số cột
  • Vòng lặp bên ngoài for (i =1; i <=row; i ++) để lặp lại từ 1 đến hàng để chuyển qua các hàng.
  • Vòng lặp bên trong cho (j =1; j <=cột; j ++) để lặp qua 1 đến cột để chuyển qua các cột.
  • Kiểm tra xem phần tử (i ==1 || i ==row || j ==1 || j ==cột) nằm trong hàng đầu tiên / cuối cùng hoặc in cột đầu tiên / cuối cùng '1' cho có và ‘0’ không.

Kết luận

Trong bài viết này, chúng tôi giải quyết các mẫu hộp in từ số hàng và cột đã cho, tức là mẫu của 1 bên trong 0 của. Chúng tôi cũng đã tạo một chương trình C ++ để giải quyết vấn đề này. Chúng tôi có thể tạo cùng một chương trình từ nhiều ngôn ngữ khác nhau như C, java, python, v.v. Hy vọng bạn thấy bài viết này hữu ích.