Как сделать сетку в консоле на C++ через for
Задача, чтобы через цикл for в консоль выводилась такая сетка
До этого мы делали треугольники, квадраты, плюсы и крестики, с этим я справился сам, без проблем. Но вот как сделать сеточку, я не особо понимаю. Я бы не хотел просто увидеть код, а хотел бы увидеть пояснения, что нужно сделать и для чего.
Ниже код который примерно должен быть:
case 3:
system("cls");
cout << "[3] Треугольник\n\n";
cout << "[1 | 2] Режим: ";
short mode;
cin >> mode;
cout << "[#] Размер: ";
cin >> size;
cout << "\n\n";
for (;size % 2 == 0;)
{
nCout("Четное значение!", 12);
cout << "[-] Размер: ";
cin >> size;
}
for (int i = 0; i <= size / 2; i++)
{
for (int j = 0; j < size; j++)
{
if (mode == 1)
{
if (j == size / 2 - i || j == size / 2 + i || i == size / 2)
nCout("^", 3);
else
nCout(".", 7);
}
else
{
if (j >= size / 2 - i && j <= size / 2 + i || i >= size / 2)
nCout("^", 3);
else
nCout(".", 7);
}
}
cout << endl;
Ответы (1 шт):
Автор решения: user442584
→ Ссылка
Попробуйте так:
#include <iostream>
using namespace std;
int main()
{
setlocale(LC_ALL, "Ru");
cout << "Введите размерность сетки:";
int 1MeshSize;
cin >> 1MeshSize;
int k = 1;
for (int j = 0; j < 1MeshSize; j++)
{
for (int i = 0; i < 1MeshSize;i++)
{
cout << "_";
cout << "|";
if (k == MeshSize)
{
cout << "_";
}
k++;
}
cout << endl ;
k = 1;
}
for (int i = 0; i < 1MeshSize; i++)
{
cout << " " << "|";
}
}
