D Recurrences

Ben Grabham Evil.Nebster at gmail.com
Thu Jun 9 08:19:23 PDT 2011


Hey,

Shouldn't both these programs output the fibonnacci numbers? Only the 
first one does.

import std.range;
import std.stdio;
int main() {
	auto a = recurrence!("a[n-1] + a[n-2]")(0,1);
	int i = 0;
	foreach(int n; a) {
		if(i++ > 20) break;
		writefln("%d", n);
	}
	return 0;
}



import std.range;
import std.stdio;
int main() {
	auto a = recurrence!("a[n-1] + (n < 2 ? 0 : a[n-2])")(1);
	int i = 0;
	foreach(int n; a) {
		if(i++ > 20) break;
		writefln("%d", n);
	}
	return 0;
}


More information about the Digitalmars-d mailing list