나는 스택 오버플로가 넘쳐 보았고 정말 도움이 필요합니다. 나는 그들의 출생 연도를 물어서 나이를 계산하고, 출생 년도가 올바른지, 전체 숫자인지, 단어 나 다른 잘못된 유형의 답이 아닌지를 확인하는 프로그램을 만들고 있습니다. 그리고 나서 우리의 당해 연도로부터 출생 년도를 빼십시오. 현재 연도를 입력하고 사용자 입력 출생 연도를 빼는 데 문제가 있습니다.현재 연도 - 출생 연도를 계산하여 파이썬을 사용하여 연령 계산기 만들기
# Function Boolean is_valid_integer(String input_string)
# Declare Boolean is_valid
#
# is_valid = is input_string a valid integer?
# Return is_valid
# End Function
def is_valid_integer(input_string):
try:
val = int(input_string)
is_valid = True
except ValueError:
is_valid = False
return is_valid
# Function Integer get_year_born()
# Declare Boolean is_valid
#
# Display "What year were you born in? "
# Input input_string
# Set is_valid = is_valid_integer(input_string)
# While Not is_valid
# Display "Please only enter whole years."
# Input input_string
# is_valid = is_valid_integer(input_string)
# End While
# input_integer = int(input_string)
# Return input_integer
# End Function
def get_year_born():
input_string = input("What year were you born in? ")
is_valid = is_valid_integer(input_string)
while not is_valid:
input_string = input("Please only enter whole years. ")
is_valid = is_valid_integer(input_string)
input_integer = int(input_string)
return input_integer
# Function Integer calculate_difference()
# difference = 2017 - input_integer
# End Function
import datetime
def calculate_difference(difference):
difference = 2017 - input_integer
return difference
# Module calculate_age_year()
# Set born = get_year_born()
# Call calculate_difference()
# End Module
def calculate_difference():
print("Your age is: ", difference)
calculate_age_year()
내 데이터 형식으로 데이터를 가져 오려고 시도한 후에 제대로 작동하지 않았습니다. 특정 날짜 및/또는 시간을 계산하지 않으려 고 했으므로 제안 된 코딩의 해당 부분을 제거했습니다. 아마도 그 부분과 관련이 있습니다.
이 프로그램의 목적은 실제로 몇 년을 계산하는 것입니다. 따라서 2000 년에 태어난다면 2017 년부터 계산할 프로그램을 원합니다. 지금은 17 세가 될 것입니다.
첫 번째 함수는 거짓 입력을 취소하는 루프이고 두 번째 함수는 사용자가 태어난 연도를 구하고 세 번째 함수는 현재 날짜와 사용자 생년월일의 차이를 계산하는 것으로 가정합니다. 상기 제 4 기능은 상기 사용자의 실제 나이를 출력하는 기능을 포함한다.
get_number_of_age() 메소드에서 뺄셈을하지 마십시오. age = current_year - input_integer는 사용자 입력을 반환하는 것입니다. – reticentroot
은 숙제를 좋아하니? 1 단계) 나이를 얻으십시오. 2) 3 세 유효성 확인) 그것으로 무엇인가하십시오. 먼저 개별 단계에 집중하십시오. – user1269942
실제 시도해보기. "실제로 내가 줄을 따라 뭔가를 입력 할 때 ..."는 당신이 실제로하고있는 것을 보여주지 못하기 때문에 우리는 그것을 고칠 방법을 말할 수 없습니다. 'today'는 정의되어 있지 않으므로 calculate_age_year()를 호출하면 코드가 충돌합니다. –