Let the three sides of a triangle be a, b, c, respectively, satisfying a>b>c and {3a/104} = {3b/104} = {3c/104}, where {x} = x - [x] and [x] denotes the integral part of the number x. Find the minimum perimeter of such a triangle.
Looking for a value of c, such that 3^c = x, 3^b = 10000+x, 3^a = 20000+x
And also that c+b > a, since otherwise there would be no triangle.
If c+b = a, we have a degenerate triangle with zero area.
This will occur when the following two functions intersect:
log3(x) + log3(10000+x) = log3(20000+x)
This occurs at a number slightly smaller than 2
3^c = 1.99980006
(c,b,a) = (0.6308387524072026, 8.383795108604822, 9.014633861002013)
Perimeter =
18.029267722014037-------------------------
import math
lp = 0
target = 1.1
c = math.log((lp*(10**4) + target), 3)
def makesides(f):
""" where f is fractional part, make a list of possible side lengths """
ans = []
for intpart in range(3):
ans.append(math.log((intpart*10000 + f),3))
return ans
def istriangle(alist):
return (alist[0]+alist[1] > alist[2])
for i in range(1,1000000):
guess = 1.999+i/1000000000
if istriangle(makesides(guess)):
finalguess = guess
finalsides = makesides(guess)
perimeter = sum(finalsides)
break
print(finalguess)
print(finalsides)
print(perimeter)
Edited on September 7, 2023, 12:49 pm
|
Posted by Larry
on 2023-09-07 12:46:37 |