screen 12 window(0,0)-(640,480) p=400:'длина стеклянной палочки ns=0:'полное число событий nt=0:'собрано треугольников ne=0:'не собрано треугольников 'show=0 не показывать сборку треугольника tshow=2:'время показа треугольника 'input"randomize";cc:randomize cc randomize 1 ?"Стеклянная палочка" show=1 cls ?"Press and hold -to quit" ?"N=";ns rabota: if inkey$=chr$(27) then stop gosub dzin gosub sborka goto rabota ?"stop" stop dzin: a=rnd*p b=rnd*(p-a) c=(p-a-b) ns=ns+1 return sborka: if a+b<=c or b+c<=a or a+c<=b then net if show=0 then nt=nt+1:goto percent max=0 if a>max then max=a:l2=b:l3=c if b>max then max=b:l2=a:l3=c if c>max then max=c:l2=a:l3=b l1=max '====== a,b,c lines pset(0,400):line-(a,400),10:line-(a+b,400),12:line-(a+b+c,400),9 '=== total line - lenght p pset(0,380):line-(p,380) '===== ys=140 xs=200 pset(xs,ys):line-(a+xs,ys),10:'===========first line-a with shift 300 xt=(a^2+b^2-c^2)/(2*a) ht=sqr(((b)^2)-(xt^2)) pset(xs,ys):line-(xt+xs,ht+ys),12:'==========second line-b with shift 300 pset(xt+xs,ht+ys):line-(a+xs,ys),9:'==========third line with shift 300 nt=nt+1 delay tshow percent: cls ?"Press and hold -to quit" ?" " locate 2,1:?"N=";ns locate 3,1: ?"Процент треугольников=";int((nt/ns)*100);"%" return net: ne=ne+1 return