Roots of a function: Difference between revisions

Content added Content deleted
m (→‎{{header|Sidef}}: updated code)
Line 2,372: Line 2,372:
=={{header|Sidef}}==
=={{header|Sidef}}==
<lang ruby>func f(x) {
<lang ruby>func f(x) {
x*x*x - 3*x*x + 2*x;
x*x*x - 3*x*x + 2*x
}
}
 

var step = 0.001;
var step = 0.001
var start = -1;
var start = -1
var stop = 3;
var stop = 3
 

range(start+step, stop, step).each { |x|
for x in range(start+step, stop, step) {
static sign = false;
static sign = false
given (var value = f(x)) {
given (var value = f(x)) {
when (0) {
when (0) {
say "Root found at #{x}";
say "Root found at #{x}"
}
}
case (sign && ((value > 0) != sign)) {
case (sign && ((value > 0) != sign)) {
say "Root found near #{x}";
say "Root found near #{x}"
}
}
}
}
sign = value>0;
sign = value>0
}</lang>
}</lang>
{{out}}
{{out}}