[从头学数学] 第209节 带着计算机去高考(一)
来源:互联网 发布:淘宝处理不公平 编辑:程序博客网 时间:2024/05/01 13:08
剧情提要:
[机器小伟]在[工程师阿伟]的陪同下进入了[九转金丹]之第八转的修炼。设想一个场景:
如果允许你带一台不连网的计算机去参加高考,你会放弃选择一个手拿计算器和草稿本吗
?阿伟决定和小伟来尝试一下用计算机算高考题会是怎样的感觉。
[机器小伟]在[工程师阿伟]的陪同下进入了[九转金丹]之第八转的修炼。设想一个场景:
如果允许你带一台不连网的计算机去参加高考,你会放弃选择一个手拿计算器和草稿本吗
?阿伟决定和小伟来尝试一下用计算机算高考题会是怎样的感觉。
正剧开始:
星历2016年05月16日 17:25:11, 银河系厄尔斯星球中华帝国江南行省。
[工程师阿伟]正在和[机器小伟]一起做着2000年的江苏省数学高考题]。
<span style="font-size:18px;">#题1>>> 4def tmp(): a = [2, 3, 4, 5]; f = '2**n+n'; for i in range(len(a)): n = a[i]; if eval(f) == 20: print(n);</span>
<span style="font-size:18px;">#题2>>> (2.999955999354648+1.732076211353316j)def tmp2(): a = (3-1.732j); thita = math.pi/3; b = complex(math.cos(thita), math.sin(thita)); c = a*b; print(c);</span>
<span style="font-size:18px;">#题3>>> D 2.449489742783178def tmp3(): ab=2**0.5; bc=3**0.5; ac=6**0.5 # => sqrt(a**2+b**2+c**2) a2 = ab*ac/bc; b2 = ab*bc/ac; c2 = bc*ac/ab; table = 'ABCD'; answer = math.sqrt(a2+b2+c2); choice = [2*3**0.5, 3*2**0.5, 6, 6**0.5]; for i in range(len(choice)): if abs(choice[i]-answer) < 0.1: print(table[i], answer);</span>
<span style="font-size:18px;">#题4>>> 象限 1cos --- -0.03291312439684896tan --- 0.11633650601051977象限 2cos --- 0.032913124396848896tan --- -0.08753362531749721象限 3cos --- -0.032913124396848875tan --- -0.11633650601051942象限 4cos --- 0.032913124396848896tan --- 0.08753362531749721def tmp4(): #给出60, 45度两个特例 a = [math.pi/3, math.pi/4]; for i in range(4): thita_1 = a[0]+math.pi/2*i; thita_2 = a[1]+math.pi/2*i; print('象限', i+1);#与sin差值相乘判断同号 d1 = (math.cos(thita_1)-math.cos(thita_2))*(math.sin(thita_1)-math.sin(thita_2)); d2 = (math.tan(thita_1)-math.tan(thita_2))*(math.sin(thita_1)-math.sin(thita_2)); print('cos --- ', d1); print('tan --- ', d2);</span>
<span style="font-size:18px;">//题5 if (1) { var r = 20; config.setSector(1,1,1,1); config.graphPaper2D(0, 0, r); config.axis2D(0, 0,180); //坐标轴设定 var scaleX = 2*r, scaleY = 2*r; var spaceX = 2, spaceY = 2; var xS = -10, xE = 10; var yS = -10, yE = 10; config.axisSpacing(xS, xE, spaceX, scaleX, 'X'); config.axisSpacing(yS, yE, spaceY, scaleY, 'Y'); var transform = new Transform(); //存放函数图像上的点 var a = [], b = [], c = [], d = []; //需要显示的函数说明 //希腊字母表(存此用于Ctrl C/V //ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ //αβγδεζηθικλμνξοπρστυφχψω var f1 = 'y = -xcosx', f2 = '', f3 = '', f4 = ''; for (var x = xS; x <= xE; x+=0.4) { a.push([x, taskFun(x)]); } //存放临时数组 var tmp = []; //显示变换 if (a.length > 0) { a = transform.scale(transform.translate(a, 0, 0), scaleX/spaceX, scaleY/spaceY); //函数1 tmp = [].concat(a); shape.pointDraw(tmp, 'red'); tmp = [].concat(a); shape.multiLineDraw(tmp, 'pink'); plot.setFillStyle('red'); plot.fillText(f1, 100, -180, 200); } } } function taskFun(x) {return x*Math.cos(x);}</span>
<span style="font-size:18px;">#题6>>> 当月工资介于 1400 , 1500def tmp6(): a = []; d = 26.78; for i in range(800, 3000, 100): if (i < 800): a.append(0); elif (i < 800+500): a.append((i-800)*0.05); elif (i < 800+500+1500): a.append(500*0.05+(i-1300)*0.1); elif (i < 800+2000+3000): a.append(500*0.05+1500*0.1+(i-2800)*0.15); if (len(a)>2 and a[-2] <d and a[-1]>=d): print('当月工资介于', i, ', ', i+100); break;</span>
<span style="font-size:18px;">#题7>>> 0.8726396796036775, 0.8958797346140275, 0.9162907318741551def tmp7(): #给定特例 a, b = 3, 2; P = (math.log(a)*math.log(b))**0.5; Q = 0.5*(math.log(a)+math.log(b)); R = math.log((a+b)/2); print('{0}, {1}, {2}'.format(P, Q, R));</span>
<span style="font-size:18px;">#题9>>> A 1.1591549430918953def tmp9(): h = 1; S_side = h*h; r = h/(math.pi*2); S_total = math.pi*r**2*2+S_side; #答案 answer = S_total/S_side; table = 'ABCD'; #选项 choice = [1/(math.pi*2)+1, 1/(math.pi*4)+1, 1/(math.pi)+2, 1/(math.pi*2)+2]; for i in range(len(choice)): if abs(choice[i]-answer) < 0.001: print(table[i], answer);</span>
<span style="font-size:18px;"> if (1) { var r = 20; config.setSector(1,1,1,1); config.graphPaper2D(0, 0, r); config.axis2D(0, 0,180); //坐标轴设定 var scaleX = 2*r, scaleY = 2*r; var spaceX = 1, spaceY = 1; var xS = -5, xE = 5; var yS = -10, yE = 10; config.axisSpacing(xS, xE, spaceX, scaleX, 'X'); config.axisSpacing(yS, yE, spaceY, scaleY, 'Y'); var transform = new Transform(); //存放函数图像上的点 var a = [], b = [], c = [], d = []; //需要显示的函数说明 //希腊字母表(存此用于Ctrl C/V //ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ //αβγδεζηθικλμνξοπρστυφχψω var f1 = 'x^2+y^2+4x+3 = 0', f2 = 'y = 1.732/3*x', f3 = 'y=1/(4a)', f4 = ''; //(1-(x+2)^2)^0.5for (var x = xS; x <= xE; x+=0.2) { a.push([x, Math.pow(1-(x+2)*(x+2), 0.5)]); a.push([x, -Math.pow(1-(x+2)*(x+2), 0.5)]); b.push([x, 1.732/3*x]); } //存放临时数组 var tmp = []; //显示变换 if (a.length > 0) { a = transform.scale(transform.translate(a, 0, 0), scaleX/spaceX, scaleY/spaceY); //函数1 tmp = [].concat(a); shape.pointDraw(tmp, 'red'); tmp = [].concat(a); shape.multiLineDraw(tmp, 'pink'); plot.setFillStyle('red'); plot.fillText(f1, 100, -90, 200); } //显示变换 if (b.length > 0) { b = transform.scale(transform.translate(b, 0, 0), scaleX/spaceX, scaleY/spaceY); //函数1 tmp = [].concat(b); shape.pointDraw(tmp, 'blue'); tmp = [].concat(b); shape.multiLineDraw(tmp, 'blue'); plot.setFillStyle('blue'); plot.fillText(f2, 100, -120, 200); } } </span>
<span style="font-size:18px;">//题11 if (1) { var r = 20; config.setSector(1,1,1,1); config.graphPaper2D(0, 0, r); config.axis2D(0, 0,180); //坐标轴设定 var scaleX = 2*r, scaleY = 2*r; var spaceX = 0.5, spaceY = 0.5; var xS = -10, xE = 10; var yS = -10, yE = 10; config.axisSpacing(xS, xE, spaceX, scaleX, 'X'); config.axisSpacing(yS, yE, spaceY, scaleY, 'Y'); var transform = new Transform(); //存放函数图像上的点 var a = [], b = [], c = [], d = []; //需要显示的函数说明 //希腊字母表(存此用于Ctrl C/V //ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ //αβγδεζηθικλμνξοπρστυφχψω var f1 = 'y = ax^2', f2 = 'y = -1/(4a)', f3 = 'y=1/(4a)', f4 = ''; //(1-(x+2)^2)^0.5for (var x = xS; x <= xE; x+=0.2) { a.push([x, x*x]); b.push([x, -1/4]);c.push([x, 1/4]); } //存放临时数组 var tmp = []; //显示变换 if (a.length > 0) { a = transform.scale(transform.translate(a, 0, 0), scaleX/spaceX, scaleY/spaceY); //函数1 tmp = [].concat(a); shape.pointDraw(tmp, 'red'); tmp = [].concat(a); shape.multiLineDraw(tmp, 'pink'); plot.setFillStyle('red'); plot.fillText(f1, 100, -90, 200); } if (b.length > 0) { b = transform.scale(transform.translate(b, 0, 0), scaleX/spaceX, scaleY/spaceY); //函数2 //tmp = [].concat(b); //shape.pointDraw(tmp, 'blue'); tmp = [].concat(b); shape.multiLineDraw(tmp, '#22CCFF'); plot.setFillStyle('blue'); plot.fillText(f2, 100, -120, 200); } if (c.length > 0) { c = transform.scale(transform.translate(c, 0, 0), scaleX/spaceX, scaleY/spaceY); //tmp = [].concat(c); //shape.pointDraw(tmp, 'green'); tmp = [].concat(c); shape.multiLineDraw(tmp, '#CCFF22'); plot.setFillStyle('green'); plot.fillText(f3, 100, -150, 200); } } </span>
<span style="font-size:18px;">#题12def tmp12(): #母线 L = 1; thita = 0; V_top = 1/3*Math.pi*(L*math.cos(thita)**2*math.sin(thita))**2*L*math.cos(thita); V_total = 1/3*Math.pi*(L*math.sin(thita))**2*L*math.cos(thita); #V_top / V_total = math.cos(thita)**4 = 1/2</span>
<span style="font-size:18px;">#题13>>> 6*42 = 252#排列公式 def arrangement(n, m): if n < m: return arrangement(m, n); else: factorial = 1; for i in range(n, n-m, -1): factorial*=i; return factorial; #组合公式 def combination(n, m): if (n < m): return combination(m, n); else: return arrangement(n, m)/arrangement(m,m); def tmp13(): a = arrangement(3, 3); b = arrangement(7, 2); print('{0}*{1} = {2}'.format(a, b, a*b));</span>
<span style="font-size:18px;">#题14def tmp14(): #椭圆长短轴 a = 3; b = 2; c = (a**2-b**2)**0.5; print(c);>>> 2.23606797749979y**2 = (1-x**2/9)*4(x-c)**2+(y)**2+(x+c)**2+(y)**2 = 4*c**22*x**2 + 2*y**2 = 2*c**25/9*x**2+4 = c**2>>> 2.23606797749979x = 1.3416407864998743 x = ((c**2-4)*9/5)**0.5; print('x = ', x);=>-1.342 < x < 1.342 >>> 3/5**0.51.3416407864998738</span>
<span style="font-size:18px;">#题15a1 = 1 = 2/2; 2a2**2+a2-1 = 0; => a2 = 1/2;3a3**2+1/2*a3-1/2; 1/3=>an = 1/nif (1) {var equation = new Equation(); var a = [2, 1, -1]; equation.quadratic(a); }方程 2x^[2] + 1x + -1 = 0 =>Δ = b^[2] - 4ac = 9 ;方程的解为:x1 = -1, x2 = 0.5 ;方程根与系数的关系:x1 + x2 = -0.5, x1 * x2 = -0.5 ;if (1) {var equation = new Equation(); var a = [3, 1/2, -1/2]; equation.quadratic(a); }方程 3x^[2] + 0.5x + -0.5 = 0 =>Δ = b^[2] - 4ac = 6.25 ;方程的解为:x1 = -0.5, x2 = 0.3333333333333333 ;方程根与系数的关系:x1 + x2 = -0.16666666666666669, x1 * x2 = -0.16666666666666666 ;</span>
<span style="font-size:18px;">//题17 if (1) { var r = 20; config.setSector(1,1,1,1); config.graphPaper2D(0, 0, r); config.axis2D(0, 0,180); //坐标轴设定 var scaleX = 2*r, scaleY = 2*r; var spaceX = 2, spaceY = 0.4; var xS = -10, xE = 10; var yS = -10, yE = 10; config.axisSpacing(xS, xE, spaceX, scaleX, 'X'); config.axisSpacing(yS, yE, spaceY, scaleY, 'Y'); var transform = new Transform(); //存放函数图像上的点 var a = [], b = [], c = [], d = []; //需要显示的函数说明 //希腊字母表(存此用于Ctrl C/V //ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ //αβγδεζηθικλμνξοπρστυφχψω var f1 = 'y = 1/2cos^2+0.868sinxcosx+1', f2 = 'y = -1/(4a)', f3 = 'y=1/(4a)', f4 = ''; //(1-(x+2)^2)^0.5for (var x = xS; x <= xE; x+=0.2) { a.push([x, taskFun(x)]); } //存放临时数组 var tmp = []; //显示变换 if (a.length > 0) { a = transform.scale(transform.translate(a, 0, 0), scaleX/spaceX, scaleY/spaceY); //函数1 tmp = [].concat(a); shape.pointDraw(tmp, 'red'); tmp = [].concat(a); shape.multiLineDraw(tmp, 'pink'); plot.setFillStyle('red'); plot.fillText(f1, 100, -90, 200); } } } function taskFun(x) {return 0.5*Math.pow(Math.cos(x), 2)+0.866*Math.sin(x)*Math.cos(x)+1;}</span>
<span style="font-size:18px;">//题19 if (1) { var r = 20; config.setSector(1,1,1,1); config.graphPaper2D(0, 0, r); config.axis2D(0, 0,180); //坐标轴设定 var scaleX = 2*r, scaleY = 2*r; var spaceX = 2, spaceY = 0.4; var xS = -10, xE = 10; var yS = -10, yE = 10; config.axisSpacing(xS, xE, spaceX, scaleX, 'X'); config.axisSpacing(yS, yE, spaceY, scaleY, 'Y'); var transform = new Transform(); //存放函数图像上的点 var a = [], b = [], c = [], d = []; //需要显示的函数说明 //希腊字母表(存此用于Ctrl C/V //ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ //αβγδεζηθικλμνξοπρστυφχψω var f1 = 'y = (x^2+1)^0.5-x', f2 = 'y = -1/(4a)', f3 = 'y=1/(4a)', f4 = ''; //(1-(x+2)^2)^0.5for (var x = xS; x <= xE; x+=0.2) { a.push([x, taskFun(x)]); } //存放临时数组 var tmp = []; //显示变换 if (a.length > 0) { a = transform.scale(transform.translate(a, 0, 0), scaleX/spaceX, scaleY/spaceY); //函数1 tmp = [].concat(a); shape.pointDraw(tmp, 'red'); tmp = [].concat(a); shape.multiLineDraw(tmp, 'pink'); plot.setFillStyle('red'); plot.fillText(f1, 100, -90, 200); } } } </span>
<span style="font-size:18px;">#题20def tmp20(): c1 = 2+3; c2 = 2**2+3**2; c3 = 2**3+3**3; c4 = 2**4+3**4; #(c3-pc2)**2 = (c4-pc3)*(c2-pc1); #c3**2+p**2*c2**2-2*p*c3*c2 = c2*c4+p**2*c1*c3-p*(c2*c3+c1*c4) coef = [c2**2-c1*c3, c1*c4-c2*c3, c3**2-c2*c4]; print(coef);>>> [-6, 30, -36]if (1) {var equation = new Equation(); var a = [-6, 30, -36] equation.quadratic(a); }方程 6x^[2] + -30x + 36 = 0 =>Δ = b^[2] - 4ac = 36 ;方程的解为:x1 = 2, x2 = 3 ;方程根与系数的关系:x1 + x2 = 5, x1 * x2 = 6 ;</span>
好了,可能及格都难。这些题陷阱相当多,运算量也很大,基本上如果不经过一番大运算,
得到的答案你不用想也知道是错的。
现在阿伟二周目来看这些题,做的那是心惊肉跳的。
本节到此结束,欲知后事如何,请看下回分解。
0 0
- [从头学数学] 第209节 带着计算机去高考(一)
- [从头学数学] 第208节 带着计算机去高考(序)
- [从头学数学] 第210节 带着计算机去高考(二)
- [从头学数学] 第211节 带着计算机去高考(三)
- [从头学数学] 第212节 带着计算机去高考(四)
- [从头学数学] 第213节 带着计算机去高考(五)
- [从头学数学] 第214节 带着计算机去高考(六)
- [从头学数学] 第215节 带着计算机去高考(七)
- [从头学数学] 第216节 带着计算机去高考(八)
- [从头学数学] 第217节 带着计算机去高考(九)
- [从头学数学] 第218节 带着计算机去高考(十)
- [从头学数学] 第219节 带着计算机去高考(十一)
- [从头学数学] 第220节 带着计算机去高考(十二)
- [从头学数学] 第221节 带着计算机去高考(十三)
- [从头学数学] 第222节 带着计算机去高考(十四)
- [从头学数学] 第223节 带着计算机去高考(十五)
- [从头学数学] 第224节 带着计算机去高考(十六)
- [从头学数学] 第05节 认识图形(一)
- Spark集群安装之——Zookeeper+Kafka 安装教程
- ubuntu ssh 客户端查看服务器端图形界面
- Myeclipse项目转成Eclipse项目
- oc 元类 元数据
- 关键字自动化-方法执行
- [从头学数学] 第209节 带着计算机去高考(一)
- 小区网络利用树莓派对其他电脑实现远程开机(WOL)
- Jenkins -- 设置域账号登录错误导致无法登录
- 1)基本常用命令
- 运动跟踪之均值漂移(MeanShift)算法和Camshift算法(连续自适应的MeanShift)
- 数组——数组中最长连续序列
- python本地版wordCloud字符云生成
- centos7.2配置网络
- SIM900A(GSM模块)学习