Horner's rule for polynomial evaluation: Difference between revisions

Content added Content deleted
(→‎{{header|AutoHotkey}}: ++ algol68(g))
(Added ada)
Line 20: Line 20:


C.f: [[Formal power series]]
C.f: [[Formal power series]]
=={{header|Ada}}==
<lang Ada>
with Ada.Text_IO, Ada.Float_Text_IO;
use Ada.Text_IO, Ada.Float_Text_IO;
procedure horners_rule is
type Coef is array(Positive range <>) of Float;
coefficients : Coef := (-19.0,7.0,-4.0,6.0);
x : Float := 3.0;

function horner(coeffs: Coef; val: Float) return Float is
res : Float := 0.0;
begin
for p in reverse coeffs'Range loop
res := res*val + coeffs(p);
end loop;
return res;
end horner;
begin
put(horner(coefficients,x),Aft=>1,Exp=>0);
end horners_rule;
</lang>
Output:
<pre>
128.0
</pre>
=={{header|ALGOL 68}}==
=={{header|ALGOL 68}}==
{{works with|ALGOL 68G}}
{{works with|ALGOL 68G}}