Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 문자열을 문자의 정사각형 행렬 그리드로 변환

<시간/>

이 튜토리얼에서는 문자열을 문자의 정방 행렬 격자로 변환하는 프로그램에 대해 논의할 것입니다.

이를 위해 문자열이 제공됩니다. 우리의 임무는 특정 문자열을 특정 수의 행과 열이 있는 행렬 격자 형식으로 인쇄하는 것입니다.

예시

#include <bits/stdc++.h>
using namespace std;
//converting the string in grid format
void convert_grid(string str){
   int l = str.length();
   int k = 0, row, column;
   row = floor(sqrt(l));
   column = ceil(sqrt(l));
   if (row * column < l)
      row = column;
   char s[row][column];
   for (int i = 0; i < row; i++) {
      for (int j = 0; j < column; j++) {
         s[i][j] = str[k];
         k++;
      }
   }
   //printing the new grid
   for (int i = 0; i < row; i++) {
      for (int j = 0; j < column; j++) {
         if (s[i][j] == '\0')
            break;
         cout << s[i][j];
      }
      cout << endl;
   }
}
int main(){
   string str = "TUTORIALSPOINT";
   convert_grid(str);
   return 0;
}

출력

TUTO
RIAL
SPOI
NT