force00   2년 전

이렇게 돌리니까 무한으로 도는데 어떻게 해야할까요?? 

314programs   2년 전

무한으로 도는게 아니고, self_number를 부르지 않았어요

force00   2년 전

여기다가 안적었네요. self_number() 이렇게 해서 불러내면 1부터 시작해서 마지막 숫자까지 갔다가 다시 또 1부터 돕니다

314programs   2년 전

불러낸 코드를 적어줄수 있을까요?

저가 불러온때는 맞았다고 나옵니다.

force00   2년 전

이렇게 출력했더니 입력 초과가 뜹니다 맨 밑에 self_number() 없애면 그냥 틀렸다고 뜨고요. idle 돌려보면 1부터 해서 마지막숫자까지 갔다가 또 다시 1부터 도는데 중간에 어떻게 끊어야할지를 모르겠네요

force00   2년 전

수정해서 맞았습니다. 다만 이해가 안가는게 있어서 질문드려요. 

n = n +1 을 

for x in range 문 안에 있었던 걸

for i in range  문 안으로 옮겼더니 되더군요, 다만 

while n != 10001으로 하면 출력 초과가 뜨고, 10000으로 수정해야 맞았다고 뜨는데 왜 그런건가요?


그리고 제가 이해가 안가는데 두번째 for 문에 있을 때랑 첫번째 for문 n = n +1 이 있을 때랑 무슨 차이인가요??

첫번째 for문 다 돌아가고 두번째 for문이 돌아가는 것이 아닌가요?? 

314programs   2년 전

한국어 실력 양해부탁 드려요...

1. n은 10001이 될수 없어요.

for문은 n = 10000 까지만 돌아서 다시 처음부터 반복돼요.

반복 도중 n = 10001 되지만 for문이 다 끝난후에는 n은 10001이상 입나다.

for문에 range를 1, 10002로 바꾸면 n이 반복과 겹치지 않고 10001이 되서 반복이 멈춰요.

2. n = n + 1에 위치를 바꾸어도 맞았다고 나와요.

틀린 소스를 보여주세요.

그리고 저번에 self_number()를 부른후 10001을 10000으로 바꾸어서 재출했네요...

오해 드린점 죄송합니다...


force00   2년 전

아 다시 해보니까 n = n+1 의 위치는 첫번째 for문 안에만 있으면 되네요. 

제가 while n != 10001로 설정하면 밑에 for 문이 10001이라 10000까지 밖에 수를 안세서 안된다는 거죠? 어젠 왜 그렇지 하면서 안보였는데 오늘은 이해가 되네요. 

감사합니다! 오해하신 건 정말 괜찮습니다. 님 아니었으면 계속 헤매고 있었을테니까요 ㅋㅋ

댓글을 작성하려면 로그인해야 합니다.