문제] 문자의 마법사
당신은 문자의 마법사가 되어, 사용자가 생각하는 문자를 알아맞히는 프로그램을 만들고자 합니다. 사용자는 알파벳 중 하나를 마음속으로 생각하고, 당신의 프로그램은 그 문자를 입력받아 화면에 출력해야 합니다. 이 마법 같은 순간을 위한 프로그램을 작성해 보세요.
요구 사항:
- 프로그램은 사용자에게 알파벳 중 하나를 생각하라고 안내합니다.
- 사용자가 문자를 입력하면, 프로그램은 "당신이 생각한 문자는 [입력받은 문자]입니다!"라고 출력합니다.
- 입력과 출력은 명확하고 사용자 친화적이어야 합니다.
위의 문제를 각 프로그래밍 언어를 이용하여 문제 풀이를 진행해 봅니다.
1.C언어
#include <stdio.h>
int main() {
char secretChar; //변수 선언하기
// 사용자로부터 숫자 입력 받기
printf("알파벳 중 하나를 마음속으로 생각해보세요.\n");
printf("생각한 문자를 입력해주세요: ");
scanf(" %c",&secretChar); //문자 입력 받을 때는 서식 문자 %ㅊ를 사용한다.
//입력받은 문자 출력
printf("당신이 생각한 문자는 %c입니다!",secretChar);
return 0;
}
C언어에서는 문자를 입력 받을 때 서식문자 %c를 사용합니다.
여기서 주의 할 점은 입력 받을 때는 %c 앞에 반드시 공백을 두어야 이전 입력의 엔터를 무시하게 됩니다.
출력할때 서식문자는 입력과 마찬가지로 %c 입니다.
2.C++언어
#include <bits/stdc++.h>
using namespace std;
int main() {
int secretChar; //변수 선언하기
// 사용자로부터 숫자 입력 받기
cout << "알파벳 중 하나를 마음속으로 생각해보세요.\n";
cout << "생각한 문자를 입력해주세요: ";
cin >> secretChar;
//입력받은 문자 출력
cout << "당신이 생각한 숫자는 "<< secretChar << "입니다!";
return 0;
}
C++ 언어의 입력과 출력은 서식문자를 사용하지 않고 >> 연산자(입력스트림)과 << 연산자(출력스트림) 을 사용하여 입/출력을 하면 변수의 자료형에 맞게 입력과 출력이 됩니다.
3. Java
import java.util.Scanner;
public class MagicCharacter {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 사용자에게 문자 입력을 요청합니다.
System.out.println("알파벳 중 하나를 마음속으로 생각해보세요.");
System.out.print("생각한 문자를 입력해주세요: ");
// 사용자로부터 문자를 입력받습니다.
char secretChar = scanner.next().charAt(0);
// 입력받은 문자를 출력합니다.
System.out.println("당신이 생각한 문자는 " + secretChar + "입니다!");
// 스캐너를 닫습니다.
scanner.close();
}
}
자바에서는 문자를 입력받는 특별한 형식이 없고 scanner.next()로 입력을 받으면 문자열을 입력 받게 됩니다.
이때 문자열은 문자의 배열로 이루어져 있으므로 첫번째 위치가 0번지이므로 0번지 값을 charAt으로 가져오면 문자가 됩니다.
4.Python
print("알파벳 중 하나를 마음속으로 생각해보세요.");
secretChar = input("생각한 문자를 입력해주세요: ")
print("당신이 생각한 문자는 %c입니다!" %secretChar);
#print(f"당신이 생각한 문자는 {secretChar}입니다!");
파이썬은 변수를 자료형 선언이 필요 없기 때문에 바로 선언하면서 입력받은 문자를 대입 후 서식문자 %c를 사용하여 출력하거나 포맷문자열을 사용하여 출력합니다.
요약
C 언어 : 문자 입력/출력 시 서식문자 %c를 사용한다.(단 입력시 %c 앞에 반드시 공백이 필요하다)
C++ : 자료형에 관계없이 >>연산자(입력스트림),<<연산자(출력 스트림)을 사용하여 입력과 출력을 한다.
Java : 문자를 입력받는 문법이 없어서 문자열을 입력 받는 scanner.next()를 사용하여 입력 받은 후 첫번째 자리(0번째 인덱스)를 추출하여 사용한다.
Python : 모든 입력은 문자열로 입력 받는다. 단 한자리 입력시 %c 서식문자로 출력이 가능하다.
인천 검단 원당컴퓨터 학원(T 032-565-5497)
#정보올림피아드
#검단신도시코딩
#원당동코딩
#마전동코딩
#왕길동코딩
#당하동코딩
#아라동코딩
#풍무동코딩
#불로동코딩
#검단동코딩
#검암동코딩
'프로그래밍언어문법(C,C++,Python,JAVA)' 카테고리의 다른 글
2-4. 단어의 숲을 거닐다. (10) | 2024.04.26 |
---|---|
2-3. 실수의 발견 (5) | 2024.04.24 |
2.1 - 숫자의 비밀 (8) | 2024.04.05 |
2. 입력과 출력 (8) | 2024.03.22 |
프로그래밍언어 문법 목차 (0) | 2024.03.18 |