剧情提要:
[机器小伟]在[工程师阿伟]的陪同下进入了[九转金丹]之第八转的修炼。设想一个场景:
如果允许你带一台不连网的计算机去参加高考,你会放弃选择一个手拿计算器和草稿本吗
?阿伟决定和小伟来尝试一下用计算机算高考题会是怎样的感觉。
正剧开始:
本节到此结束,欲知后事如何,请看下回分解。
[机器小伟]在[工程师阿伟]的陪同下进入了[九转金丹]之第八转的修炼。设想一个场景:
如果允许你带一台不连网的计算机去参加高考,你会放弃选择一个手拿计算器和草稿本吗
?阿伟决定和小伟来尝试一下用计算机算高考题会是怎样的感觉。
正剧开始:
星历2016年05月24日 17:11:11, 银河系厄尔斯星球中华帝国江南行省。
[工程师阿伟]正在和[机器小伟]一起做着2011年的江苏省数学高考题]。
2011年的卷子,难度比上一年的稍小一点,但阿伟觉得也达到了5.5环的难度。
这次的特色,是导数这块的考察占了半壁江山.
<span style="font-size:18px;"> '题2',
'g(x) = f\'(x) = 1/((2x+1)*ln5) > 0',
'=> 2x+1>0',
'=> x>-1/2'</span>
<span style="font-size:18px;">#题8
def tmp8():
solve = StringAlgSolve();
f1 = ['2x'];
f2 =['4x^[-1]'];
f1 = alg.strformat(f1);
f2 = alg.strformat(f2);
print('step 1: ', f1);
print('step 1: ', f2);
g1 = alg.strcombine(alg.stradd(alg.strpow_n(f1, 2), alg.strpow_n(f2, 2)));
print('step 2: ', g1);</span>
<span style="font-size:18px;"> #题11
def tmp11():
solve = StringAlgSolve();
f1 = ['2', '-2a', 'a', '1', 'a', '2a'];
f1 = solve.format(f1);
f1 = solve.coefArray(f1, 'a');
f1 = solve.solvePoly(f1);
f1 = eval(f1[0]);
print(f1); #-1.5</span>
<span style="font-size:18px;"> '题17',
'S = 240x-8x^[2]',
'V = 4 |2^[0.5]x^[2](30-x)'</span>
<span style="font-size:18px;">#题18
def tmp18():
solve = StringAlgSolve();
equation = alg.Equation();
#椭圆长短轴
a, b = 2, 1.414;
M = [-a, 0];
N = [0, -b];
#直线PA
PA = [['x_[P]', 'kx_[P]'], ['x_[A]', 'kx_[A]']];
AC = [['x_[A]', 'kx_[A]'], ['x_[P]', '0']];
#
mid = np.array([0.5])*(np.array(M)+np.array(N));
print(mid); #[-1. -0.707]
k = mid[1]/mid[0];
print(k);
#y = 2x 与椭圆的交点
f1 = ['(1/4)x^[2]', '(1/2*4)x^[2]', '-1'];
f1 = solve.format(f1);
x = solve.coefArray(f1, 'x');
print(x); #此步得到用x表示的y的各次方的系数阵列
x = solve.arrayEval(x);
print(x);
roots = equation.quadratic(x);
print(roots);
#点P, A
P = [roots[1], 2*roots[1]];
A = [roots[0], 2*roots[0]];
print(P, A);
[-1. -0.707]
0.707
['(1/4)^[2]+(1/2*4)^[2]', '0', '(-1)']
[4.0625, 0, -1]
[-0.4961389383568338, 0.4961389383568338]
[0.4961389383568338, 0.9922778767136676] [-0.4961389383568338, -0.9922778767136676]</span>
<span style="font-size:18px;">#题21B
def tmp21B():
A = [[1,1], [2,1]];
B = [[1], [2]];
A_ = np.linalg.inv(A);
print(A_);
a = np.dot(A_, np.dot(A_, B));
print(a);
#验算
b = np.dot(np.dot(A, A), a);
print(b);
>>>
[[-1. 1.]
[ 2. -1.]]
[[-1.]
[ 2.]]
[[ 1.]
[ 2.]]</span>
本来阿伟想让[机器小伟]大展一下身手的,突然发现小伟的神通还没修炼到家,
于是就先列一下小伟现在能做的事吧,免得空欢喜。
<span style="font-size:18px;"> if (1) {
var text = new DrawText();
//左对齐文本默认从20px处,中对齐是300处,右对齐580处
var xL = 20, xM = 300, xR = 580;
var y = 50;
text.bold(['[机器小伟] 神通一览表'], xM, y, 0, 'black', 40, 'M');
y += 50;
text.normal(['1. 定值计算:参与运算的都是给定的值,不存在未知数。',
'2. 数值计算:运用迭代或递归等方式进行一系列运算尝试,逼近得出结果。',
'3. 描点绘图: 对于各种函数进行描点,并绘制出图像。'],
xL, y, 0, 'blue', 16, 'L');
y+= 80;
text.italic(['以上三条为机器族的共有神通,不再赘述。'],
xL, y, 0, '#000088', 16, 'L');
y+= 30;
text.bold(['4. 几何运算:点的坐标中不存在未知数时,可以作为几何图形运算。',
'5. 代数运算:对于所有代数式,可以进行多项式运算,得出多项式作为结果。',
'6. 对于不含指数,对数,三角的多项式,可以变形成其中某一参数的表达式。',
'7. 第(5|6)步中的表达式中所有参数都给定取值,可以计算出值或根。'],
xL, y, 0, 'red', 16, 'L');
y+=100;
text.italic(['所以可以得到简单多项式运算后的简单多项式,并且可以求其值或根',
'参数个数不限',
'分式或其它非简单多项式的代数式,可参与求值或得出代数式结果',
'但无法进一步变形或分解成简单多项式组。'],
xL, y, 0, '#000088', 16, 'L');
//时间戳
y+=80;
text.bold(['2016年05月25日'], xR, y, 0, '#880088', 16, 'R');
}</span>
本节到此结束,欲知后事如何,请看下回分解。