Sysop: | Amessyroom |
---|---|
Location: | Fayetteville, NC |
Users: | 23 |
Nodes: | 6 (0 / 6) |
Uptime: | 54:37:03 |
Calls: | 583 |
Files: | 1,139 |
D/L today: |
179 files (27,921K bytes) |
Messages: | 111,801 |
From 'Amusements in Mathematics' by Henry Ernest Dudeney:
We possess three square boards. The surface of the first contains five square feet more than the second, and the second contains five square
feet more than the third. Can you give exact measurements for the sides
of the boards? If you can solve this little puzzle, then try to find
three squares in arithmetical progression, with a common difference of 7
and also of 13.
From 'Amusements in Mathematics' by Henry Ernest Dudeney:
We possess three square boards. The surface of the first contains five >square feet more than the second, and the second contains five square
feet more than the third. Can you give exact measurements for the sides
of the boards? If you can solve this little puzzle, then try to find
three squares in arithmetical progression, with a common difference of 7
and also of 13.
As seems to be usual in these puzzles, by "exact" Dudeney means "rational".
David Entwistle <qnivq.ragjvfgyr@ogvagrearg.pbz> posted:
From 'Amusements in Mathematics' by Henry Ernest Dudeney:
We possess three square boards. The surface of the first contains five square feet more than the second, and the second contains five square
feet more than the third. Can you give exact measurements for the sides
of the boards? If you can solve this little puzzle, then try to find
three squares in arithmetical progression, with a common difference of 7 and also of 13.
Wow. I got so curious that.... I ended up getting 3 or 4
bootleg PDF files of that book, and a few other similar books.
He was really the KING (of math puzzles) !
There must be a nicer way of arriving at the answer.
Can I find (x, x+5, x+10) such that.... when I take Square-root of each, I get 3 rational numbers?
We possess three square boards. The surface of the first contains five
square feet more than the second, and the second contains five square
feet more than the third. Can you give exact measurements for the sides >> > of the boards? If you can solve this little puzzle, then try to find
three squares in arithmetical progression, with a common difference of 7 >> > and also of 13.
I wrote a Python program that solved 5 and 7 cases.
but the 13 involves numbers that are too big...
From 'Amusements in Mathematics' by Henry Ernest Dudeney:
In article <1755581833-4055@newsgrouper.org>,
HenHanna@NewsGrouper <user4055@newsgrouper.org.invalid> wrote:
We possess three square boards. The surface of the first contains five >>> > square feet more than the second, and the second contains five square >>> > feet more than the third. Can you give exact measurements for the sides >>> > of the boards? If you can solve this little puzzle, then try to find
three squares in arithmetical progression, with a common difference of 7 >>> > and also of 13.
I wrote a Python program that solved 5 and 7 cases.
but the 13 involves numbers that are too big...
The denominator is less than 200.
-- Richard
The denominator is less than 200.
I wrote a Python program too, which in about 15 ms finds solutions for
the 5 and 7 cases, with denominators 12 and 120 respectively. However,
it takes over a minute to solve the 13 case [finding rationals a, b, c
with a>b>c>0 and a*a-b*b=13 and b*b-c*c=13] and the denominator is 19380.
Are we looking at the same problem?
Fibonacci found a formula for generating sequences of three squares in arithmetic progression. The difference between the squares is called
the congruum.
See https://en.wikipedia.org/wiki/Congruum
A program that generates these and checks for a congruum of 5 (etc.)
times a square will quickly solve the problem, but be careful of
integer overflow.
The numbers for which there is a solution are https://oeis.org/A003273
-- Richard
In article <107spgm$2cfab$1@dont-email.me>,
David Entwistle <qnivq.ragjvfgyr@ogvagrearg.pbz> wrote:
We possess three square boards. The surface of the first contains five >square feet more than the second, and the second contains five square
feet more than the third. Can you give exact measurements for the sides
of the boards? If you can solve this little puzzle, then try to find
three squares in arithmetical progression, with a common difference of 7 >and also of 13.
Fibonacci found a formula for generating sequences of three squares in arithmetic progression. The difference between the squares is called
the congruum.
See https://en.wikipedia.org/wiki/Congruum
A program that generates these and checks for a congruum of 5 (etc.)
times a square will quickly solve the problem, but be careful of
integer overflow.
The numbers for which there is a solution are https://oeis.org/A003273
-- Richard
Wow.... thakns! you must have known this all along.
In article <1756054299-4055@newsgrouper.org>,
HenHanna@NewsGrouper <user4055@newsgrouper.org.invalid> wrote:
Wow.... thakns! you must have known this all along.
No, most of it I had to look up.
-- Richard
James Waldby <...> posted:[snip]
On Tue, 19 Aug 2025 12:21:48 -0000 (UTC), Richard Tobin wrote:
In article <1755581833-4055@newsgrouper.org>,
HenHanna@NewsGrouper <user4055@newsgrouper.org.invalid> wrote:
I wrote a Python program that solved 5 and 7 cases.We possess three square boards. The surface of the first contains five
square feet more than the second, and the second contains five square >> >>> > feet more than the third. Can you give exact measurements for the sides
of the boards? If you can solve this little puzzle, then try to find >> >>> > three squares in arithmetical progression, with a common difference of 7
and also of 13.
but the 13 involves numbers that are too big...
I wrote a Python program too, which in about 15 ms finds solutions forWhat do you get for 2,3,4, 6, 8, 9, 10, 11, 12 ?
the 5 and 7 cases, with denominators 12 and 120 respectively. However,
it takes over a minute to solve the 13 case [finding rationals a, b, c
with a>b>c>0 and a*a-b*b=13 and b*b-c*c=13] and the denominator is 19380. [snip]
i wonder why Dudeney picked 5,7, and 13. (and not 11).
Do you think he could or did have solved it for 17?
Could you briefly describe what your program does, or email it to me?
iirc... my Python code does this... it just blindly searches for
x,y,z such that yy-xx = zz-yy = D and D is 5 times a perfect square. This works for 7 too
but the 13 case involves numbers that are too big...
On Sat, 23 Aug 2025 17:40:23 GMT, HenHanna@NewsGrouper wrote:
James Waldby <...> posted:[snip]
On Tue, 19 Aug 2025 12:21:48 -0000 (UTC), Richard Tobin wrote:
In article <1755581833-4055@newsgrouper.org>,
HenHanna@NewsGrouper <user4055@newsgrouper.org.invalid> wrote:
I wrote a Python program that solved 5 and 7 cases.We possess three square boards. The surface of the first contains five
square feet more than the second, and the second contains five square
feet more than the third. Can you give exact measurements for the sides
of the boards? If you can solve this little puzzle, then try to find
three squares in arithmetical progression, with a common difference of 7
and also of 13.
but the 13 involves numbers that are too big...
I wrote a Python program too, which in about 15 ms finds solutions forWhat do you get for 2,3,4, 6, 8, 9, 10, 11, 12 ?
the 5 and 7 cases, with denominators 12 and 120 respectively. However,
it takes over a minute to solve the 13 case [finding rationals a, b, c
with a>b>c>0 and a*a-b*b=13 and b*b-c*c=13] and the denominator is 19380. [snip]
i wonder why Dudeney picked 5,7, and 13. (and not 11).
I added a few lines to program shown below to try some of those numbers,
but only got a good solution for 6 (an almost trivial solution) and ran out of time to adequately test further and properly clean up the program. Maybe there are more solutions, maybe not. I didn't find a way to tell when solutions exist.
Do you think he could or did have solved it for 17?
I have my doubts about both of those possibilities. Per program below, there's no solution for 17 which has a y numerator smaller than 200000.
Could you briefly describe what your program does, or email it to me?
Comments in program briefly (perhaps too briefly) describe how it works
iirc... my Python code does this... it just blindly searches for
x,y,z such that yy-xx = zz-yy = D and D is 5 times a perfect square.
This works for 7 too
but the 13 case involves numbers that are too big...
Program follows...
#!/usr/bin/env python
# Re: "128. - A PROBLEM IN SQUARES." - from 'Amusements in
# Mathematics' by Henry Ernest Dudeney - finding rational numbers
# a,b,c with given values (like 5, 7, 13) between a-#, b-#, c-#.
# This program has 2 solvers: Ysolver and Dsolver, written 21-24 Aug
# 2025 by James Waldby. Ysolver is 3-4 times faster than current
# version of Dsolver, which however could be made ca. twice as fast by
# keeping track of duplicated prime factors.
# Notation - Find rationals a, b, c = x/d, y/d, z/d with (x/d)-# =
# (y/d)-# + g = (z/d)-# + g + h. Now g*d-# = x-#-y-# = (x-y)*(x+y) and g*d-# # + h*d-# = x-#-z-# = (x-z)*(x+z). x-y and x+y have same even/odd parity
# Y: for y in a range, consider x that make (x-y)(x+y) divisible by g.
# Compute z-# = 2y-#-x-# and d. If integers, report success.
# D: for d in a range, compute V=g*d-# and W=(g+h)*d-#. Factor V, and
# for suitable combinations of factors p*q=V, q>p, compute x, y, z
# from 2x=q+p, 2y=q-p, z-# = x-#-W. If z is an integer report success.
from time import time
def gcd(a,b):
a, b = abs(a), abs(b)
while a:
a, b = b % a, a
return b
def shoSol(x,y,z,d, t0):
if d<1:
print(f'Error, d = {d} < 1')
d=1
a, b, c = x/d, y/d, z/d
a2b2, b2c2 = a*a-b*b, b*b-c*c
print(f'a,b,c: {x:5}/{d:<5} {y:5}/{d:<5} {z:5}/{d:<5} Diffs: {a2b2:7.5f} {b2c2:7.5f} t={time()-t0:0.6f}s')
def sayNoSol(g, h, top, t0):
print(f'Solver fail for g={g}, h={h} over {top} in {time()-t0:0.6f}s')
def Ystuff(x,y, g,h, t0):
z2 = 2*y*y - x*x
z = round(z2**0.5)
if z*z != z2 : return 0
x2y2 = x*x - y*y
d2 = x2y2//g
d = round(d2**0.5)
if d*d != d2 : return 0
gxyz = gcd(gcd(x,y), gcd(x,z))
if gxyz > 1: return 0
shoSol(x, y, z, d, t0)
return 1
def Ysolver(g=5, h=5, ytop=100):
# To find x,y with g|x-#-y-# we use an outer loop for y,
# and inner loops to get x with 2y-#>x-# and g|x-y or g|x+y
# [Actually, need g|(x-y)(x+y) in case g is nonprime]
s2 = 2**0.5; t0 = time()
for y in range(1,ytop):
ymg = y%g
xm = y+g
xp = g + g*round(y/g) - ymg
hix = int(s2*y) + 1
for x in range(xm, hix, g):
if Ystuff(x,y, g,h, t0)>0: return
if xm==xp: continue
for x in range(xp, hix, g):
if Ystuff(x,y, g,h, t0)>0: return
sayNoSol(g,h,(1,ytop), t0)
# Dsolver tries various assignments of factors p*q = V. Note, if 2 |
# g*d-# but not g, just assign 2 and 2 as pb, qb base values, reducing
# number of combinations by a factor of 4. Also assign largest factor
# to qb. Possible futures: (a) Enumerate assignment bits in Gray
# Code order. (b) Avoid about half the multiplies by skipping swaps of
# repeated factors - via list of skip-masks and skip-values
def Dsolver(g, h, dbot, dtop):
t0 = time()
Dmax = 1+round(dtop**0.5)
# Non-primes in dtests, if any, really don't matter
dtests=[2,3,5]+[x for x in range(7,Dmax,2) if 1==pow(3,x-1,x)==pow(5,x-1,x)]
def factors(v):
f = []
for p in dtests:
while v%p == 0:
f.append(p); v //= p
if v==1: break
return f
if len(factors(g))>1: # future: fix issue with composite g
print(f'Dsolver can\'t do g={g}'); return
for d in range(dbot,dtop):
d2 = d*d
v = V = g*d2
if (V&1)==1:
pb = 1 # V is odd
else: # V is even, so subsume 2 factors
pb = 2; v //= 4
f = factors(v)
if len(f)<1:
sayNoSol(g,h, (dbot,dtop), t0); return
qb = pb * f.pop() # Attach largest prime factor to qb
nf = len(f)
khi = 1<<nf
W = (g + h)*d2
for k in range(khi):
p, q, kt = pb, qb, k
for j in range(nf):
if kt&1>0:
p *= f[j]
else:
q *= f[j]
kt >>= 1
p, q = min(p,q), max(p,q)
# From p, q = x-#-y-# = (x-y)*(x+y)
# we have p+q = 2x, q-p = 2y so:
x, y = (p+q) // 2, (q-p) // 2
# Let W = g*d-# + h*d-# = x-#-z-# =(x-z)*(x+z).
# So z-# = x-#-W. We test if x-#-W is indeed a square.
z2 = x*x - W
if z2 < 0: continue
z = round(z2**0.5)
if z*z != z2: continue # Is z2 a perfect square?
shoSol(x, y, z, d, t0)
return
sayNoSol(g,h, (dbot,dtop), t0)
Ysolver(5,5, 43)
Dsolver(5,5, 1,999)
Ysolver(7,7, 340)
Dsolver(7,7, 1,999)
#Ysolver(13,13, 107000)
#Dsolver(13,13, 1,19999)
print('\nYsolver tests --')
for g in range(3,13): # g=2 has some bug, fix later
Ysolver(g,g, 9999)
print('\nDsolver tests --')
for g in range(3,13): #
Dsolver(g,g, 1,999)
print('\nTrying 17 for about 4 minutes...')
Ysolver(17,17, 200000)
If I update the question to metric measurements and remove the
complication of the fractional lengths, does this work?...
I have three square metal plates. The area of the first is 120 square centimetres greater than the area of the second, and the area of the
second is 120 square centimetres greater than the area of the third.
Each plate has a side which is an integer number of centimetres. What is
the smallest possible length of the side of each plate?
On 21/08/2025 01:06, David Entwistle wrote:
If I update the question to metric measurements and remove the complication of the fractional lengths, does this work?...
I have three square metal plates. The area of the first is 120 square centimetres greater than the area of the second, and the area of the second is 120 square centimetres greater than the area of the third.
Each plate has a side which is an integer number of centimetres. What is the smallest possible length of the side of each plate?
For anyone still working on this here's my algebraic solution for 'A
Problem in Squares' puzzle, where *sides are integer*. Corrections and improvements welcome.
PARTIAL SOLUTION.
ARTIAL SOLUTION.
RTIAL SOLUTION.
TIAL SOLUTION.
IAL SOLUTION.
AL SOLUTION.
L SOLUTION.
SOLUTION.
SOLUTION.
OLUTION.
LUTION.
UTION.
TION.
ION.
ON.
N.
.
Let the sides of the three squares be a, b and c. Where a > b > c.
As the area of the squares has a common difference of 120, we have:
a^2 = b^2 + 120
b^2 = c^2 + 120
Rearranging:
a^2 - b^2 = 120
b^2 - c^2 = 120
Using the difference of two squares:
(a - b)(a + b) = 120
(b - c)(b + c) = 120
As the squares' sides are integer, the values in the brackets are also integers. We note that these two values multiply to give 120.
The factors of 120 are:
(1, 120), (2, 60), (3, 40), (4, 30), (5, 24), (6, 20), (8, 15) and (10, 12).
We can work through the eight possible factor pairs, substituting in the above equations until we find a solution that works.
(1, 120)
(a - b) = 1
(a + b) = 120
Adding:
2a = 121
a = 121/2
a is not an integer
Subtracting:
2 = 119
b = 119/2
b is not an integer
etc...
But for (4, 30)
(a - b) = 4
(a + b) = 30
Adding:
2a = 34
a = 17
Subtracting:
2b = 26
b = 13
And for (6, 20)
(b - c) = 6
(b + c) = 20
Adding:
2b = 26
b = 13 * in common with above solution.
Subtracting:
2c = 14
c = 7
Putting all the above together. The solution has three squares with
sides 17, 13 and 7. The area of the squares is 289, 169 and 49. The
common difference is 120.
Putting all the above together. The solution has three squares withinteresting! Can you solve it similarly for all the other values of D?
sides 17, 13 and 7. The area of the squares is 289, 169 and 49. The
common difference is 120.
e.g. -------- 14, 15, 20, 21, 22, 23, 24, 28, 29, 30,
So... for some large values of D (like your 120), x,y,z can be rather simple.
Maybe they are simple for 1200.