Random game
Random demo
Random demo
  • Entry name:
     Aproximace funkce 
  • Category:
    Arithmetics
  • Publisher/Developer:
    Flop 8
  • Code:
    Jan K.
  • Programming language:
    Turbo Basic XL
Aproximace funkce Aproximace funkce Aproximace funkce
Listing 1
10 CLS
15 DIM A0$(70),​A1$(50),​A2$(50),​A3$(50)
20 SETCOLOR 2,​0,​0
25 A0$=" APROXIMACE FUNKCE DANE BODY POLYNOMEM M-teho STUPNE."
30 A1$=""
35 A2$="|y=K(1)+K(2)*X+K(3)*X^2+K(4)*X^3+..|"
40 A3$=""
45 PRINT A0$
50 PRINT
55 PRINT A1$
60 PRINT A2$
65 PRINT A3$
70 RESTORE 10010
75 READ K
80 INPUT "Zadej stupen aproximacniho polynomu M=",​M
85 N=M+1:​NN=M+1
90 Z=N*2
95 DIM B(Z),​S(Z),​P(Z),​X(Z),​Y(Z)
100 DIM A(Z,​Z)
105 IF K<N THEN ? "NUTNO ZADAT SOURADNICE DALSICH ";INT(N-K);" BODU":​LIST 10000,​
110 FOR I=1 TO 2*N-1
115 B(I)=0:​S(I)=0
120 P(I)=1
125 NEXT I
130 RESTORE 10025
135 FOR I=1 TO K
140 READ X,​Y:​X(I)=X:​Y(I)=Y
145 P=1
150 FOR J=2 TO 2*N-1
155 P(J)=P*X(I):​P=P*X(I)
160 S(J)=S(J)+P(J)
165 IF J>N THEN 175
170 B(J)=B(J)+Y(I)*P(J)
175 NEXT J
180 B(1)=B(1)+Y(I)
185 NEXT I
190 S(1)=K
195 FOR I=1 TO N
200 FOR J=1 TO N
205 A(I,​J)=S(I+J-1)
210 NEXT J
215 NEXT I
220 ------------------------------
225 A=NN
230 B=A+1
235 DIM C(A,​B)
240 ?
245 ?
250 FOR I=1 TO A
255 FOR J=1 TO B
260 IF J=B THEN C(I,​J)=B(I):​GOTO 270
265 C(I,​J)=A(I,​J)
270 NEXT J
275 NEXT I
280 CLS
285 FOR N=1 TO A
290 FOR K=N TO A
295 IF C(K,​N)<>0 THEN POP:​GOTO 315
300 NEXT K
305 ? " Soustava nema reseni "
310 END
315 IF K=N THEN GOTO 350
320 FOR I=N TO B
325 J=C(N,​I)
330 C(N,​I)=C(K,​I)
335 C(K,​I)=J
340 NEXT I
345 K=N+1
350 FOR J=B TO N STEP -1
355 C(N,​J)=C(N,​J)/C(N,​N)
360 NEXT J
365 IF N=A THEN POP:​GOTO 400
370 FOR I=K TO A
375 FOR J=K TO B
380 C(I,​J)=C(I,​J)-C(I,​N)*C(N,​J)
385 NEXT J
390 NEXT I
395 NEXT N
400 FOR I=A TO 2 STEP -1
405 FOR J=1 TO I-1
410 C(J,​B)=C(J,​B)-C(I,​B)*C(J,​I)
415 NEXT J
420 NEXT I
425 ?
430 PRINT " Koeficienty K(I) aproximacniho polynomu stupne M=";M
435 PRINT A1$
440 PRINT A2$
445 PRINT A3$
450 PRINT
455 FOR N=1 TO A
460 PRINT ,​"K(";N;")=";C(N,​B)
465 NEXT N
470 PRINT
475 PRINT
480 PRINT " PRO VYPIS NA TISKARNU STISKNI LIB. KLAVESU."
485 GET KEY
490 LPRINT ,​"APROXIMACE FUNKCE DANE BODY POLYNOMEM ";M;" STUPNE."
495 LPRINT
500 LPRINT ,​,​" y=K(1)+K(2)*X+K(3)*X^2+K(4)*X^3+.. "
505 LPRINT
510 FOR N=1 TO A
515 LPRINT ,​,​,​"K(";N;")=";C(N,​B)
520 NEXT N
10000 ------------------------------
10005 REM POCET NAMERENYCH HODNOT
10010 DATA 5
10015 ------------------------------
10020 REM SOURADNICE BODU X,​Y
10025 DATA 1,​3
10030 DATA 2,​6
10035 DATA 3,​11
10040 DATA 4,​18
10045 DATA 5,​27	

This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page, please contact me immediatelly so I can remove it!