这两天同学们陆续上传了自己编写的小程序,等老师审查给成绩的时候才发现一部分同学是负分。原因就是他们有抄袭之嫌。恰巧我当时就在一位得了负分的同学旁边,他一脸郁闷的对我说”没道理啊,这是我自己编的啊“。这个我知道,的确是他自己写的代码。为什么会被怀疑呢,我试着分析了一下原因,可能会是这样。
拿我们班的情况来说,我们班(一个老师教学的班)有70多人,假设此次编程方案有十种(这时最多的了),那么会选择同一方案的两人的概率大约为70*69/2/10/10,大概25组(理论最大值),这还仅对一组方案而言,若是针对全部十种方案,会有250组之多(同样是理论最大值),当然不可能所有人都有雷同。以上数据只是表明出现较大雷同的可能性比较大,特别是这次的程序简单,代码也短,虽然出现雷同的概率不会因此增大,但是雷同程度会因此上升,比如从60%上升到80%。那么被认为作弊的理由就更充分了。举个极端点的例子,同样是我们这些人去输出一下”Hello world!”相信会大面积的出现高度雷同。这同样说明了程序简单,代码量少出现雷同的概率及幅度都会较大。
因此,编写这种简短的小程序,在信息量小、选择性少的情况下出现一定程度的雷同在所难免,若以此将但凡雷同者皆定位成作弊实在是有失公允。