리스트 이용해서 피보나치 만드는거 있는데 입력받은 수를 정수화시켜서 for문으로 돌리려니까 안돌려지네요 ㅠㅠ
예를들면 5를 입력받았다 하면 int화 시켜서 for i in range(1, i):이런식으로는 안되는건가요?? 다른방법 아시는분있으면 답변좀 ㅜ 문법이익숙치가 않아서,,,
리스트 이용해서 피보나치 만드는거 있는데 입력받은 수를 정수화시켜서 for문으로 돌리려니까 안돌려지네요 ㅠㅠ
예를들면 5를 입력받았다 하면 int화 시켜서 for i in range(1, i):이런식으로는 안되는건가요?? 다른방법 아시는분있으면 답변좀 ㅜ 문법이익숙치가 않아서,,,
input_num=int(input()) fibo=[1,1] for num in range(input_num): fibo.append(fibo[-1]+fibo[-2]) 대충 이런식인가....?
i=raw_input() i=int() for i in range(0, i) 이런식으로 했는데 제가 생각한건 입력받은 i까지 for문이 돌려질줄알았는데 아니더라구요..ㅜㅜ
ㅁㄴㅇ// 니가 어떤식으로 전체소스를 짰는지 봐야 알 것 같다
i=raw_input() i=int(i) list=[0,1] for i in range(2, i): <--여기서 i는 제가 입력하고 받은 수까지 범위를 정한건데 이렇게 하면 돌아가는데 결과값이 안먹힘 ㅜㅜ list.append(list[i-2]+list[i-1])
너가 착각하는게 뭐냐면 for 문은 이터레이터(여기서는 range)에 있는 원소를 순차적으로 변수(여기서는 i)에 지정하는 거야
근데 지금 니가 짠 for문에서 i가 어디나와? 지금 너는 2부터 i까지 숫자를 추출해서 피보나치를 만드는 줄 아나본데
저렇게하면 2부터 i까지 변수 i에 지정하기만 하지 i를 안써서 그냥 반복문이 됨
아마 니가 원하는 코드는 {while True: (if list[i-2]+list[i-1]>i: break) list.append(list[i-2]+list[i-1]) 이거 같은데
그러면 i에 5를 입력받고 저렇게 쓴다면 2, 3, 4, 5까지 올려주는게 아니라는건가요? 이거를 그럼 지정할수 있게 어떻게 해야할까요? 방법이 없는건가 음..
{while True: (if list[-2]+list[-1]>i: break) list.append(list[-2]+list[-1])} 이거 같은데
아하 이해했네요 ㅠㅠ 감사합니다