home *** CD-ROM | disk | FTP | other *** search
/ Math Solutions 1995 October / Math_Solutions_CD-ROM_Walnut_Creek_October_1995.iso / pc / hp48 / math / decompos.itn < prev    next >
Encoding:
Text File  |  1994-02-08  |  8.5 KB  |  590 lines

  1. %%HP: T(1)A(D)F(.);
  2. DIR
  3.   DESC
  4.     DIR
  5.       MULT
  6.         DIR
  7.           sTART
  8.             ´ STD
  9. vars "DATOS...
  10. "
  11. DATA çSTR + ""
  12. INPUT DUP
  13.               IF ""
  14. ==
  15.               THEN
  16. DROP
  17.               ELSE
  18. STRç 'DATA' STO
  19.               END
  20. P1 1400 .1 BEEP
  21.             ª
  22.           P1
  23.             ´
  24. "Valor de N
  25. " N +
  26. "" INPUT CLLCD
  27. "Elaborando Analisis
  28. Estadistico..."
  29. 1 DISP STRç 'N' STO
  30. DATA SIZE N - 1 +
  31. 'n' STO DATA SIZE
  32. 'nt' STO
  33. "Computando MTs" 3
  34. DISP DATA N
  35.               ´ 1 N
  36. 1 -
  37. FOR Y +
  38. NEXT N /
  39.               ª
  40. DOSUBS 'MT' STO 1 N
  41. 2 / IP
  42.               FOR X
  43. "---" MT + 'MT' STO
  44.               NEXT
  45. N 2 / IP 1 + 'SMT'
  46. STO P2
  47.             ª
  48.           P2
  49.             ´
  50. "Computando TTs" 4
  51. DISP MT ç a
  52.               ´ a
  53. SIZE ç b
  54. ´ { b 2 } 0 CON
  55. 'MAT' STO SMT b
  56.   FOR X MAT { X 1 }
  57. X PUT 'MAT' STO MAT
  58. { X 2 } a X GET PUT
  59. 'MAT' STO
  60.   NEXT
  61. ª
  62.               ª MAT
  63. 'ÖDAT' STO 'MAT'
  64. PURGE 1 XCOL 2 YCOL
  65. n ÖX*Y * ÖX ÖY * -
  66. n ÖX^2 * ÖX SQ - /
  67. 'B' STO ÖY B ÖX * -
  68. n / 'A' STO PA4 {
  69. ÖPAR ÖDAT } PURGE
  70. P3
  71.             ª
  72.           P3
  73.             ´ 'Tt=A
  74. +B*XX' 'EQ' STO { }
  75. 'TT' STO 1 nt N +
  76.               FOR X
  77. X 'XX' STO EQ 'Tt'
  78. 0 ROOT TT SWAP +
  79. 'TT' STO
  80.               NEXT
  81. { Tt XX EQ } PURGE
  82. "Computando CTs" 5
  83. DISP { } 'CT' STO {
  84. } 'IT\ET' STO 2 SMT
  85.               FOR X
  86. CT "---" + 'CT' STO
  87. IT\ET "---" +
  88. 'IT\ET' STO
  89.               NEXT
  90. "Computando ITs+ETs"
  91. 6 DISP SMT SMT n +
  92. 1 -
  93.               FOR X
  94. CT MT X GET TT X
  95. GET / + 'CT' STO
  96. IT\ET DATA X GET MT
  97. X GET / + 'IT\ET'
  98. STO
  99.               NEXT
  100. PA3 P4
  101.             ª
  102.           P4
  103.             ´ { }
  104. 'IT' STO 1 N
  105.               FOR
  106. X1 { } 'C' STO X1
  107. 'NC' STO X1 n SMT +
  108. 1 -
  109. FOR X2 C IT\ET X2
  110. GET + 'C' STO N
  111. STEP "Columna #" NC
  112. + 'TXT' STO C 'LST'
  113. STO PA1 PA2
  114.               NEXT
  115. { NC C } PURGE P5
  116.             ª
  117.           P5
  118.             ´
  119.               DO
  120. "Ajustando ITs..."
  121. 'TXT' STO IT 'LST'
  122. STO PA1 IT ÖLIST N
  123. - ABS 'DIf' STO IT
  124. N * IT ÖLIST / 'IT'
  125. STO
  126.               UNTIL
  127. DIf .0000001 <
  128.               END {
  129. } 1 nt N / 1 +
  130.               FOR X
  131. IT +
  132.               NEXT
  133. 'IT' STO 0 'NU' STO
  134. 0 CT 1
  135.               ´ DUP
  136. IF "---" ==
  137. THEN DROP
  138. ELSE + 'NU' 1 STO+
  139. END
  140.               ª
  141. DOSUBS NU / 'CTP'
  142. STO { } 'FT' STO 1
  143. nt N +
  144.               FOR X
  145. FT TT X GET IT X
  146. GET CTP * * + 'FT'
  147. STO
  148.               NEXT
  149. "Ft" 'TXT' STO FT
  150. 'LST' STO PA1 FT 1
  151. nt SUB 'FT' STO
  152. DATA FT - SQ 'E2'
  153. STO "e≤" 'TXT' STO
  154. E2 'LST' STO PA1
  155. CLLCD E2 ÖLIST nt /
  156. 2 DISP "MSE..." 1
  157. DISP PA9 P6
  158.             ª
  159.           P6
  160.             ´ { E2
  161. FT CTP NU DIf IT K
  162. IT\ET CT SMT TT nt
  163. MT n } PURGE UPDIR
  164.             ª
  165.           PA1
  166.             ´
  167.               DO
  168. CLLCD TXT 1 DISP 0
  169. 'FA' STO LST
  170. REVLIST LISTç 1
  171. SWAP
  172. FOR X
  173.   IF X 1 + FA 6 / +
  174. 7 MOD 0 ==
  175.   THEN X "ç" + SWAP
  176. + 7 DISP FA 6 +
  177. 'FA' STO PA9 1 'VD'
  178. STO
  179.   ELSE X "ç" + SWAP
  180. + X 1 + FA - DISP 0
  181. 'VD' STO
  182.   END
  183. NEXT
  184. IF VD 0 ==
  185. THEN PA9
  186. END
  187.               UNTIL
  188. K 95 ==
  189.               END
  190. 5000 .05 BEEP { VD
  191. TXT LST FA } PURGE
  192.             ª
  193.           PA2
  194.             ´ { }
  195. 'AA' STO 9.E499
  196. 'NMIN' STO -9.E499
  197. 'NMAX' STO C SIZE
  198. 'TAM' STO C LISTç 1
  199. SWAP
  200.               FOR X
  201. DUP
  202. IF TYPE 0 ã
  203. THEN DROP 'TAM' 1
  204. STO-
  205. ELSE ç a
  206.   ´
  207.     IF a NMAX >
  208.     THEN a 'NMAX'
  209. STO
  210.     END
  211.     IF a NMIN <
  212.     THEN a 'NMIN'
  213. STO
  214.     END
  215.   ª
  216. END
  217.               NEXT
  218. C LISTç 1 SWAP
  219.               FOR X
  220. DUP
  221. IF TYPE 0 ã
  222. THEN DROP
  223. ELSE ç a
  224.   ´
  225.     CASE a NMAX ==
  226.       THEN 9.E499
  227. 'NMAX' STO
  228.       END a NMIN ==
  229.       THEN -9.E499
  230. 'NMIN' STO
  231.       END AA a +
  232. 'AA' STO
  233.     END
  234.   ª
  235. END
  236.               NEXT
  237. { NMAX NMIN } PURGE
  238. IT AA 0 + ÖLIST TAM
  239. 2 - / + 'IT' STO {
  240. TAM AA } PURGE
  241.             ª
  242.           PA3
  243.             ´ {
  244. "Datos" "Mt" "Tt"
  245. "Ct" "It+Et" } 'L1'
  246. STO { DATA MT TT CT
  247. IT\ET } 'L2' STO 1
  248. 5
  249.               FOR Z
  250. L1 Z GET 'TXT' STO
  251. L2 Z GET 'LST' STO
  252. PA1
  253.               NEXT
  254. { L2 L1 } PURGE
  255.             ª
  256.           PA4
  257.             ´ 3 ç z
  258.               ´
  259. "Öt..." ÖX + 7 DISP
  260. z WAIT "" 7 DISP
  261. "Öt≤..." ÖX^2 + 7
  262. DISP z WAIT "" 7
  263. DISP "ÖMt..." ÖY +
  264. 7 DISP z WAIT "" 7
  265. DISP "ÖtMt..." ÖX*Y
  266. + 7 DISP z WAIT ""
  267. 7 DISP "a..." A + 7
  268. DISP z WAIT "" 7
  269. DISP "b..." B + 7
  270. DISP z WAIT "" 7
  271. DISP
  272.               ª
  273.             ª
  274.           PA9
  275.             ´
  276.               DO
  277.               UNTIL
  278. KEY
  279.               END
  280. 'K' STO "" { 2 3 4
  281. 5 6 7 } DISP
  282.             ª
  283.           vars
  284.             DIR
  285.               A
  286. 3.85
  287.               B
  288. 2.05
  289.               DATA
  290. { 4.7 9 13 11.3
  291. 15.9 19.6 16.7 20.7
  292. 25 23.6 }
  293.               N 2
  294.             END
  295.         END
  296.       ADIT
  297.         DIR
  298.           sTART
  299.             ´ STD
  300. vars "DATOS...
  301. "
  302. DATA çSTR + ""
  303. INPUT DUP
  304.               IF ""
  305. ==
  306.               THEN
  307. DROP
  308.               ELSE
  309. STRç 'DATA' STO
  310.               END
  311. P1 1400 .1 BEEP
  312.             ª
  313.           P1
  314.             ´
  315. "Valor de N
  316. " N +
  317. "" INPUT CLLCD
  318. "Elaborando Analisis
  319. Estadistico..."
  320. 1 DISP STRç 'N' STO
  321. DATA SIZE N - 1 +
  322. 'n' STO DATA SIZE
  323. 'nt' STO
  324. "Computando MTs" 3
  325. DISP DATA N
  326.               ´ 1 N
  327. 1 -
  328. FOR Y +
  329. NEXT N /
  330.               ª
  331. DOSUBS 'MT' STO 1 N
  332. 2 / IP
  333.               FOR X
  334. "---" MT + 'MT' STO
  335.               NEXT
  336. N 2 / IP 1 + 'SMT'
  337. STO P2
  338.             ª
  339.           P2
  340.             ´
  341. "Computando TTs" 4
  342. DISP MT ç a
  343.               ´ a
  344. SIZE ç b
  345. ´ { b 2 } 0 CON
  346. 'MAT' STO SMT b
  347.   FOR X MAT { X 1 }
  348. X PUT 'MAT' STO MAT
  349. { X 2 } a X GET PUT
  350. 'MAT' STO
  351.   NEXT
  352. ª
  353.               ª MAT
  354. 'ÖDAT' STO 'MAT'
  355. PURGE 1 XCOL 2 YCOL
  356. n ÖX*Y * ÖX ÖY * -
  357. n ÖX^2 * ÖX SQ - /
  358. 'B' STO ÖY B ÖX * -
  359. n / 'A' STO PA4 {
  360. ÖPAR ÖDAT } PURGE
  361. P3
  362.             ª
  363.           P3
  364.             ´ 'Tt=A
  365. +B*XX' 'EQ' STO { }
  366. 'TT' STO 1 nt N +
  367.               FOR X
  368. X 'XX' STO EQ 'Tt'
  369. 0 ROOT TT SWAP +
  370. 'TT' STO
  371.               NEXT
  372. { Tt XX EQ } PURGE
  373. "Computando CTs" 5
  374. DISP { } 'CT' STO {
  375. } 'IT\ET' STO 2 SMT
  376.               FOR X
  377. CT "---" + 'CT' STO
  378. IT\ET "---" +
  379. 'IT\ET' STO
  380.               NEXT
  381. "Computando ITs+ETs"
  382. 6 DISP SMT SMT n +
  383. 1 -
  384.               FOR X
  385. CT MT X GET TT X
  386. GET - + 'CT' STO
  387. IT\ET DATA X GET MT
  388. X GET - + 'IT\ET'
  389. STO
  390.               NEXT
  391. PA3 P4
  392.             ª
  393.           P4
  394.             ´ { }
  395. 'IT' STO 1 N
  396.               FOR
  397. X1 { } 'C' STO X1
  398. 'NC' STO X1 n SMT +
  399. 1 -
  400. FOR X2 C IT\ET X2
  401. GET + 'C' STO N
  402. STEP "Columna #" NC
  403. + 'TXT' STO C 'LST'
  404. STO PA1 PA2
  405.               NEXT
  406. { NC C } PURGE P5
  407.             ª
  408.           P5
  409.             ´
  410.               DO
  411. "Ajustando ITs..."
  412. 'TXT' STO IT 'LST'
  413. STO PA1 IT ÖLIST
  414. DUP ABS 'DIf' STO N
  415. / NEG IT ADD 'IT'
  416. STO
  417.               UNTIL
  418. DIf .0000001 <
  419.               END {
  420. } 1 nt N / 1 +
  421.               FOR X
  422. IT +
  423.               NEXT
  424. 'IT' STO 0 'NU' STO
  425. 0 CT 1
  426.               ´ DUP
  427. IF "---" ==
  428. THEN DROP
  429. ELSE + 'NU' 1 STO+
  430. END
  431.               ª
  432. DOSUBS NU / 'CTP'
  433. STO { } 'FT' STO 1
  434. nt N +
  435.               FOR X
  436. FT TT X GET IT X
  437. GET CTP + + + 'FT'
  438. STO
  439.               NEXT
  440. "Ft" 'TXT' STO FT
  441. 'LST' STO PA1 FT 1
  442. nt SUB 'FT' STO
  443. DATA FT - SQ 'E2'
  444. STO "e≤" 'TXT' STO
  445. E2 'LST' STO PA1
  446. CLLCD E2 ÖLIST nt /
  447. 2 DISP "MSE..." 1
  448. DISP PA9 P6
  449.             ª
  450.           P6
  451.             ´ { E2
  452. FT CTP NU DIf IT K
  453. IT\ET CT SMT TT nt
  454. MT n } PURGE UPDIR
  455.             ª
  456.           PA1
  457.             ´
  458.               DO
  459. CLLCD TXT 1 DISP 0
  460. 'FA' STO LST
  461. REVLIST LISTç 1
  462. SWAP
  463. FOR X
  464.   IF X 1 + FA 6 / +
  465. 7 MOD 0 ==
  466.   THEN X "ç" + SWAP
  467. + 7 DISP FA 6 +
  468. 'FA' STO PA9 1 'VD'
  469. STO
  470.   ELSE X "ç" + SWAP
  471. + X 1 + FA - DISP 0
  472. 'VD' STO
  473.   END
  474. NEXT
  475. IF VD 0 ==
  476. THEN PA9
  477. END
  478.               UNTIL
  479. K 95 ==
  480.               END
  481. 5000 .05 BEEP { VD
  482. TXT LST FA } PURGE
  483.             ª
  484.           PA2
  485.             ´ { }
  486. 'AA' STO 9.E499
  487. 'NMIN' STO -9.E499
  488. 'NMAX' STO C SIZE
  489. 'TAM' STO C LISTç 1
  490. SWAP
  491.               FOR X
  492. DUP
  493. IF TYPE 0 ã
  494. THEN DROP 'TAM' 1
  495. STO-
  496. ELSE ç a
  497.   ´
  498.     IF a NMAX >
  499.     THEN a 'NMAX'
  500. STO
  501.     END
  502.     IF a NMIN <
  503.     THEN a 'NMIN'
  504. STO
  505.     END
  506.   ª
  507. END
  508.               NEXT
  509. C LISTç 1 SWAP
  510.               FOR X
  511. DUP
  512. IF TYPE 0 ã
  513. THEN DROP
  514. ELSE ç a
  515.   ´
  516.     CASE a NMAX ==
  517.       THEN 9.E499
  518. 'NMAX' STO
  519.       END a NMIN ==
  520.       THEN -9.E499
  521. 'NMIN' STO
  522.       END AA a +
  523. 'AA' STO
  524.     END
  525.   ª
  526. END
  527.               NEXT
  528. { NMAX NMIN } PURGE
  529. IT AA 0 + ÖLIST TAM
  530. 2 - / + 'IT' STO {
  531. TAM AA } PURGE
  532.             ª
  533.           PA3
  534.             ´ {
  535. "Datos" "Mt" "Tt"
  536. "Ct" "It+Et" } 'L1'
  537. STO { DATA MT TT CT
  538. IT\ET } 'L2' STO 1
  539. 5
  540.               FOR Z
  541. L1 Z GET 'TXT' STO
  542. L2 Z GET 'LST' STO
  543. PA1
  544.               NEXT
  545. { L2 L1 } PURGE
  546.             ª
  547.           PA4
  548.             ´ 3 ç z
  549.               ´
  550. "Öt..." ÖX + 7 DISP
  551. z WAIT "" 7 DISP
  552. "Öt≤..." ÖX^2 + 7
  553. DISP z WAIT "" 7
  554. DISP "ÖMt..." ÖY +
  555. 7 DISP z WAIT "" 7
  556. DISP "ÖtMt..." ÖX*Y
  557. + 7 DISP z WAIT ""
  558. 7 DISP "a..." A + 7
  559. DISP z WAIT "" 7
  560. DISP "b..." B + 7
  561. DISP z WAIT "" 7
  562. DISP
  563.               ª
  564.             ª
  565.           PA9
  566.             ´
  567.               DO
  568.               UNTIL
  569. KEY
  570.               END
  571. 'K' STO "" { 2 3 4
  572. 5 6 7 } DISP
  573.             ª
  574.           vars
  575.             DIR
  576.               A
  577. 591.414835165
  578.               B
  579. -3.10164835165
  580.               N 4
  581.               DATA
  582. { 622 562 599 668
  583. 598 580 668 500 215
  584. 556 586 546 571 635
  585. 640 622 }
  586.             END
  587.         END
  588.     END
  589. END
  590.