Научная электронная библиотека
Монографии, изданные в издательстве Российской Академии Естествознания

Приложение IV. Программа математической обработки результатов количественных определений

Программа математической обработки результатов количественных определений

10 defdbl d, e, s, t, x, y: defint c, i, k, n: defstr a

11 screen 0: width 80: color 14,0

20 rem Ввод данных

30 print: print: input “ Введите количество точек “; n

40 if n<3 then goto 1000

50 for i=1 to n step 1

60 print: print “точка N”; i

70 input “Значение =“; x(i)

80 next i

90 rem Проверка введенных значений

100 cls: print

110 for i=1 to n step 1

120 color 2: print “Точка N”;: color 4: print i;:

130 color 2: print “значение =”;: color 14: print x(i)

140 next i

150 color 23: print: print “ Все верно ? (Y/N) “: a=input$(1)

160 if a=“N” or a=“n” then goto 1100

170 rem Расчет среднего значения

180 summa=0

190 for i=1 to n step 1

200 summa=summa+x(i)

210 next i

220 sredne=summa/n

230 rem Подбор коэффициента Стьюдента

240 if n=3 then t=4.303

250 if n=4 then t=3.182

260 if n=5 then t=2.776

270 if n=6 then t=2.571

280 if n=7 then t=2.447

290 if n=8 then t=2.365

300 if n=9 then t=2.306

310 if n=10 then t=2.262

320 if n=11 then t=2.228

330 if n=12 then t=2.201

340 if n=13 then t=2.179

350 if n=14 then t=2.160

360 if n=15 then t=2.145

370 if n=16 then t=2.131

380 if n=17 then t=2.120

390 if n=18 then t=2.110

400 if n=19 then t=2.103

410 rem Расчет выборочной дисперсии и среднеквадратичной ошибки

420 sdisp=0

430 for i=1 to n step 1

435 sdisp=sdisp+(x(i)-sredne)^2

440 next i

450 disp=sdisp/(n-1)

460 soqv=sqr(disp)

470 rem Расчет точности прямого измерения

480 e1=t×soqv/sqr(n) : e2=e1/sredne×100

490 rem Расчет плотности функции распределения

500 ymax=1/soqv/sqr(2×3.14159)

510 for i=1 to n step 1

520 y(i)=1/soqv/sqr(2×3.14159)×exp(-1×(x(i)-sredne)^2/2/disp)

530 next i

535 if e2>30 then goto 1300

539 goto 1400

540 screen 2: line (20,180)-(620,180)

550 summa=160-cint(160×ymax/(ymax+1)

560 line (320,180)-(320,cymax)

570 rem circle (320,cymax),4: paint (320,cymax)

580 for i=1 to n step 1

590 cy(i)=160-cint(160/(ymax+1)×y(i)

600 e(i)=(x(i)-sredne)/sredne×100

610 cx(i)=cint(320+10×e(i))

620 circle (cx(i),cy(i)),1: paint (cx(i),cy(i))

630 next i ;  640 goto 1030

1000 rem Малое количество данных

1010 print: print: color 3: print “Количество точек не должно быть меньше трех “ 

1020 a=imput$(1)

1030 end

1100 rem Исправление неверно введенных данных

1120 cls: print: print: color 14: input “ Введите номер исправляемой точки”; 

1130 if k>n then goto 1180

1140 color 2: print “ Точка N”;: color 4: print k

1150 color 2: print “ старое значение = “;: color 14: print x(k)

1160 color 2: print “ новое значение=”;: color 14: input x(k)

1170 goto 90

1180 cls: color 20: x1=timer

1190 print: print: print “Нет точки с таким номером !”

1200 x2=timer: x3=x2-x1

1210 if x3<2 then goto 1200

1220 a=inkey$: goto 90

1300 rem Слишком большой разброс

1310 cls: print: print: color 30: print “ Очень большой разброс данных“

1320 print: print “ построение графика невозможно “

1330 goto 1030

1400 a1=“+-”: rem Вывод на экран данных

1410 cls:print:print:color 14:print “Среднее значение =“;: print using “####.####”

1420 print: print “Доверительный интервал =“;:

1430 print using “#####.#####”; sredne ;: print “-+”;: rem Hihi

1431 print using “#####.#####”; e1

1440 print: print “Относительная ошибка =“;: print using  “##.####”; e2

1450 locate 21: color 22: print “Нажмите любую клавишу”: a = input$(1)

1460 cls: color 14: a2=“  “

1470 print “  X(i)  “;: print “ Y(i)  “;: print “  X(i)-Xср”

1480 for i=1 to n step 1

1490 print using “##.####”; x(i);: print a2;

1500 print using “##.####”; y(i);: print a2;

1510 print using “##.####”; x(i)-sredne; 1520 next i

1530 print color 6: print “Хотите получить распечатку ? (Y/N) “: a = input$(1)

1540 if a=“Y” or a=“y” then goto 1700

1550 print: color 6: print “ Хотите посмотреть на график ? (Y/N) “: a = input$(1)

1560 if a=“Y” or a=“y” then goto 540 else goto 1030

1700 rem Распечатка

1705 cls: print “Подготовьте принтер к печати”

1706 print “ и нажмите любую клавишу”: a=input$(1)

1710 lprint “Среднее значение =“;: lprint using “#####.#####”; sredne

1720 lprint “Доверительный интервал =“;:

1730 lprint using “#####.#####”; sredne;: lprint “-+”;

1731 lprint using “#####.#####”; e1

1740 lprint “Относительная ошибка =“;: lprint using “##.####”; e2

1750 lprint “  X(i)  “;: lprint “  Y(i) “;: lprint “ X(i) - Xср “

1760 for i=1 to n step 1

1770 lprint using “##.####”; x(i);: lprint a2;

1780 lprint using “##.####”; y(i);: lprint a2;

1790 lprint using “##.####”; x(i)-sredne

1795 next i

1900 goto 1550


Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1.252