Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --################################################################################
- -- тест кратных сканирований геосканером
- --################################################################################
- local xx=30 -- максимальная кратность сканирований
- local qq=1000 -- максимальное количество кратных сканирований
- local d0=1.5 -- теоретическая плотность сканируемого блока
- --################################################################################
- local geo=require('component').geolyzer
- -- таблица однократных сканирований
- local scan = {} for i=1,qq+xx do scan[i]=geo.scan(0,0,32,1,1,1,true)[1]end
- --================================================================================
- -- вычисление и печать минимума и максимума кратных сканирований
- -- x: кратность сканирования
- -- q: количество кратных скаринований
- local function CalcScanX( x,q )
- local s,sMin,sMax = 0,d0,d0
- local sum=0 for i=1,x do sum=sum+scan[i] end
- for i=1+x,q+x do
- sum = sum - scan[i-x] + scan[i]
- s = sum/x
- if sMin>s then sMin=s end
- if sMax<s then sMax=s end
- end
- print(string.format("q=%-4d %2dx [%5.3f-%-5.3f]", q,x,sMin,sMax))
- end
- --################################################################################
- CalcScanX( 1,100 ) -- 100 простых сканирований
- CalcScanX( 3,100 ) -- 100 3-кратных сканирований
- CalcScanX( 10,100 )
- CalcScanX( 30,100 )
- CalcScanX( 30,1000 )
- --################################################################################
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement