Akkor végülis: r-sqrt(r*r-w*w)=s és sqrt((l+k)*(l+k)+w*w)-l-k
ahol s lenne a vetület
r = fordulási kör sugara
w = a parkoló autók szélessége
l = a két tengely közötti távolság
k = az első kerék tengelye és az autó eleje közti távolság
perfectparking.lua:
if #arg < 4 then
print ""
print "Perfect Parking v0.1"
print "======================"
print ""
print "Usage: perfectparking.lua <r> <w> <l> <k>"
print " * r = radius of car's curb to curb turning"
print " * w = the width of the parked car next to your car"
print " * l = your car's wheelbase"
print " * k = the distance from the centre of the front wheel to the front your car"
os.exit(1)
end
function sqrt(num)
return math.pow(num, 0.5)
end
r,w,l,k = arg[1], arg[2], arg[3], arg[4]
t=(r+l)*(r-l)
formula = sqrt(t + (l+k)*(l+k) - (sqrt(t)-w)*(sqrt(t)-w)) -l-k
print "The formula gives the min extra length the parking space needs to be,"
print "over the length of your car"
print(formula)
--[[
-- totally wrong --
myformula = r-sqrt(r*r-w*w)+sqrt((l+k)*(l+k)+w*w)-l-k
print ""
print(myformula)
]]--
A képlet megadja mennyivel kell hosszabbnak lennie a parkolóhelynek a parkoló autónál.
Forrás: http://www.telegraph.co.uk/motoring/news/6784428/Scientists-create-form…
- foofighter blogja
- A hozzászóláshoz be kell jelentkezni
- 786 megtekintés
Hozzászólások
Tetszik a blogod, meg!
- A hozzászóláshoz be kell jelentkezni
De csunya, hogy aliasolni kell a sqrt-t...
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Természetesen van math.sqrt csak gondoltam, hogy a math.pow is bemutatkozhat.
A rendelkezésre álló matematikai függvények:
for f, cim in pairs(math) do
print(f, cim)
end
log function: 0x8408530
max function: 0x8408560
acos function: 0x8408238
huge inf
ldexp function: 0x84084c0
pi 3.1415926535898
cos function: 0x8408388
tanh function: 0x8408768
pow function: 0x84085f8
deg function: 0x84083b8
tan function: 0x84087a0
cosh function: 0x8408350
sinh function: 0x84086c8
random function: 0x8408658
randomseed function: 0x8408690
frexp function: 0x8408488
ceil function: 0x8408318
floor function: 0x8408418
rad function: 0x8408628
abs function: 0x8408208
sqrt function: 0x8408730
modf function: 0x84085c0
asin function: 0x8408270
min function: 0x8408590
mod function: 0x8408450
fmod function: 0x8408450
log10 function: 0x84084f8
atan2 function: 0x84082a8
exp function: 0x84083e8
sin function: 0x8408700
atan function: 0x84082e0
- A hozzászóláshoz be kell jelentkezni
Hmm... akkor visszavonom. Kerdes: az ldexp az mi a bubanat? A tobbirol tobbe-kevesbe hallottam mar.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Normalizáló függvények
math.frexp:
Két értéket ad vissza:
* 0.5 és 1 közötti számot
* 2 hatványát
Példa: math.frexp(42) = 0.65625, 6
mert 0.65625*2^6=42
math.ldexp:
Ez meg az inverze az frexp-nek.
Példa: math.ldexp(0.65625, 6) = 64
- A hozzászóláshoz be kell jelentkezni
Jujj, most nagyon kilatszik, hogy egy 4 gimis taho vagyok, ezekrol meg csak nem is hallottam :-)
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Természetesen a math.ldexp(0.65625, 6) 42-t ad. Elnézést.
- A hozzászóláshoz be kell jelentkezni
Igen, a valasz mindig 42 :-)
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni