All pastes #799930 Raw Edit

Unnamed

public c v1 · immutable
#799930 ·published 2007-11-27 23:38 UTC
rendered paste body
#include <stdio.h>double foo(double (*procedure)(double,double),int from,int to){    if(from>to)        return 0;    else        return procedure(foo(procedure,from+1,to),(double)from);}double bar(double (*procedure)(double,double),int from, int to, double start){    if(from > to)        return start;    else        return bar(procedure, from, to-1, procedure(start, (double)to));}double baz(double (*procedure)(double,double), int from, int to, double start){    for(;from <= to; to--)        start = procedure(start, (double)to);    return start;}double add(double a, double b){    return a+b;}int main(void){    printf("Foo = %f\n", foo(add, 17, 301));    printf("Bar = %f\n", bar(add, 17, 301, 0.));    printf("Baz = %f\n", baz(add, 17, 301, 0.));    return 0;}