加载中
修改程序的形而上学思考(随笔)

目标: 修改一个程序, 以满足新的功能需求. 方法: (实用主义的) 对程序涉及到目标实现的部分尽量分解分离(从一变为多), 减少修改时的所需心智 压力, 减少与其它部分的关联, 这样更容易修改, 也...

2013/12/02 16:50
18
网页版几何画板开发笔记(十二) 关于绘图检查的思考

学生绘图之后, 对所绘制的图形进行检查, 是一项关键性的任务. 此任务要求"发明"一种描述语言, 将教师绘图要求翻译转换为一种计算机可识别, 可实现的 代码, 对图形的绘制步骤及或绘制结果进行...

2013/11/26 15:17
20
网页版几何画板开发笔记(十一) 角的标记

在几何画板中, 有一项功能是为边和角添加标记, 以前做过角标记(AngleMark)的处理, 但在更改程序的 时候不知道哪里改动了, 使得功能出现了异常. 为此, 写下原来如何做的思路和笔记, 来帮助查找...

2013/11/21 14:40
37
网页版几何画板开发笔记(十) 计算任意带交错多边形的面积

对于一般不带交错的多边形, 有一个简单的方法可以计算出其面积, 见于网上很多文章都有, 如: http://wenku.baidu.com/link?url=h48pnBshRsf0QzG9Cvgp22PXNqbpfX97uyfkDceUwm9zfECjmm5mS56Yj4z...

网页版几何画板开发笔记(九) 求两条线段交点

线段,直线,射线是常见几何对象, 为实现计算多边形面积的算法, 里面用到求两线段交点, 故而先推导 求线段交点的算法. 本来求线段, 直线交点算法很多不需要自己推导, 但因为编程需要具体计算方...

2013/11/15 14:38
51
网页版几何画板开发笔记(八) 三角数索引

问题: 设有非负整数a,b 满足条件 a < b, 求一种算法, 根据唯一的 a,b 可计算出一个唯一索引 i. 原始问题是: 在几何推理系统中, 为每个点如 A,B 都有一个从 0 开始的整数索引 a,b, 又有两点 ...

2013/11/15 10:39
31
网页版几何画板开发笔记(七) 关于点击测试

点击测试(hit_test), 用于查找(检测)指定鼠标点(x, y) 位置有什么对象, 以及如果存在 多个对象的情况下, 以什么样的策略进行处理. 现在先看如何检测到有哪个对象. 为检测而提供的函数当前为 ...

2013/11/08 11:12
17
网页版几何画板开发笔记(六) 关于线

点的核心信息是坐标 x,y; 如果是别的子类型, 则根据子类型和所依赖的对象, 根据几何关系计算出点的坐标. 另一核心对象为线, 两点可以确定(determine)一条线. 因而线的最本质信息是点, 分别为...

2013/11/04 16:11
19
网页版几何画板开发笔记(五) 常用数学推导一

一元二次方程: ax^2 + bx + c = 0 解为(推导过程略): x = x=[-b±√(b²-4ac)]/2a 二元一次方程组: A1*x + B1*y + C1 = 0 ---- (1) A2*x + B2*y + C2 = 0 ---- (2) 解: (1)*A2 : A1*A2*x + ...

2013/11/04 12:47
96
网页版几何画板开发笔记(四)

由于各部分的关系有相互交织, 欲要删除, 需先创建. 而且在 js 中创建对象也是个有点小麻烦的事情. 下面详细研究几种核心几何对象的创建: 点,线,圆. 这里先不涉及UI部分, 仅从纯数据结构方面研...

2013/11/01 17:33
48
网页版几何画板开发笔记(三)

关于删除对象 (delete_objs) 和对象之间的内部结构有关, 因此先笔记对象之间的结构. 几何对象的起点是点(Point)对象. 通过连接两个点构成线(Line), 以一个点为圆心, 圆上另一 点可以做圆(Ci...

2013/11/01 12:31
72
网页版几何画板开发笔记(二)

继续 GeoPad. 在GeoPad 中, 使用双向链表做为主数据结构, 关于选择这一数据结构的主要考虑: 1. 双向链表适合任意位置插入(主要是尾部添加), 任意位置删除, 以及遍历(双向遍历). 2. 双向链表满...

2013/10/31 16:20
56
网页版几何画板开发笔记(一)

近期在做项目网页版简易几何画板 geo.js. 时间一长, 加上年纪大了, 就容易忘记, 所以这里写下来些笔记. 实现了一个全局变量$G (window.$G), 将其它(大部分的)类和量都放在该名字空间下面, 这...

2013/10/31 15:12
170
多精度算术学习(二)

== 减法: 按照数学定义 x-y 等价于 x+(-y), 因此实现上先将 y 求其对应负数, 然后 用已经实现的加法就可完成减法的运算. 因此只需要研究如何求负数即可. 求一个数的负数 neg(), 等于将该数字...

2013/01/16 16:14
30
多精度算术学习

参考图书: Knuth <<计算机程序设计艺术>> 4.3 节: 多精度算术. BigNum Math:加密多精度算法的理论与实现: http://www.box-z.com/books/360buy-10454965.shtml 多精度算术的目的是利用固定精...

2013/01/16 10:16
50
学习 lua 源代码(一)

学习 lua 源代码(一) 参考云风的博客中关于 lua 的部分: http://blog.codingnow.com/eo/luaoeeeaeau/ 前一段时间重点学习了语法分析(见前面 bison 学习的文章), 这次选择 一个简单的脚本语言...

配置 MySQL 主从服务结构

配置 MySQL 主从服务结构 网络上配置 MySQL 主从服务器结构的文章很多, 本文的主要目的不是再给其 添加一个, 而是: 1. 公司项目使用 MySQL 主从, 写下来以后如果出问题, 可以重新配置.(备忘)...

2013/01/04 11:14
251
N人过桥问题的求解(微软试题)

N人过桥问题的求解(微软试题) 微软面试题过桥问题在IT业内几乎已变成一个众所周知的问题,问题如下: 4个人在晚上过一座小桥,过桥时必须要用到手电筒,只有一枚手电筒, 每次最多只可以有两...

2012/12/20 17:21
354
学习 bison 原理(四)

学习 bison 原理(四) 第5步: 转变第 4 步的状态机为确定的 LALR 状态机. 在(三)中我们已经看到 LR0 状态机很可能有 r/r 冲突, s/r 冲突, 那这关键的第5步就是用 lookahead(LA) 符号来试图解决...

学习 bison 原理(三)

学习 bison 原理(三) 工作总是很多, 还要学习很多, 所以时间总是不够的. 本想好好总结多写 点的, 可是懒?还是想做别的?, 因此这里只能简单描述下了. 在(二)中已经做了不少准备性工作了, 这一...

没有更多内容

加载失败,请刷新页面

下一页

返回顶部
顶部