static int Main() { Func <double, double> f = delegate(double x) { return(x); }; Write("f({0}) = {1}\n", 9, f(9)); // This will be a different type than f, because the delegate is // in our class, and the Func is in the system class myfun g = delegate(double x) { return(x); }; Func <double, double> f1 = makefun(1); Func <double, double> f2 = makefun(2); double a; a = 1; Func <double, double> h1 = (x) => a; a = 2; Func <double, double> h2 = (x) => a; var f3 = makefun(2); Write($"f1(0) = {f1(0)}, f2(0) = {f2(0)}\n"); a = 9; Write($"a = {a}, h1(0) = {eval(h1, 0)}, h2(0) = {eval(h2, 0)}\n"); for (double x = 0.5; x < 9; x += 0.5) { Write($"{x:f5} {gamma(x):f15}\n"); } return(0); }
static int Main() { Func <double, double> f = delegate(double x){ return(x); }; myfun g = delegate(double x){ return(x); }; Write("f({0})={1}\n", 9, f(9)); double a = 1; Func <double, double> h1 = (x) => a; a = 2; Func <double, double> h2 = (x) => a; Func <double, double> f1 = makefun(1); var f2 = makefun(2); Write($"f1(0)={f1(0)}, f2(0)={f2(0)}\n"); Write($"a={a}\n h1(0)={h1(0)}, h2(0)={eval(h2,0)}\n"); for (double x = 0.5; x < 9; x += 0.5) { Write($"{x:f5} {gamma(x)} {ncalls}\n"); } return(0); }