작성
·
195
0
안녕하세요 이전 질문글에서 교수님이 주신 힌트대로 며칠간 고민해보았지만 아직도 답이 안나와서 너무 답답해서 다시 질문 글을 올리게 되었습니다. 다른 힌트 하나만 더 주실 수 있을까요? 뭔가 알것 같으면서도 이상하게 나오니 답답해요.
저번 강의인 불리언과 if 에서 배운 조건문을 섞어서 내주신 숙제를 살짝 변경해서 해보려고 했습니다.
입력값을 받고 int형인 경우 ascii 의 알파벳으로, 알파벳을 입력 받는 경우 int형으로 출력되게 해보려고 했었습니다.
if에 넣은 내용들은 제대로 값을 출력해주는 반면 else에 해당하는 입력값을 넣으면 빈 숫자가 나오거나 제가 원한 답이 나오질 않습니다.
교수님의 도움을 구하고 싶습니다!
'''#include
int main()
{
using namespace std;cout << "Enter a number or an alphabet character : ";
int a;
char b;
if (cin >> a)
{
cout << a << " " << static_cast<char>(a) << endl;
}
else
{
cout << b << " " << static_cast<int>(b) << endl;
}
return 0;
}'''
if 안에 cin이 있다고 하셔서 이것을 빼서 여러번 시도해 보았지만 뭐가 문젠지 아직 잘 안됩니다.
일단 아래의 코드처럼 시도해보았는데 여전히 문자를 치면 0이라고 나옵니다.
'''#include
int main()
{
using namespace std;cout << "Enter a number or an alphabet character : ";
int a;
cin >> a;
if (a == static_cast<int>(a))
{
cout << a << " " << static_cast<char>(a) << endl;
}
else
{
cout << a << " " << static_cast<int>(a) << endl;
}
return 0;