#include <iostream>
#include <iomanip>
using namespace std;
// Размеры окна
const int WIDTH = 80;
const int HEIGHT = 10;
// Цветовая палитра
#define COLOR_BG "\033[44m"
#define COLOR_TEXT "\033[37m"
#define RESET "\033[0m"
// Функция рисования букв (ASCII art)
void drawLetter(char letter, int posX, int posY) {
switch(letter) {
case 'И':
cout << setw(posX+1) << "" << COLOR_TEXT << "#" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "#" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "#" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "######" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "#" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "#" << endl;
break;
case 'В':
cout << setw(posX+1) << "" << COLOR_TEXT << "#####" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "#######" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
break;
case 'А':
cout << setw(posX+1) << "" << COLOR_TEXT << " #####" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << " # #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << " ########" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
break;
case 'Н':
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "########" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
break;
case 'О':
cout << setw(posX+1) << "" << COLOR_TEXT << " #####" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << "# #" << endl;
cout << setw(posX+1) << "" << COLOR_TEXT << " #####" << endl;
break;
default:
break;
}
// Заполняем оставшуюся высоту пустым пространством
while(HEIGHT > posY + 6) {
cout << setw(posX+1) << "" << endl;
++posY;
}
}
// Основная функция для рисования имени
void drawName(const string& name) {
int currentPosX = 1;
for(auto ch : name) {
drawLetter(ch, currentPosX, 0);
currentPosX += 8; // смещение следующей буквы вправо
}
}
int main() {
cout << COLOR_BG << endl; // Устанавливаем синий фон
drawName("ИВАНОВ"); // Имя для вывода
cout << RESET << endl; // Возвращаемся к обычному стилю вывода
return 0;
}