게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
파이썬 코딩 관련 질문입니다.
게시물ID : programmer_5409짧은주소 복사하기
작성자 : 라페밀리
추천 : 0
조회수 : 504회
댓글수 : 3개
등록시간 : 2014/09/13 16:45:19
옵션
  • 베스트금지
  • 본인삭제금지
def hailstone(n):
    """Print the hailstone sequence starting at n and return its
    length.

    >>> a = hailstone(10)  # Seven elements are 10, 5, 16, 8, 4, 2, 1
    10
    5
    16
    8
    4
    2
    1
    >>> a
    7
    """
    "*** YOUR CODE HERE ***"
    while n != 1:
        if n%2==0:
            n=n//2
            print(n)
        if n%2!=0:
            n=n*3+1
            print(n)

아직 완성본은 아닌데 우선 실행만 해봤는데 결과 값이 분명 1에 가도 계속 무한루프마냥 실행됩니다.
10을 인자로 넣으면
10
5
16
8
4
2
1
로 끝나야 하는데 여기서 안끝나고
4,2,1을 계속 반복합니다.

저는 저 while문에 전혀 문제가 없다고 생각하는데... n//2도 원래는 n/2로 했다가 인식을 못해서 그런가 보다 하고 integer로 출력하게 //로 했는데도 불고하고 문제가 해결이 안되고 계속 무한루프로 실행되네요

혹시나 뭐가 문제인지 아시는분 계신가요?
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호