본문 바로가기
프로그래밍 언어 문제/코딩테스트(코드업)_C언어, C++

코드업 1008번 문제 풀이

by 썬's 2023. 3. 28.

안녕하세요 보글리아입니다.

이번 시간에는 코드업 1008번 문제 풀이를 하겠습니다.

※본 풀이는 C언어가 아닌 C++를 기반으로 하는 점 양해 부탁드립니다※

 


문제

이번에는 특수문자를 출력하는 연습을 해보자.

키보드로 입력할 수 없는 다음 모양을 출력해 보자.
(** 참고 : 운영체제의 문자 시스템에 따라 아래와 같은 모양이 출력되지 않을 수 있다.)

┌┬┐
├┼┤
└┴┘

참고
다음과 같은 유니코드로 특수문자를 표현한다고 하자.
(운영체제 또는 컴파일러에 따라 사용되는 문자의 코드표가 다르다.)
윈도우에서는 "ㅂ+한자" 키를 누르면 선문자를 입력할 수 있다.
선문자를 이용하면 일반적인 텍스트 모드화면(메모장 등)에서도 표를 그릴 수 있다.

유니코드 특수문자를 출력하는 방법,
...
printf("\u250C\u252C\u2510\n");
...

┌┬┐
├┼┤
└┴┘

** 주의 : 본 화면에서 복사하여 붙여 넣기 하면 제대로 되지 않을 수 있으니 직접 소스코드를 작성해 넣어야 한다.

 


풀이

문제 풀이 전 : 일단 이 문제 이해가 조금 헷갈릴 수 있는데요... 상단 모양을 ㅂ + 한자키를 눌러 나오는 기호를 조합해 상단 모양을 만드는 게 아닌 유니코드로 만드셔야 합니다!!

유니코드란 쉽게 말해 다양한 기호와 이모티콘 등을 표현할 수 있는 글자 코드입니다.

유니코드는 워낙 많고 다양하기 때문에 유니코드 표는 검색으로 찾으시면 됩니다.

 

  1. C++의 출력 기능인 cout을 사용. 이때 endl로 들여 쓰기는 사용하지 않는다.
  2. 상단 모양에 적합한 유니코드는 하단에 보는 것과 같다.
  3. 그대로 출력하면 상단 모양이 나온다.

 

#include <iostream>
using namespace std;

int main()
{
	cout << "\u250C\u252C\u2510\n";
	cout << "\u251C\u253C\u2524\n";
	cout << "\u2514\u2534\u2518\n";

	return 0;
}

댓글