피보나치 시리즈에 for 루프를 사용하여 값을 인쇄하면 오류를 표시하는 최대 47 개의 값이 인쇄됩니다.

마니 셀반
 var num = "100"
 var num = text2.text.toInt()
        var temp = 0
        var temp2 = 1
        if (nu == 1) {
            println(1)
        }
        else {
            for var valued = 2; valued<num;++valued {
            var temp3 = temp + temp2
            temp = temp2
            temp2 = temp3
            println("\(temp3)")

        }

피보나치 수열을 인쇄하고 싶습니다. 번호는 사용자가 선택해야하는 번호 여야합니다. 내 코드는 위에 있습니다. num을 100으로 선택해야하지만 최대 47 개의 값이 인쇄됩니다. 여기에 인쇄 된 최종 값은 1836311903입니다. 100까지 인쇄되지 않습니다. 오류를 표시합니다. 숫자 100에 대한 피보나치 시리즈를 찾는 방법.

스티븐 C

Fib (47)은 2,971,215,073입니다.

2,971,215,073은 가장 큰 32 비트 부호있는 정수인 2 31-1 ... 보다 큽니다 .

따라서 계산이 넘칩니다. (많은 프로그래밍 언어에서 오류가 발생하지 않았을 것입니다. 잘못된 답을 얻었을 것입니다.)

숫자 100에 대한 피보나치 시리즈를 찾는 방법.

간단한 정수 산술을 사용할 수 없습니다. Java BigInteger클래스에 해당하는 Swift를 사용해야합니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관