# Neliöpyramidiksi rakennetun kuulakeon matematiikkaa # ohjelmointikielenä Julia # Juhani Kaukoranta 6.10.2022 function Squarepyramid(n) # kuulien lukumäärä = 1²+2²+3³+...+n² s = 1 for i = 2 : n s += i^2 end return s end function ArkhimedesSquarepyramid(n) # laskee kuulien määrän Arkhimedeen kaavalla return div(n*(n+1)*(2*n+1),6) end function RecursionSquarepyramid(n) # laskee kuulien määrän rekursiolla if n == 0 return 0 else return RecursionSquarepyramid(n-1)+n^2 end end function nfromBruteforcepyramid(K) # laskee kuulakerrosten lukumäärän max = Int(floor(sqrt(K))) # yläraja for i = 1 : max # kokeillaan i:n if Squarepyramid(i) == K println("kerroksia = ",i) end end end