>

사용자가 설정 한 범위의 모든 숫자를 인쇄하는 코드를 만들고 그 범위의 숫자가 홀수인지 짝수인지 식별하려고합니다.

몇 가지 다른 형식을 시도했지만 초보자가 많아서 잘못 가고있는 곳을 못 알아볼 수 없습니다. 코드를 가능한 한 단순하게 유지하려고합니다.

for i in range(x,y+1):
       print(i)
range = (x,y+1)
count_odd = 0
count_even = 0
for n in range:
        if   n%2==0:
             count_even = count_even+1
        else:
             count_odd = count_odd+1
print("Number of even numbers :",count_even)
print("Number of odd numbers :",count_odd)

현재 이것을 실행할 때 짝수는 항상 0이되고 2는 홀수입니다.

  • 답변 # 1

    4 번 라인에는 다음이 있습니다 :

    range = (x,y+1)
    
    

    이것은 튜플 (x, y+1) 입니다  그들 사이의 범위가 아닙니다. 그래서 당신이 그것을 통해 루프 할 때 당신은 그 두 숫자를 반복합니다. 나는 당신의 경우에 둘 다 이상하다고 가정합니다. 해당 줄을 제거하고 다음과 같이 두 번째 for 루프를 시작하는 것이 좋습니다.

    for n in range(x, y + 1):
    
    

  • 답변 # 2

    range  내장 함수이며 [start, end) 에서 iterable을 리턴합니다. . 아마도 다음과 같은 것을 원할 것입니다 :

    count_odd = 0
    count_even = 0
    for n in range(x,y+1):
        if n % 2 == 0:
            count_even = count_even + 1
        else:
            count_odd = count_odd + 1
    print("Number of even numbers :", count_even)
    print("Number of odd numbers :", count_odd)
    
    

  • 답변 # 3

    루프 할 점이 없습니다. 범위가 짝수 요소로 구성된 경우 값의 절반은 짝수이고 절반은 홀수입니다. 그것이 홀수 요소로 구성되고 홀수 값에서 시작하면 half + 1은 홀수이고 half-1은 짝수입니다. 그것은 짝수 값으로 시작하고 반대입니다.

  • 이전 Ruby에서 HTML 페이지를 렌더링하는 방법이 있습니까?
  • 다음 python - 다른 폴더의 여러 CSV 파일에서 선택한 열을 단일 CSV 파일로 결합