2017-03-03 9 views
0

문장을 콘솔 입력으로 받아들이고 대문자, 소문자 및 기타 문자의 수를 계산하는 프로그램을 작성하십시오.대문자, 소문자 및 기타 문자 계산

는 다음 입력이 프로그램에 공급한다고 가정 안녕하세요을 #

+0

어떤 프로그래밍 언어로 제공됩니까? 아, "jes"(태그) 또는 Python 역시 그렇습니다. – Kingsley

+0

예, jes를 사용합니다. 고맙습니다. – Lauren

답변

1

이 질문은 프로그래밍 과제 같은 소리 때문에, 나는 이것이 더-말의 방법입니다 작성했습니다!. 이것은 Jes가 아닌 표준 Python 3입니다.

#! /usr/bin/env python3 

import sys 

upper_case_chars = 0 
lower_case_chars = 0 
total_chars = 0 
found_eof = False 

# Read character after character from stdin, processing it in turn 
# Stop if an error is encountered, or End-Of-File happens. 
while (not found_eof): 
    try: 
     letter = str(sys.stdin.read(1)) 
    except: 
     # handle any I/O error somewhat cleanly 
     break 

    if (letter != ''): 
     total_chars += 1 
     if (letter >= 'A' and letter <= 'Z'): 
      upper_case_chars += 1 
     elif (letter >= 'a' and letter <= 'z'): 
      lower_case_chars += 1 
    else: 
     found_eof = True 

# write the results to the console 
print("Upper-case Letters: %3u" % (upper_case_chars)) 
print("Lower-case Letters: %3u" % (lower_case_chars)) 
print("Other Letters:  %3u" % (total_chars - (upper_case_chars + lower_case_chars))) 

사용자가 직접 줄 끝 문자를 처리하도록 코드를 수정해야합니다. 현재 그들은 "기타"로 간주됩니다. 또한 이진 입력 처리를 생략했습니다. str()이 실패합니다.