|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
ПРИЛОЖЕНИЕ 5. КОМПЬЮТЕРНАЯ ПРОГРАММА ВЫРАВНИВАНИЯ ДИНАМИЧЕСКОГО РЯДА МНОГОЧЛЕНОМ РЯДА ФУРЬЕ1 COLOR 7,0:CLS:LOCATE 2,60,0:COLOR 25,5,15 2 COLOR 7,7,15:LOCATE 4:COLOR 0,7,15 3 PRINT TAB(27)" ЗАДАЧА F U R Y E";:PRINT SPC(37):PRINT TAB(26)" "; 4 COLOR 15,0,15:PRINT"КАФЕРА";:COLOR 23,5,15:PRINT"*БНТУ*"; 5 COLOR 15,0,15:PRINT" ОАПДД ";:COLOR 7,7,15:PRINT SPC(35):COLOR 1,14 6 PRINT TAB(20)"ВЫРАВНИВАНИЕ ДИНАМИЧЕСКОГО РЯДА"; 7 PRINT TAB(80)" ";:PRINT TAB(33)"МНОГОЧЛЕНОМ ФУРЬЕ"; 8 PRINT TAB(80)" ":DEFINT I-N 19 PRINT:COLOR 7,0,7 25 H2$=" ВЫ ДОПУСТИЛИ ОШИБКУ":F3$="+#.##^^^^":F4$="+#.####^^^^" 27 DIM YS(8640),TS(8640),YT(8640),SAK(8640),SAP(8640) 28 P2=6.2832:M4=0 30 H0$=" ИСХОДНЫЕ ДАННЫЕ":H1$=" ДА - 1, НЕТ - 0" 40 H2$=" ВЫ ДОПУСТИЛИ ОШИБКУ" 45 DIM A(100),B(100),IK(100) 50 PRINT"ВВЕДЕНЫ ЛИ";H0$;H1$:INPUT M0:IF M0=0 THEN 110 60 OPEN"I",#1,"FURXE.DAT" 65 INPUT #1,H3$ 70 INPUT #1,N 80 FOR I=1 TO N:INPUT #1,TS(I),YS(I):NEXT I 90 CLOSE #1 100 GOTO 150 110 PRINT"ВВЕДИТЕ ";H0$ 115 PRINT"НАИМЕНОВАНИЕ ИСХОДНЫХ ДАННЫХ ";:INPUT H3$ 116 'OPEN "I",#3,"CON":INPUT #3,H3$:CLOSE #3 120 PRINT"ЧИСЛО РАСЧЕТНЫХ ТОЧЕК ";:INPUT N 130 PRINT"ЭМПИРИЧЕСКИЕ ЗНАЧЕНИЯ АРГУМЕНТА, ФУНКЦИИ В РАСЧЕТНЫХ ТОЧКАХ" 140 FOR I=1 TO N:PRINT I"-Я ПАРА ";:INPUT TS(I),YS(I):NEXT I 150 PRINT"ЗНАЧЕНИЯ ФУНКЦИИ":PRINT "I YS(I)" 160 FOR I=1 TO N:PRINT I,YS(I):NEXT I 170 PRINT "ТРЕБУЕТСЯ ЛИ КОРРЕКТИРОВАТЬ ЗНАЧЕНИЯ ФУНКЦИИ" 180 PRINT H1$:INPUT M3:IF M3=1 THEN 250 190 IF M0=1 AND M4=0 THEN 280 200 OPEN"O",#1,"FURXE.DAT" 210 WRITE #1,H3$ 215 WRITE #1,N 220 FOR I=1 TO N:WRITE #1,TS(I),YS(I):NEXT I 230 CLOSE #1 240 GOTO 280 250 PRINT"НОМЕР РАСЧЕТНОЙ ТОЧКИ,ДЛЯ КОТОРОЙ ТРЕБУЕТСЯ КОРРЕКТИРОВКА" 260 INPUT IS:M4=1 270 PRINT"ВВЕДИТЕ НОВОЕ ЗНАЧЕНИЕ АРГУМЕНТА, ФУНКЦИИ":INPUT TS(IS),YS(IS):GOTO 170 280 OPEN"O",#3,"FURXE.REZ" 285 SY=0:FOR I=1 TO N:SY=SY+YS(I):NEXT I 290 A0=SY/N:S1=0:FOR I=1 TO N:S1=S1+(YS(I)-A0)^2:NEXT I 300 MM=0:F1=0:E1=1000 320 PRINT"ТРЕБУЕТСЯ НАЙТИ НАИБОЛЕЕ ПОДХОДЯЩУЮ ЗАВИСИМОСТЬ ПО МИНИМУМУ" 330 PRINT"СРЕДНЕЙ ЛИНЕЙНОЙ ОШИБКИ АППРОКСИМАЦИИ - ВВЕДИТЕ 1 ИЛИ" 340 PRINT"ПО МАКСИМУМУ КРИТЕРИЯ ФИШЕРА - ВВЕДИТЕ 2":INPUT M0 341 PRINT "A0=" USING F3$;A0 342 PRINT" K A(K) B(K) E F" 343 IUUU=INT(N/2):IF N/2-INT(N/2)>.4 THEN IUUU=IUUU+1 344 TT=TS(N)-TS(1) 345 FOR KII=1 TO IUUU 347 M=MM+1:GOSUB 400 350 IF M0=2 THEN 380 360 IF E2>=E1 THEN 395 370 E1=E2:GOTO 392 380 IF F2<=F1 THEN 395 390 F1=F2 392 MM=MM+1:IK(MM)=KII:A(MM)=AK:B(MM)=BK:FOR I=1 TO N:SAK(I)=SAP(I):NEXT I 395 NEXT KII 397 GOTO 550 400 REM 430 K=KII 435 SAT=0:SBT=0:FOR I=1 TO N:SAT=SAT+YS(I)*COS(P2*K*I/N) 440 SBT=SBT+YS(I)*SIN(P2*K*I/N):NEXT I 450 AK=SAT/N*2:BK=SBT/N*2:PRINT K; 455 PRINT TAB(16) USING F3$;AK; 456 PRINT TAB(30) USING F3$;BK, 470 S2=0:SV=0:FOR I=1 TO N 485 SAP(I)=SAK(I)+AK*COS(P2*K*I/N)+BK*SIN(P2*K*I/N) 490 YT(I)=SAP(I)+A0:IF YT(I)=0 THEN YT(I)=.000001 495 SV=SV+ABS((YT(I)-YS(I))/YT(I))':PRINT I; 496' PRINT TAB(16) USING F3$;YS(I);:PRINT TAB(32) USING F3$;YT(I) 500 S2=S2+(YS(I)-YT(I))^2:NEXT I 502 IF S2=0 THEN S2=0.000001 507 E2=SV/N 510 PRINT TAB(45) USING F3$;E2, 520 F2=(S1-S2)*(N-M-1)/S2/M 522 PRINT TAB(60)USING F3$;F2 525 INPUT AAA 540 RETURN 550 REM 552 PRINT #3," РЕЗУЛЬТАТЫ АППРОКСИМАЦИИ ДАННЫХ РЯДОМ ФУРЬЕ" 555 PRINT #3, TAB(5)"(";H3$;")" 560 PRINT #3,:PRINT #3,"ВИД МНОГОЧЛЕНА ОПРЕДЕЛЕН ПО "; 570 IF M0=2 THEN PRINT #3,"МАКСИМУМУ КРИТЕРИЯ ФИШЕРА":GOTO 590 580 PRINT #3,"МИНИМУМУ ЛИНЕЙН.ОШИБКИ АППРОКСИМАЦИИ" 590 PRINT #3,"A0=";:PRINT #3, USING F4$;A0 595 SMAX=0 600 PRINT #3, " K A(K) B(K)" 610 FOR K=1 TO MM:PRINT #3, IK(K); 615 PRINT #3, TAB(16) USING F4$;A(K); 616 PRINT #3, TAB(32) USING F4$;B(K):NEXT K 620 PRINT #3,:PRINT #3," I YS(I) YT(I)" 625 SV=0:S2=0 630 FOR I=1 TO N:PRINT #3, I; YT(I)=SAK(I)+A0:IF YT(I)=0 THEN YT(I)=.000001 632 IF YS(I)>SMAX THEN SMAX=YS(I) 633 IF YT(I)>SMAX THEN SMAX=YT(I) 635 PRINT #3, TAB(16) USING F4$;YS(I);:PRINT #3, TAB(32) USING F4$;YT(I) 636 SV=SV+ABS((YS(I)-YT(I))/YT(I)):S2=S2+(YS(I)-YT(I))^2:NEXT I 637 IF S2=0 THEN S2=0.000001 638 E2=SV/N 639 F2=(S1-S2)*(N-MM-1)/S2/MM 640 PRINT #3,"СРЕДНЯЯ ЛИНЕЙНАЯ ОШИБКА АППРОКСИМАЦИИ ";:PRINT #3, USING F3$;E2 642 PRINT #3,"КРИТЕРИЙ ФИШЕРА ";:PRINT #3, USING F3$;F2 1360 INPUT"ТРЕБУЮТСЯ ЛИ ПОСТРОЕНИЕ ДИАГРАММЫ (ДА- 1,НЕТ- 0)";IR2 1370 IF IR2=0 THEN 1645 1371 L=0 1372 IF 10^(L-6)>SMAX THEN KKK=CINT(SMAX/10^(L-7))*10^(L-7):GOTO 1375 1373 L=L+1 1374 GOTO 1372 1375 SMAX=56./KKK 1380 PRINT #3, 1381 FOR I=1 TO 5: PRINT #3,TAB(I*11+6)I*KKK/5;:NEXT I 1382 PRINT #3, 1383 PRINT #3," +---------------------------------------------------------->"; 1385 PRINT #3, 1390 FOR I=1 TO N:P4=CINT(YT(I)*SMAX):P5=CINT(YS(I)*SMAX) 1400 IF P4<P5 THEN 1432 1410 IF P4>P5 THEN 1442 1413 PRINT #3,USING"#####.";TS(I);:PRINT #3,"│"; 1414 FOR II=2 TO P4-1:PRINT #3,"-";:NEXT II 1420 PRINT #3,TAB(P4+6)"-" 1428 GOTO 1450 1432 IF P4<2 THEN 1435 1433 PRINT #3,USING"#####.";TS(I);:PRINT #3,"│"; 1434 FOR II=2 TO P4-1:PRINT #3,"-";:NEXT II 1435 PRINT #3,"*"; 1436 FOR II=P4+1 TO P5:PRINT #3,"-";:NEXT II:PRINT #3, 1439 GOTO 1450 1442 PRINT #3,USING"#####.";TS(I);:PRINT #3,"│"; 1443 FOR II=2 TO P5:PRINT #3,"-";:NEXT II 1445 PRINT #3,TAB(P4+6)"*" 1450 NEXT I 1455 PRINT #3," │" 1456 PRINT #3," V" 1460 PRINT #3,"* ТЕОРЕТИЧЕСКИЕ ЗНАЧЕНИЯ, - ЭКСПЕРИМЕНТАЛЬНЫЕ ЗНАЧЕНИЯ И ПРИ СОВПАДЕНИИ" 1480 PRINT #3," С ТЕОРЕТИЧЕСКИМИ)" 1485 CLOSE #3 1645 PRINT"ТРЕБУЕТСЯ ЛИ ПРОДОЛЖИТЬ РАСЧЕТЫ?":INPUT M5 1646 IF M5=1 THEN 170 1647 COLOR 25,5,15:PRINT " РЕЗУЛЬТАТЫ РАСЧЕТА В ФАЙЛЕ FURYE.REZ" 1648 PRINT " ИСХОДНЫЕ ДАННЫЕ ДЛЯ ПОВТОРНОГО РАСЧЕТА В ФАЙЛЕ FURYE.DAT" 1649 BBB$=INKEY$ 1650 IF LEN(BBB$)=0 THEN 1649 1660 END Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.007 сек.) |