home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / ScriptBuilder / NOSB30_TRIAL.exe / data1.cab / Program_Files / scriptlib3.sbl / ROOT70 / DATA
Unknown  |  1998-10-05  |  3.2 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
100% file SIMH tape data default (weak)
99% file data default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 0c 00 00 00 4c 65 61 73 | 74 53 71 75 61 72 65 73 |....Leas|tSquares|
|00000010| 0c 00 00 00 4c 65 61 73 | 74 53 71 75 61 72 65 73 |....Leas|tSquares|
|00000020| 04 00 00 00 50 65 72 6c | 4c 00 00 00 4c 65 61 73 |....Perl|L...Leas|
|00000030| 74 20 53 71 75 61 72 65 | 73 20 69 73 20 61 20 6d |t Square|s is a m|
|00000040| 61 74 68 65 6d 61 74 69 | 63 61 6c 20 61 6c 67 6f |athemati|cal algo|
|00000050| 72 69 74 68 6d 20 74 6f | 20 64 65 74 65 72 6d 69 |rithm to| determi|
|00000060| 6e 65 20 74 68 65 20 73 | 68 61 70 65 20 6f 66 20 |ne the s|hape of |
|00000070| 61 20 63 75 72 76 65 2e | 45 0c 00 00 23 21 2f 75 |a curve.|E...#!/u|
|00000080| 73 72 2f 6c 6f 63 61 6c | 2f 70 65 72 6c 0d 0a 23 |sr/local|/perl..#|
|00000090| 20 6c 73 71 20 5b 2d 77 | 63 5d 5b 2d 6f 20 6f 72 | lsq [-w|c][-o or|
|000000a0| 64 65 72 5d 20 69 6e 66 | 69 6c 65 20 20 20 20 20 |der] inf|ile |
|000000b0| 20 43 61 6c 63 75 6c 61 | 74 65 73 20 6c 65 61 73 | Calcula|tes leas|
|000000c0| 74 2d 73 71 75 61 72 65 | 73 20 66 69 74 20 63 6f |t-square|s fit co|
|000000d0| 65 66 66 69 63 69 65 6e | 74 73 2e 0d 0a 23 20 20 |efficien|ts...# |
|000000e0| 20 20 20 20 20 6f 70 74 | 69 6f 6e 73 3a 20 20 20 | opt|ions: |
|000000f0| 20 2d 6f 20 6f 72 64 65 | 72 20 20 20 20 20 20 53 | -o orde|r S|
|00000100| 70 65 63 69 66 69 65 73 | 20 6f 72 64 65 72 20 6f |pecifies| order o|
|00000110| 66 20 66 69 74 20 28 64 | 65 66 61 75 6c 74 20 69 |f fit (d|efault i|
|00000120| 73 20 31 29 2e 0d 0a 23 | 20 20 20 20 20 20 20 20 |s 1)...#| |
|00000130| 20 20 20 20 20 20 20 20 | 20 20 20 2d 77 20 20 20 | | -w |
|00000140| 20 20 20 20 20 20 20 20 | 20 53 70 65 63 69 66 69 | | Specifi|
|00000150| 65 73 20 77 65 69 67 68 | 74 65 64 20 66 69 74 2e |es weigh|ted fit.|
|00000160| 0d 0a 23 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |..# | |
|00000170| 20 20 20 20 20 20 2d 63 | 20 20 20 20 20 20 20 20 | -c| |
|00000180| 20 20 20 20 43 61 6c 63 | 75 6c 61 74 65 73 20 66 | Calc|ulates f|
|00000190| 69 74 20 26 20 65 72 72 | 6f 72 20 66 6f 72 20 65 |it & err|or for e|
|000001a0| 61 63 68 20 69 6e 70 75 | 74 20 76 61 6c 75 65 2e |ach inpu|t value.|
|000001b0| 0d 0a 0d 0a 23 20 54 61 | 6b 65 73 20 69 6e 70 75 |....# Ta|kes inpu|
|000001c0| 74 20 66 69 6c 65 20 6f | 66 20 74 68 65 20 66 6f |t file o|f the fo|
|000001d0| 72 6d 3a 20 20 20 78 20 | 79 20 3c 77 65 69 67 68 |rm: x |y <weigh|
|000001e0| 74 3e 0d 0a 23 20 4f 75 | 74 70 75 74 20 74 6f 20 |t>..# Ou|tput to |
|000001f0| 73 74 64 6f 75 74 2e 0d | 0a 0d 0a 0d 0a 72 65 71 |stdout..|.....req|
|00000200| 75 69 72 65 20 27 67 65 | 74 6f 70 74 73 2e 70 6c |uire 'ge|topts.pl|
|00000210| 27 3b 0d 0a 26 47 65 74 | 6f 70 74 73 28 22 6f 3a |';..&Get|opts("o:|
|00000220| 77 63 22 29 3b 20 20 20 | 20 20 20 23 20 2d 6f 33 |wc"); | # -o3|
|00000230| 20 3d 20 33 72 64 20 6f | 72 64 65 72 2c 20 2d 77 | = 3rd o|rder, -w|
|00000240| 20 3d 20 77 65 69 67 68 | 74 65 64 2c 20 2d 63 20 | = weigh|ted, -c |
|00000250| 3d 20 63 61 6c 63 75 6c | 61 74 65 20 65 72 72 6f |= calcul|ate erro|
|00000260| 72 0d 0a 0d 0a 24 6f 72 | 64 65 72 20 3d 20 24 6f |r....$or|der = $o|
|00000270| 70 74 5f 6f 20 3f 20 24 | 6f 70 74 5f 6f 20 3a 20 |pt_o ? $|opt_o : |
|00000280| 31 3b 20 20 20 20 20 20 | 20 20 20 20 20 20 23 20 |1; | # |
|00000290| 47 65 74 20 6f 72 64 65 | 72 20 66 72 6f 6d 20 63 |Get orde|r from c|
|000002a0| 6f 6d 6d 61 6e 64 20 6c | 69 6e 65 2e 0d 0a 0d 0a |ommand l|ine.....|
|000002b0| 23 20 52 65 61 64 20 74 | 68 65 20 69 6e 70 75 74 |# Read t|he input|
|000002c0| 20 66 69 6c 65 2e 0d 0a | 77 68 69 6c 65 28 3c 3e | file...|while(<>|
|000002d0| 29 0d 0a 20 7b 0d 0a 20 | 20 73 2f 23 2e 2a 2f 2f |).. {.. | s/#.*//|
|000002e0| 3b 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |; | |
|000002f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000300| 23 20 54 6f 73 73 20 63 | 6f 6d 6d 65 6e 74 73 2e |# Toss c|omments.|
|00000310| 0d 0a 20 20 73 2f 5e 5b | 2c 20 5c 74 5d 2b 2f 2f |.. s/^[|, \t]+//|
|00000320| 3b 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |; | |
|00000330| 20 20 20 20 20 20 20 20 | 20 20 20 23 20 54 6f 73 | | # Tos|
|00000340| 73 20 6c 65 61 64 69 6e | 67 20 67 61 72 62 61 67 |s leadin|g garbag|
|00000350| 65 2e 0d 0a 20 20 28 24 | 78 2c 20 24 79 2c 20 24 |e... ($|x, $y, $|
|00000360| 77 29 20 3d 20 73 70 6c | 69 74 28 2f 5b 2c 20 5c |w) = spl|it(/[, \|
|00000370| 74 5c 6e 5d 2b 2f 2c 20 | 24 5f 29 3b 20 23 20 52 |t\n]+/, |$_); # R|
|00000380| 65 61 64 20 64 61 74 61 | 20 6c 69 6e 65 2e 0d 0a |ead data| line...|
|00000390| 20 20 6e 65 78 74 20 69 | 66 20 24 78 20 65 71 20 | next i|f $x eq |
|000003a0| 22 22 3b 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |""; | |
|000003b0| 20 20 20 20 20 20 20 20 | 20 23 20 53 6b 69 70 20 | | # Skip |
|000003c0| 6c 69 6e 65 73 20 77 69 | 74 68 20 6e 6f 20 64 61 |lines wi|th no da|
|000003d0| 74 61 2e 0d 0a 0d 0a 20 | 20 69 66 28 24 6f 70 74 |ta..... | if($opt|
|000003e0| 5f 63 29 0d 0a 20 20 20 | 7b 0d 0a 20 20 20 20 70 |_c).. |{.. p|
|000003f0| 75 73 68 28 40 78 2c 24 | 78 29 3b 20 20 20 20 20 |ush(@x,$|x); |
|00000400| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000410| 20 20 20 20 23 20 53 61 | 76 65 20 64 61 74 61 20 | # Sa|ve data |
|00000420| 66 6f 72 20 65 72 72 6f | 72 20 63 61 6c 63 75 6c |for erro|r calcul|
|00000430| 61 74 69 6f 6e 0d 0a 20 | 20 20 20 70 75 73 68 28 |ation.. | push(|
|00000440| 40 79 2c 24 79 29 3b 0d | 0a 20 20 20 7d 0d 0a 0d |@y,$y);.|. }...|
|00000450| 0a 23 20 53 61 76 65 20 | 53 75 6d 28 58 2a 2a 6e |.# Save |Sum(X**n|
|00000460| 29 20 61 6e 64 20 53 75 | 6d 28 59 20 2a 20 58 2a |) and Su|m(Y * X*|
|00000470| 2a 6e 29 0d 0a 20 20 24 | 78 6e 20 3d 20 24 6f 70 |*n).. $|xn = $op|
|00000480| 74 5f 77 20 3f 20 24 77 | 20 3a 20 31 3b 20 20 20 |t_w ? $w| : 1; |
|00000490| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 23 20 | | # |
|000004a0| 57 65 69 67 68 74 20 64 | 61 74 61 20 70 6f 69 6e |Weight d|ata poin|
|000004b0| 74 20 69 66 20 64 65 73 | 69 72 65 64 0d 0a 20 20 |t if des|ired.. |
|000004c0| 66 6f 72 28 24 6a 20 3d | 20 30 3b 20 24 6a 20 3c |for($j =| 0; $j <|
|000004d0| 3d 20 24 6f 72 64 65 72 | 3b 20 24 6a 2b 2b 2c 20 |= $order|; $j++, |
|000004e0| 24 78 6e 20 2a 3d 20 24 | 78 29 0d 0a 20 20 20 7b |$xn *= $|x).. {|
|000004f0| 0d 0a 20 20 20 20 24 73 | 5f 78 6e 5b 24 6a 5d 20 |.. $s|_xn[$j] |
|00000500| 20 2b 3d 20 24 78 6e 3b | 0d 0a 20 20 20 20 24 73 | += $xn;|.. $s|
|00000510| 5f 79 78 6e 5b 24 6a 5d | 20 2b 3d 20 24 78 6e 20 |_yxn[$j]| += $xn |
|00000520| 2a 20 24 79 3b 0d 0a 20 | 20 20 7d 0d 0a 20 20 66 |* $y;.. | }.. f|
|00000530| 6f 72 28 3b 20 24 6a 20 | 3c 3d 20 32 20 2a 20 24 |or(; $j |<= 2 * $|
|00000540| 6f 72 64 65 72 3b 20 24 | 6a 2b 2b 2c 20 24 78 6e |order; $|j++, $xn|
|00000550| 20 2a 3d 20 24 78 29 0d | 0a 20 20 20 7b 0d 0a 20 | *= $x).|. {.. |
|00000560| 20 20 20 24 73 5f 78 6e | 5b 24 6a 5d 20 20 2b 3d | $s_xn|[$j] +=|
|00000570| 20 24 78 6e 3b 0d 0a 20 | 20 20 7d 0d 0a 20 7d 0d | $xn;.. | }.. }.|
|00000580| 0a 0d 0a 23 20 4c 6f 61 | 64 20 74 68 65 20 6d 61 |...# Loa|d the ma|
|00000590| 74 72 69 78 2e 0d 0a 66 | 6f 72 28 24 69 20 3d 20 |trix...f|or($i = |
|000005a0| 30 3b 20 24 69 20 3c 3d | 20 24 6f 72 64 65 72 3b |0; $i <=| $order;|
|000005b0| 20 24 69 2b 2b 29 0d 0a | 20 7b 0d 0a 20 20 66 6f | $i++)..| {.. fo|
|000005c0| 72 28 24 6a 20 3d 20 30 | 3b 20 24 6a 20 3c 3d 20 |r($j = 0|; $j <= |
|000005d0| 24 6f 72 64 65 72 3b 20 | 24 6a 2b 2b 29 0d 0a 20 |$order; |$j++).. |
|000005e0| 20 20 7b 0d 0a 20 20 20 | 20 24 6d 61 74 72 69 78 | {.. | $matrix|
|000005f0| 7b 24 69 2c 20 24 6a 7d | 20 3d 20 24 73 5f 78 6e |{$i, $j}| = $s_xn|
|00000600| 5b 24 69 20 2b 20 24 6a | 5d 3b 0d 0a 20 20 20 7d |[$i + $j|];.. }|
|00000610| 0d 0a 20 7d 0d 0a 0d 0a | 40 63 6f 65 66 66 69 63 |.. }....|@coeffic|
|00000620| 69 65 6e 74 20 3d 20 26 | 73 6f 6c 76 65 5f 6d 61 |ient = &|solve_ma|
|00000630| 74 72 69 78 5f 65 71 28 | 2a 6d 61 74 72 69 78 2c |trix_eq(|*matrix,|
|00000640| 20 2a 73 5f 79 78 6e 29 | 3b 0d 0a 0d 0a 66 6f 72 | *s_yxn)|;....for|
|00000650| 28 24 69 20 3d 20 30 3b | 20 24 69 20 3c 3d 20 24 |($i = 0;| $i <= $|
|00000660| 6f 72 64 65 72 3b 20 24 | 69 2b 2b 29 0d 0a 20 7b |order; $|i++).. {|
|00000670| 0d 0a 20 20 70 72 69 6e | 74 66 20 22 41 25 64 20 |.. prin|tf "A%d |
|00000680| 3d 20 25 2e 36 65 5c 6e | 22 2c 24 69 2c 24 63 6f |= %.6e\n|",$i,$co|
|00000690| 65 66 66 69 63 69 65 6e | 74 5b 24 69 5d 3b 0d 0a |efficien|t[$i];..|
|000006a0| 20 7d 0d 0a 0d 0a 69 66 | 28 24 6f 70 74 5f 63 29 | }....if|($opt_c)|
|000006b0| 0d 0a 20 7b 0d 0a 20 20 | 70 72 69 6e 74 66 20 22 |.. {.. |printf "|
|000006c0| 5c 6e 25 31 32 73 20 25 | 31 32 73 20 25 31 32 73 |\n%12s %|12s %12s|
|000006d0| 20 25 31 32 73 5c 6e 22 | 2c 22 78 22 2c 22 79 22 | %12s\n"|,"x","y"|
|000006e0| 2c 22 79 20 66 69 74 22 | 2c 22 66 69 74 20 65 72 |,"y fit"|,"fit er|
|000006f0| 72 6f 72 22 3b 0d 0a 0d | 0a 20 20 66 6f 72 28 24 |ror";...|. for($|
|00000700| 69 20 3d 20 30 3b 20 24 | 69 20 3c 3d 20 24 23 78 |i = 0; $|i <= $#x|
|00000710| 3b 20 24 69 2b 2b 29 0d | 0a 20 20 20 7b 0d 0a 20 |; $i++).|. {.. |
|00000720| 20 20 20 24 79 31 20 3d | 20 26 63 61 6c 63 28 24 | $y1 =| &calc($|
|00000730| 78 5b 24 69 5d 2c 2a 63 | 6f 65 66 66 69 63 69 65 |x[$i],*c|oefficie|
|00000740| 6e 74 29 3b 0d 0a 20 20 | 20 20 70 72 69 6e 74 66 |nt);.. | printf|
|00000750| 20 22 25 31 32 2e 32 67 | 20 25 31 32 2e 32 67 20 | "%12.2g| %12.2g |
|00000760| 25 31 32 2e 32 67 20 25 | 31 32 2e 32 67 5c 6e 22 |%12.2g %|12.2g\n"|
|00000770| 2c 20 24 78 5b 24 69 5d | 2c 24 79 5b 24 69 5d 2c |, $x[$i]|,$y[$i],|
|00000780| 24 79 31 2c 24 79 31 2d | 24 79 5b 24 69 5d 3b 0d |$y1,$y1-|$y[$i];.|
|00000790| 0a 20 20 20 7d 0d 0a 20 | 7d 0d 0a 0d 0a 65 78 69 |. }.. |}....exi|
|000007a0| 74 20 30 3b 0d 0a 0d 0a | 0d 0a 0d 0a 73 75 62 20 |t 0;....|....sub |
|000007b0| 73 6f 6c 76 65 5f 6d 61 | 74 72 69 78 5f 65 71 20 |solve_ma|trix_eq |
|000007c0| 20 20 20 20 20 20 20 20 | 20 20 23 20 70 61 73 73 | | # pass|
|000007d0| 20 2a 6d 61 74 72 69 78 | 20 61 6e 64 20 2a 76 65 | *matrix| and *ve|
|000007e0| 63 74 6f 72 0d 0a 20 7b | 20 20 20 20 20 20 20 20 |ctor.. {| |
|000007f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000800| 20 20 20 20 23 20 72 65 | 74 75 72 6e 73 20 40 78 | # re|turns @x|
|00000810| 20 73 6f 6c 75 74 69 6f | 6e 20 6f 66 20 5b 6d 61 | solutio|n of [ma|
|00000820| 74 72 69 78 5d 2a 5b 40 | 78 5d 3d 5b 76 65 63 74 |trix]*[@|x]=[vect|
|00000830| 6f 72 5d 0d 0a 20 20 6c | 6f 63 61 6c 28 2a 61 2c |or].. l|ocal(*a,|
|00000840| 2a 62 29 20 3d 20 40 5f | 3b 0d 0a 20 20 6c 6f 63 |*b) = @_|;.. loc|
|00000850| 61 6c 28 25 6d 61 74 29 | 20 20 3d 20 25 61 3b 0d |al(%mat)| = %a;.|
|00000860| 0a 20 20 6c 6f 63 61 6c | 28 24 73 69 7a 65 29 20 |. local|($size) |
|00000870| 3d 20 24 23 62 20 2b 20 | 31 3b 0d 0a 20 20 6c 6f |= $#b + |1;.. lo|
|00000880| 63 61 6c 28 24 69 2c 24 | 6a 2c 24 6b 2c 24 66 29 |cal($i,$|j,$k,$f)|
|00000890| 3b 0d 0a 0d 0a 20 20 40 | 6d 61 74 7b 67 72 65 70 |;.... @|mat{grep|
|000008a0| 28 24 5f 20 2e 3d 20 22 | 24 3b 24 73 69 7a 65 22 |($_ .= "|$;$size"|
|000008b0| 2c 20 28 30 20 2e 2e 20 | 24 23 62 29 29 7d 20 3d |, (0 .. |$#b))} =|
|000008c0| 20 40 62 3b 20 20 23 20 | 41 75 67 6d 65 6e 74 20 | @b; # |Augment |
|000008d0| 74 68 65 20 6d 61 74 72 | 69 78 0d 0a 0d 0a 20 20 |the matr|ix.... |
|000008e0| 66 6f 72 28 24 69 20 3d | 20 30 3b 20 24 69 20 3c |for($i =| 0; $i <|
|000008f0| 20 24 23 62 3b 20 24 69 | 2b 2b 29 0d 0a 20 20 20 | $#b; $i|++).. |
|00000900| 7b 0d 0a 20 20 20 20 66 | 6f 72 28 24 6a 20 3d 20 |{.. f|or($j = |
|00000910| 24 69 20 2b 20 31 3b 20 | 24 6a 20 3c 3d 20 24 23 |$i + 1; |$j <= $#|
|00000920| 62 3b 20 24 6a 2b 2b 29 | 0d 0a 20 20 20 20 20 7b |b; $j++)|.. {|
|00000930| 0d 0a 20 20 20 20 20 20 | 24 66 20 3d 20 24 6d 61 |.. |$f = $ma|
|00000940| 74 7b 24 69 2c 20 24 69 | 7d 20 2f 20 24 6d 61 74 |t{$i, $i|} / $mat|
|00000950| 7b 24 6a 2c 20 24 69 7d | 3b 0d 0a 20 20 20 20 20 |{$j, $i}|;.. |
|00000960| 20 66 6f 72 28 24 6b 20 | 3d 20 30 3b 20 24 6b 20 | for($k |= 0; $k |
|00000970| 3c 3d 20 24 73 69 7a 65 | 3b 20 24 6b 2b 2b 29 0d |<= $size|; $k++).|
|00000980| 0a 20 20 20 20 20 20 20 | 7b 0d 0a 20 20 20 20 20 |. |{.. |
|00000990| 20 20 20 24 6d 61 74 7b | 24 6a 2c 20 24 6b 7d 20 | $mat{|$j, $k} |
|000009a0| 3d 20 24 6d 61 74 7b 24 | 6a 2c 20 24 6b 7d 20 2a |= $mat{$|j, $k} *|
|000009b0| 20 24 66 20 2d 20 24 6d | 61 74 7b 24 69 2c 20 24 | $f - $m|at{$i, $|
|000009c0| 6b 7d 3b 0d 0a 20 20 20 | 20 20 20 20 7d 0d 0a 20 |k};.. | }.. |
|000009d0| 20 20 20 20 7d 0d 0a 20 | 20 20 7d 0d 0a 20 20 66 | }.. | }.. f|
|000009e0| 6f 72 28 24 69 20 3d 20 | 24 23 62 3b 20 24 69 20 |or($i = |$#b; $i |
|000009f0| 3e 20 30 3b 20 24 69 2d | 2d 29 0d 0a 20 20 20 7b |> 0; $i-|-).. {|
|00000a00| 0d 0a 20 20 20 20 66 6f | 72 28 24 6a 20 3d 20 24 |.. fo|r($j = $|
|00000a10| 69 20 2d 20 31 3b 20 24 | 6a 20 3e 3d 20 30 3b 20 |i - 1; $|j >= 0; |
|00000a20| 24 6a 2d 2d 29 0d 0a 20 | 20 20 20 20 7b 0d 0a 20 |$j--).. | {.. |
|00000a30| 20 20 20 20 20 24 66 20 | 3d 20 24 6d 61 74 7b 24 | $f |= $mat{$|
|00000a40| 69 2c 20 24 69 7d 20 2f | 20 24 6d 61 74 7b 24 6a |i, $i} /| $mat{$j|
|00000a50| 2c 20 24 69 7d 3b 0d 0a | 20 20 20 20 20 20 66 6f |, $i};..| fo|
|00000a60| 72 28 24 6b 20 3d 20 24 | 6a 3b 20 24 6b 20 3c 3d |r($k = $|j; $k <=|
|00000a70| 20 24 73 69 7a 65 3b 20 | 24 6b 2b 2b 29 0d 0a 20 | $size; |$k++).. |
|00000a80| 20 20 20 20 20 20 7b 0d | 0a 20 20 20 20 20 20 20 | {.|. |
|00000a90| 20 24 6d 61 74 7b 24 6a | 2c 20 24 6b 7d 20 3d 20 | $mat{$j|, $k} = |
|00000aa0| 24 6d 61 74 7b 24 6a 2c | 20 24 6b 7d 20 2a 20 24 |$mat{$j,| $k} * $|
|00000ab0| 66 20 2d 20 24 6d 61 74 | 7b 24 69 2c 20 24 6b 7d |f - $mat|{$i, $k}|
|00000ac0| 3b 0d 0a 20 20 20 20 20 | 20 20 7d 0d 0a 20 20 20 |;.. | }.. |
|00000ad0| 20 20 7d 0d 0a 20 20 20 | 7d 0d 0a 20 20 66 6f 72 | }.. |}.. for|
|00000ae0| 28 24 69 20 3d 20 30 3b | 20 24 69 20 3c 3d 20 24 |($i = 0;| $i <= $|
|00000af0| 23 62 3b 20 24 69 2b 2b | 29 20 20 20 20 20 20 20 |#b; $i++|) |
|00000b00| 20 20 20 20 20 20 20 20 | 23 20 4e 6f 72 6d 61 6c | |# Normal|
|00000b10| 69 7a 65 20 74 68 65 20 | 64 69 61 67 6f 6e 61 6c |ize the |diagonal|
|00000b20| 0d 0a 20 20 20 7b 0d 0a | 20 20 20 20 24 6d 61 74 |.. {..| $mat|
|00000b30| 7b 24 69 2c 20 24 73 69 | 7a 65 7d 20 2f 3d 20 24 |{$i, $si|ze} /= $|
|00000b40| 6d 61 74 7b 24 69 2c 20 | 24 69 7d 3b 0d 0a 20 20 |mat{$i, |$i};.. |
|00000b50| 20 20 24 6d 61 74 7b 24 | 69 2c 20 24 69 7d 20 3d | $mat{$|i, $i} =|
|00000b60| 20 31 2e 30 3b 0d 0a 20 | 20 20 7d 0d 0a 0d 0a 20 | 1.0;.. | }.... |
|00000b70| 20 40 6d 61 74 7b 67 72 | 65 70 28 24 5f 20 2e 3d | @mat{gr|ep($_ .=|
|00000b80| 20 22 24 3b 24 73 69 7a | 65 22 2c 20 28 30 20 2e | "$;$siz|e", (0 .|
|00000b90| 2e 20 24 23 62 29 29 7d | 3b 20 20 20 23 20 41 6e |. $#b))}|; # An|
|00000ba0| 73 77 65 72 20 69 73 20 | 69 6e 20 61 75 67 6d 65 |swer is |in augme|
|00000bb0| 6e 74 65 64 20 63 6f 6c | 75 6d 6e 0d 0a 20 7d 0d |nted col|umn.. }.|
|00000bc0| 0a 0d 0a 0d 0a 73 75 62 | 20 63 61 6c 63 20 20 20 |.....sub| calc |
|00000bd0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 23 20 50 | | # P|
|00000be0| 61 73 73 20 24 78 20 61 | 6e 64 20 2a 61 20 28 61 |ass $x a|nd *a (a|
|00000bf0| 72 72 61 79 20 6f 66 20 | 63 6f 65 66 66 69 63 69 |rray of |coeffici|
|00000c00| 65 6e 74 73 29 0d 0a 20 | 7b 20 20 20 20 20 20 20 |ents).. |{ |
|00000c10| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 23 | | #|
|00000c20| 20 52 65 74 75 72 6e 73 | 20 53 75 6d 28 24 61 5b | Returns| Sum($a[|
|00000c30| 24 69 5d 20 2a 20 24 78 | 2a 2a 24 69 29 0d 0a 20 |$i] * $x|**$i).. |
|00000c40| 20 6c 6f 63 61 6c 28 24 | 78 2c 20 2a 61 29 20 3d | local($|x, *a) =|
|00000c50| 20 40 5f 3b 0d 0a 20 20 | 6c 6f 63 61 6c 28 24 79 | @_;.. |local($y|
|00000c60| 2c 24 78 6e 29 3b 0d 0a | 0d 0a 20 20 24 78 6e 20 |,$xn);..|.. $xn |
|00000c70| 3d 20 31 3b 0d 0a 20 20 | 66 6f 72 65 61 63 68 28 |= 1;.. |foreach(|
|00000c80| 40 61 29 0d 0a 20 20 20 | 7b 0d 0a 20 20 20 20 24 |@a).. |{.. $|
|00000c90| 79 20 2b 3d 20 24 5f 20 | 2a 20 24 78 6e 3b 0d 0a |y += $_ |* $xn;..|
|00000ca0| 20 20 20 20 24 78 6e 20 | 2a 3d 20 24 78 3b 0d 0a | $xn |*= $x;..|
|00000cb0| 20 20 20 7d 0d 0a 20 20 | 24 79 3b 0d 0a 20 7d 0d | }.. |$y;.. }.|
|00000cc0| 0a 03 00 00 00 4e 2f 41 | 03 00 00 00 4e 2f 41 |.....N/A|....N/A |
+--------+-------------------------+-------------------------+--------+--------+