(2018) 10 2018 12 06
p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0 = n a n x n k=0
p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0 = n a n x n k=0 1 a k x k = a k {{ x x x
p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0 = n a n x n k=0 1 a k x k = a k {{ x x x 2 x x k x k = x x k 1 x k 1
p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0 = n a n x n k=0 1 a k x k = a k {{ x x x 2 x x k x k = x x k 1 x k 1 ( 3 x (x(xa ) ) n + a n 1 ) + a n 2 + a1 + a 0
p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0 = n a n x n k=0 1 a k x k = a k {{ x x x 2 x x k x k = x x k 1 x k 1 ( 3 x (x(xa ) ) n + a n 1 ) + a n 2 + a1 + a 0 {{ n
p(x) = a n x n + a n 1 x n 1 + + a 1 x + a 0 = n a n x n k=0 1 a k x k = a k {{ x x x 2 x x k x k = x x k 1 x k 1 ( 3 x (x(xa ) ) n + a n 1 ) + a n 2 + a1 + a 0 {{ n
n 2 double _simple(double x, double *a, int n) { int i, k; double s, t; s = 0; for (k = n; k >= 0; k--) { t = 10; for (i = 1; i <= k; i++) { t *= x; s += a[k] * t; return s;
n 2 double _simple(double x, double *a, int n) { int i, k; double s, t; s = 0; for (k = n; k >= 0; k--) { t = 10; for (i = 1; i <= k; i++) { t *= x; s += a[k] * t; return s; k n k 2 = n(n + 1)/2 1 2n
Honer n double _honer(double x, double *a, int n) { int i, k; double s, t; s = a[n]; for (k = n - 1; k >= 0; k--) { s = s * x + a[k]; return s;
Honer n double _honer(double x, double *a, int n) { int i, k; double s, t; s = a[n]; for (k = n - 1; k >= 0; k--) { s = s * x + a[k]; 1 2n return s;
pow() double _power(double x, double *a, int n) { int i, k; double s, t; s = 0; for (k = n - 1; k >= 0; k--) { s += a[k]*pow(x, k); return s;
pow() double _power(double x, double *a, int n) { int i, k; double s, t; s = 0; for (k = n - 1; k >= 0; k--) { s += a[k]*pow(x, k); 1 2n 1 n return s;
gettimeofday #include <sys/timeh> int gettimeofday( struct timeval tv, struct timezone tz) struct timeval { time_t tv_sec; /* */ suseconds_t tv_usec; /* */ ; struct timeval ts, tf; gettimeofday(&ts, NULL); /* */ gettimeofday(&tf, NULL); /* */ tftv_usec - tstv_usec; /* */
gettimeofday #include <sys/timeh> int gettimeofday( struct timeval tv, struct timezone tz) struct timeval { time_t tv_sec; /* */ suseconds_t tv_usec; /* */ ; struct timeval ts, tf; gettimeofday(&ts, NULL); /* */ gettimeofday(&tf, NULL); /* */ tftv_usec - tstv_usec; /* */ POSIX1-2008
clock_gettime #include <timeh> int clock_gettime( clockid_t clk_id, struct timespec res) struct timespec { time_t tv_sec; /* */ long tv_nsec; /* */ ; clockid_t clk = 1; struct timespec ts, tf; clock_gettime(clk, &ts); /* */ clock_gettime(clk, &tf); /* */ tftv_nsec - tstv_nsec; /* */
1 2
1 2
1 2 3 CPU
1 2 3 CPU
1 2 3 CPU gcc O gcc - On ***c (n =0,1,2,3)
2 g v dv x dt = bv x, dv y dt = g bv y (1) b v 0 θ x(t) = v 0 cos θ ( 1 e bt) (2) b y(t) = 1 ( v 0 sin θ + g ) ( 1 e bt) g b b b t (3) 11 ( ) p14
2 1 y 4 t m y > 0 y < 0 t m1 h = 0001 2 t m (3) 0 [ t m1 h, t m1 ] t m2 3 t m2 (3) y(t m2 ) 0 4 x(t m )
2 4 rk4fixo rk4fixv6 main x(t), y(t) g = 98 m s 2, b = 10 m 1, v 0 = 98 m s 1 θ mod 60 +20 20 79
2 θ = 26 h 0001 2 10 10 13 $ /hw2018a-2 Th = 26 tm = 07780000000000 t = 07770948429848, y = +7238654e-13 t = 07770948429849, y = +3916867e-13 t = 07770948429850, y = +5950795e-14 t = 07770948429851, y = -2726708e-13 t = 07770948429852, y = -6039613e-13 xm = 47587109588997
2 θ 3 2 θ = 80 70 60 50 40 30 20 y 1 0 0 1 2 3 4 5 x
2 wasedajp matuda-namio@aoniwasedajp 1Y17B999 2 12 12 20:00 hw2018a-2c