第64章 代数与平面几何

第64章 代数与平面几何

代数部分的方程求解、函数应用,以及平面几何中的图形性质、坐标运算等,是处理数学建模、图形绘制、逻辑判断等问题的基础。八级大纲要求"能求解一元一次方程、二元一次方程,并掌握长方形、三角形、圆形的面积计算"。

常用几何图形与坐标系

64.1 代数基础

64.1.1 实数与代数式

实数分类

  1. 有理数:整数、分数,可写成 pq (q≠0)\frac{p}{q}\ (q≠0);
  2. 无理数:无限不循环小数,如 2, π\sqrt{2},\ \pi。

实数运算律

a+b=b+a加法交换律a×b=b×a乘法交换律a×(b+c)=a×b+a×c分配律\begin{align*} a+b &= b+a \quad \text{加法交换律}\\ a \times b &= b \times a \quad \text{乘法交换律}\\ a \times (b+c) &= a \times b + a \times c \quad \text{分配律} \end{align*}

代数式与整式

  • 代数式:由数字、字母经加减乘除乘方开方构成,例 3x+2y, a2−b23x+2y,\ a^2-b^2;
  • 单项式:数字字母乘积,如 −3a2b-3a^2b;
  • 多项式:多个单项式相加; 整式运算:
  1. 合并同类项:3x+5x=8x3x+5x=8x;
  2. 幂运算:
am×an=am+n(am)n=am×n(a×b)n=an×bn(a≠0)\begin{align*} a^m \times a^n &= a^{m+n}\\ (a^m)^n &= a^{m \times n}\\ (a \times b)^n &= a^n \times b^n \quad (a≠0) \end{align*}

64.1.2 方程与不等式

一元一次方程 标准形式 ax+b=0 (a≠0)ax+b=0\ (a≠0) 步骤:去分母→去括号→移项→合并同类项→系数化为1。

二元一次方程组 形如

{a1x+b1y=c1a2x+b2y=c2\begin{cases} a_1 x + b_1 y = c_1\\ a_2 x + b_2 y = c_2 \end{cases}

解法:代入消元、加减消元。

一元二次方程 标准式 ax2+bx+c=0 (a≠0)ax^2+bx+c=0\ (a≠0) 判别式 Δ=b2−4ac\Delta = b^2-4ac 求根公式:

x=−b±Δ2ax=\frac{-b \pm \sqrt{\Delta}}{2a}
  • Δ>0\Delta>0:两个不等实数根
  • Δ=0\Delta=0:两个相等实数根
  • Δ<0\Delta<0:无实数根

不等式基本性质

  1. 同加同减,不等号不变;
  2. 同乘除正数,不等号不变;
  3. 同乘除负数,不等号反转。

64.1.3 函数基础

一次函数 y=kx+b (k≠0)y=kx+b\ (k≠0)

  • b=0b=0 为正比例函数 y=kxy=kx;
  • k>0k>0,yy 随xx增大而增大;k<0k<0反之。

反比例函数 y=kx (k≠0, x≠0)y=\frac{k}{x}\ (k≠0,\ x≠0) 图像为双曲线,k>0k>0在一、三象限,k<0k<0在二、四象限。

二次函数 y=ax2+bx+c (a≠0)y=ax^2+bx+c\ (a≠0) 对称轴:x=−b2ax=-\frac{b}{2a} 顶点坐标:

(−b2a, 4ac−b24a)\left(-\frac{b}{2a},\ \frac{4ac-b^2}{4a}\right)
  • a>0a>0 开口向上,顶点最小值;
  • a<0a<0 开口向下,顶点最大值。

64.1.4 用 C++ 求解方程(教学代码)

一元一次方程 ax+b=0 (a≠0)ax+b=0\ (a\neq 0) 的解析解:

#include <iostream>
using namespace std;

// 解 ax + b = 0,返回是否有唯一解;解写入 x
bool solveLinear(double a, double b, double &x) {
if (a == 0) return false; // a=0 时不是一元一次方程(无解或无穷解)
x = -b / a;
return true;
}

二元一次方程组 {a1x+b1y=c1a2x+b2y=c2\begin{cases}a_1x+b_1y=c_1\\a_2x+b_2y=c_2\end{cases} 可用克拉默法则(行列式):

x=c1b2−c2b1a1b2−a2b1,y=a1c2−a2c1a1b2−a2b1x=\frac{c_1b_2-c_2b_1}{a_1b_2-a_2b_1},\quad y=\frac{a_1c_2-a_2c_1}{a_1b_2-a_2b_1}
#include <iostream>
using namespace std;

// 解二元一次方程组,行列式 det = a1*b2 - a2*b1;det=0 无解/无穷解
bool solve2(double a1, double b1, double c1,
double a2, double b2, double c2,
double &x, double &y) {
double det = a1 * b2 - a2 * b1;
if (det == 0) return false;
x = (c1 * b2 - c2 * b1) / det;
y = (a1 * c2 - a2 * c1) / det;
return true;
}
浮点判零要用误差区间

实际编程中 a == 0 对 double 不保险,应写成 fabs(a) < 1e-9。八级题目数据通常整数,直接用 == 0 也能过,但养成"误差区间"习惯能避免隐藏 bug。

64.2 平面几何基础

64.2.1 点、线、角

  • 直线:两端无限延伸,两点确定一条直线;
  • 线段:两点之间部分,两点之间线段最短;
  • 射线:一端无限延伸。

角分类:锐角<90∘<90^\circ、直角=90∘=90^\circ、钝角>90∘>90^\circ。 平行线性质:同位角相等、内错角相等、同旁内角互补。

64.2.2 三角形

三边关系:两边之和大于第三边,两边之差小于第三边。 内角和:180∘180^\circ;外角等于不相邻两内角和。

全等判定:SSS、SAS、ASA、AAS、HL(直角三角形) 相似判定:两角相等 / 两边成比例夹角相等 / 三边成比例;面积比等于相似比平方。

直角三角形勾股定理:

a2+b2=ca^2 + b^2 = c
  • 30°对直角边为斜边一半;
  • 等腰直角三角形斜边=2×=\sqrt{2} \times直角边。

64.2.3 四边形

平行四边形:对边平行相等、对角相等、对角线平分; 矩形:四角直角,对角线相等; 菱形:四边相等,对角线垂直平分; 正方形:兼具矩形、菱形全部性质; 等腰梯形:两腰相等,同底两角相等,对角线相等。

64.2.4 圆

垂径定理:垂直弦的直径平分弦; 圆心角=对应弧度数,圆周角=弧度数一半; 直径对应圆周角为直角。 直线与圆:

  • d>rd>r 相离;d=rd=r 相切;d<rd<r 相交。

64.2.5 平面直角坐标系

点对称

  • 关于x轴:(x,y)→(x,−y)(x,y) \to (x,-y)
  • 关于y轴:(x,y)→(−x,y)(x,y) \to (-x,y)
  • 关于原点:(x,y)→(−x,−y)(x,y) \to (-x,-y)

两点距离公式(A(x1,y1), B(x2,y2)A(x_1,y_1),\ B(x_2,y_2))

AB=(x2−x1)2+(y2−y1)2AB=\sqrt{(x_2-x_1)^2 + (y_2-y_1)^2}

线段中点坐标:

(x1+x22, y1+y22)\left(\frac{x_1+x_2}{2},\ \frac{y_1+y_2}{2}\right)

64.2.6 常用图形面积计算(C++)

图形面积公式说明
长方形S=a×bS = a \times b长 × 宽
三角形(底高)S=12ahS = \frac{1}{2} a h底 × 高 ÷ 2
三角形(三顶点/鞋带)$$S = \frac12\leftx_1(y_2-y_3)+x_2(y_3-y_1)+x_3(y_1-y_2)\right
圆S=πr2S = \pi r^2π≈3.1415926535\pi\approx 3.1415926535
#include <iostream>
#include <cmath>
using namespace std;

const double PI = 3.141592653589793;

// 由三个顶点坐标求三角形面积(鞋带公式 / 叉积)
double triangleArea(double x1, double y1, double x2, double y2,
double x3, double y3) {
return 0.5 * fabs(x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2));
}

// 圆面积
double circleArea(double r) {
return PI * r * r;
}

// 长方形面积
double rectArea(double a, double b) {
return a * b;
}
为什么用鞋带公式而不是"底×高"?

给坐标时,"底和高"要先算垂足,麻烦且易错;鞋带公式直接代入 6 个数即可,还能推广到任意多边形,是编程求面积的首选。

64.3 数学在编程中的应用

  1. 代数:循环迭代解方程、函数数值计算;
  2. 几何:坐标求距离、图形碰撞检测、绘图;

64.4 注意事项

  1. 浮点运算选用float/double保证精度;
  2. 平方开方使用pow、sqrt库函数;
  3. 判断浮点数相等不能直接==,需设置极小误差区间。

64.5 真题示例(坐标求三角形面积)

【GESP 八级风格·编程题】 题目描述:输入 6 个实数 x1,y1,x2,y2,x3,y3x_1,y_1,x_2,y_2,x_3,y_3,表示平面上一个三角形的三个顶点,输出该三角形的面积,保留两位小数。 输入格式:一行六个实数。 输出格式:一个实数,面积。 样例输入:0 0 3 0 0 4 样例输出:6.00

参考解答(鞋带公式):

#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

int main() {
double x1, y1, x2, y2, x3, y3;
cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
double area = 0.5 * fabs(x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2));
cout << fixed << setprecision(2) << area << endl;
return 0;
}
验算

样例三点 (0,0),(3,0),(0,4) 是直角边 3 和 4 的直角三角形,面积应为 3×4÷2=6.003\times4\div2=6.00,与程序输出一致,说明公式正确。


练习题

说明

下列选择题考查代数方程与几何面积/距离,参考答案默认折叠,点击"参考答案"展开。

1.(一次方程) 方程 2x+4=02x + 4 = 0 的解是?

  • A. x=2x = 2
  • B. x=−2x = -2
  • C. x=4x = 4
  • D. x=−4x = -4
参考答案

B。2x=−4⇒x=−22x = -4 \Rightarrow x = -2。

2.(勾股定理) 直角三角形的两条直角边分别为 3 和 4,斜边长是?

  • A. 5
  • B. 6
  • C. 7
  • D. 25
参考答案

A。c=32+42=25=5c = \sqrt{3^2 + 4^2} = \sqrt{25} = 5。

3.(圆面积) 半径为 2 的圆,面积是?(取 π≈3.14\pi\approx 3.14)

  • A. 6.28
  • B. 12.56
  • C. 4
  • D. 25.12
参考答案

B。S=πr2=3.14×4=12.56S = \pi r^2 = 3.14 \times 4 = 12.56。

4.(两点距离) 点 A(0,0)A(0,0) 与 B(3,4)B(3,4) 之间的距离是?

  • A. 5
  • B. 7
  • C. 12
  • D. 25
参考答案

A。AB=(3−0)2+(4−0)2=9+16=25=5AB = \sqrt{(3-0)^2 + (4-0)^2} = \sqrt{9+16} = \sqrt{25} = 5。

5.(方程组) 鸡兔同笼:共有 35 个头、94 只脚,设鸡 xx 只、兔 yy 只,方程组是?

  • A. x+y=35, 2x+4y=94x+y=35,\ 2x+4y=94
  • B. x+y=94, 2x+4y=35x+y=94,\ 2x+4y=35
  • C. x−y=35, 2x+4y=94x-y=35,\ 2x+4y=94
  • D. x+y=35, x+2y=94x+y=35,\ x+2y=94
参考答案

A。头数即总只数 x+y=35x+y=35;鸡 2 脚、兔 4 脚,脚数 2x+4y=942x+4y=94。解得鸡 23 只、兔 12 只。

SShowball OI知识手册