С++
Напишите программу, которая рисует с помощью символьной графики прямоугольную рамку. Для вертикальных линий используйте символ вертикального штриха «|», а для горизонтальных — дефис «-». Пусть пользователь вводит ширину и высоту рамки.

Ответы

Ответ дал: vimmortal2
0

Программа:

С++:

#include <iostream>

using namespace std;

int main() {

   int width, height, row, col;

   const string vertical = "|", horizontal = "-";

   cout << "Ширина рамки: ";  cin >> width;

   cout << "Высота рамки: ";  cin >> height;

   

   for(row = 1; row <= height; row++) {

       for(col = 1; col <= width; col++) {

           if(col == 1 or col == width)

               cout << vertical << " ";

           else if(row == 1 or row == height)

               cout << horizontal << " ";

           else

               cout << "  ";

       }

       cout << "\n";  

   }

   return 0;

}

Объяснение:

В начале регистрируем переменные целочисленного типа для будущего использования: width - ширина рамки, height - высота рамки, row - строка (в цикле), col - столбец (в цикле). Далее регистрируем константы используемых знаков (штрих и дефис). Пользователь вводит ширину и высоту самой рамки (не того, что внутри).

Далее основной код вывода рамки. С помощью цикла row принимает значения от 1 до height, col принимает значения от 1 до width. Если текущая колонка равна единице или она равна width, выводим вертикальную штриховку и пробел (для красоты). Далее, если текущая строка равна единице или она равна height, выводим горизонтальный дефис и пробел (для красоты). А если эти обе проверки не выполняются, выводим два пробела - это рамка внутри. А каждую строку мы переходим на новую строчку вниз.

Результат:

Ширина рамки: 6

Высота рамки: 6

| - - - - |

|         |

|         |

|         |

|         |

| - - - - |

#SPJ1

Приложения:
Вас заинтересует