 
 
 
 
 
 
 
  
| euler.c | 
| /* euler.c */
#include <stdio.h>
#include <math.h>
int main()
{
    int i, N;
    double a = 0.0, b = 1.0;
    double x0;
    double t, x, h;
    double f(double, double);
    printf(" x0="); scanf("%lf", &x0);
    printf(" N="); scanf("%d", &N);
    h = (b - a) / N;
    t = a; x = x0;
    printf("%g %g\n", t, x);
    for (i = 0; i < N; i++) {
        x = x + h * f(t,x);
        t = t + h;
        printf("%g %g\n", t, x);
    }
    printf("%g %20.15e\n", t, x);
    return 0;
}
double f(double t, double x)
{
    return x;
}
 | 
| 実行結果 | 
| mathpc00% ./euler x0=1 N=100 0 1 0.01 1.01 0.02 1.0201 0.03 1.0303 0.04 1.0406 0.05 1.05101 0.06 1.06152 0.07 1.07214 0.08 1.08286 0.09 1.09369 中略 0.91 2.47312 0.92 2.49785 0.93 2.52283 0.94 2.54806 0.95 2.57354 0.96 2.59927 0.97 2.62527 0.98 2.65152 0.99 2.67803 1 2.70481 1 2.704813829421526e+00 mathpc00% | 
 
 
 
 
 
 
