Find the smallest perfect square whose decimal representation begins and ends with three 4's.
The smallest is 444171597444, with square root 666462.
Here are the first few, with their square roots:
444171597444 666462
444272905444 666538
444838309444 666962
444939693444 667038
4441396081444 2107462
4441716421444 2107538
4443503793444 2107962
4443824209444 2108038
4445612005444 2108462
4445932497444 2108538
4447720717444 2108962
4448041285444 2109038
4449829929444 2109462
Note that the for...next loop used digits starting at the second one in, for example 10001 to 20000 for 4-digit center fill. That way any zero(s) immediately after the initial 444 would be checked; none happened to be found, though.
For l = 1 To 7
st = Int(10 ^ l + 1.5): fin = 2 * Int(10 ^ l + 0.5)
For m = st To fin
v = Val("444" + Mid(LTrim(Str(m)), 2) + "444")
sr = Int(Sqr(v) + 0.5)
If sr * sr = v Then
Text1.Text = Text1.Text & v & Str(sr) & crlf
End If
DoEvents
Next
Next
Expanding to an 8-digit inner fill does lead to four that have a zero right after the initial 444:
44401725825444 6663462
44402738677444 6663538
44408389537444 6663962
44409402465444 6664038
44415053749444 6664462
44416066753444 6664538
44421718461444 6664962
44422731541444 6665038
44428383673444 6665462
44429396829444 6665538
44435049385444 6665962
44436062617444 6666038
44441715597444 6666462
44442728905444 6666538
44448382309444 6666962
44449395693444 6667038
44455049521444 6667462
44456062981444 6667538
44461717233444 6667962
44462730769444 6668038
44468385445444 6668462
44469399057444 6668538
44475054157444 6668962
44476067845444 6669038
44481723369444 6669462
44482737133444 6669538
44488393081444 6669962
44489406921444 6670038
44495063293444 6670462
44496077209444 6670538
|
Posted by Charlie
on 2019-08-02 13:36:38 |