Jump to content

Smallest square that begins with n: Difference between revisions

Add OCaml
(Add SenseTalk implementation)
(Add OCaml)
Line 1,065:
36 3721 3844 3969 400 41209 4225
4356 441 45369 4624 4761 484 49</pre>
 
=={{header|OCaml}}==
<lang ocaml>let rec is_prefix a b =
if b > a then is_prefix a (b/10) else a = b
 
let rec smallest ?(i=1) n =
let square = i*i in
if is_prefix n square then square else smallest n ~i:(succ i)
 
let _ =
for i = 1 to 49 do
Printf.printf "%d%c" (smallest i) (if i mod 10 = 0 then '\n' else '\t')
done</lang>
 
{{out}}
<pre>1 25 36 4 529 64 729 81 9 100
1156 121 1369 144 1521 16 1764 1849 196 2025
2116 225 2304 2401 25 2601 2704 289 2916 3025
3136 324 3364 3481 35344 36 3721 3844 3969 400
41209 4225 4356 441 45369 4624 4761 484 49 </pre>
 
=={{header|Perl}}==
13

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.