Ярослав Майоров
Мастер
(1325)
2 месяца назад
Этот код рисует прямоугольник с помощью символов "-" (горизонтальные линии), "|" (вертикальные линии) и " " (пробелы).
Логика работы:
1. Ввод данных:
- Пользователь вводит два числа `row` (количество строк) и `col` (количество столбцов) для прямоугольника.
2. Внешний цикл (`for (int row_check = 0; row_check < row; row_check++)`):
- Этот цикл проходит по каждой строке прямоугольника.
- Переменная `row_check` хранит текущий номер строки (начиная с 0).
3. Внутренний цикл (`for (int col_check = 0; col_check < col; col_check++)`):
- Этот цикл проходит по каждому столбцу в текущей строке.
- Переменная `col_check` хранит текущий номер столбца (начиная с 0).
4. Условные операторы (`if`, `else if`, `else`):
- `if (row_check == 0 || row_check == row - 1)`:
- Если текущий номер строки равен 0 (первая строка) или равен `row - 1` (последняя строка), выводится символ "-". Это формирует горизонтальные линии прямоугольника.
- `else if (col_check == 0 || col_check == col - 1)`:
- Если текущий номер столбца равен 0 (первый столбец) или равен `col - 1` (последний столбец), выводится символ "|". Это формирует вертикальные линии.
- `else`:
- В остальных случаях, когда текущая строка не является первой или последней, а текущий столбец не является первым или последним, выводится пробел (" ").
5. Вывод новой строки (`cout << "\n";`):
- После прохода по всем столбцам в строке, выводится символ новой строки, чтобы перейти к следующей строке прямоугольника.
Пример:
Если пользователь введет `row = 3` и `col = 4`, то программа напечатает:
----
| |
----
Важно отметить:
- Код просто рисует прямоугольник, используя символы для линий. Он не создает реальный прямоугольник, а только отображает его на экране.
- Можно легко изменить символы, используемые для рисования прямоугольника, просто заменив "-" на другой символ (например, "*").
#include <iostream>
#include <string>
using namespace std;
int main() {
int row, col;
cin >> row >> col;
for (int row_check = 0; row_check < row; row_check++) {
for (int col_check = 0; col_check < col; col_check++) {
if (row_check == 0 || row_check == row - 1) {
cout << "-";
}
else if (col_check == 0 || col_check == col - 1) {
cout << "|";
}
else {
cout << " ";
}
}
cout << "\n";
}
return 0;
}
// row - номер строки, col - номер столбца