大学入試問題を SymPy で解く を,R の caracas で解いてみる
https://blog.goo.ne.jp/r-de-r/e/e9ae65b5a4f4f53f0f51a9fc1a5ceb5a
library(caracas);
1. 22092501剰余の定理22京都産業大
x = symbol("x")
a = symbol("a")
b = symbol("b")
c = symbol("c")
f = symbol("f")
g = symbol("g")
f = x^11 + 1
g = a*x + b
solve_sys(rbind(subs(g, x, -1L) - subs(f, x, -1L), subs(g, x, 1L) - subs(f, x, 1L)), list(a, b))
Solution 1:
a = 1
b = 1
2. 22082401定積分01芝浦工業大
a = symbol("a")
b = symbol("b")
c = symbol("c")
x = symbol("x")
k = symbol("k")
f = symbol("f")
expr = x^3 + a*x^2 +b*x + c
i = int(expr, x, k, k+1)
ans = solve_sys(i - k^3, list(a, b, c))
ans
Solution 1:
a = -3/2
b = 1/2
c = 0
f = subs_lst(expr, list(a = ans[[1]]$a, b = ans[[1]]$b, c = ans[[1]]$c))
f
[caracas]: 2
3 3⋅x x
x - ──── + ─
2 2
または
f = subs_vec(expr, as_sym(c("a", "b", "c")), unlist(ans))
f
[caracas]: 2
3 3⋅x x
x - ──── + ─
2 2
n = symbol("n")
int(f, x, 1, n+1) %>% simplify
[caracas]: 2 ⎛ 2 ⎞
n ⋅⎝n + 2⋅n + 1⎠
─────────────────
4
sum_(x^3, x, 1, n) %>% simplify
[caracas]: 2 ⎛ 2 ⎞
n ⋅⎝n + 2⋅n + 1⎠
─────────────────
4
cracas には factor がないので,きれいな形にできない。直接 sympy の factor を呼ぶ。
sympy = get_sympy()
sympy$factor(int(f, x, 1, n+1))
{pyobj: n**2*(n + 1)**2/4}
sympy$factor(sum_(x^3, x, 1, n))
'{pyobj: n**2*(n + 1)**2/4}'
n**2*(n + 1)**2/4
[caracas]: 2 2
n ⋅(n + 1)
───────────
4