« 用于从多条GenBank格式记录中提取cDNA序列并以Fasta格式保存的程序 | 首页 | 环境变量与远程登陆linux »

August 01, 2003

浙江大学GPA计算软件烂西瓜版

刚刚利用午睡时间,写了一个用于计算GPA(平均学分绩点)的程序,我将她命名为“浙江大学GPA计算软件烂西瓜版”。以下是代码:

open INPUT,"input.txt";
open OUTPUT,">output.txt";
while ()
{
if (/^\S+\s+\S+\s+(\S+)\s+(\S+)\s+\S+\s+$/)
{
$score=$1; $credit=$2; $grade=0;
print OUTPUT $score,"\t",$credit,"\t";
$score=~s/优/85/;
$score=~s/良/80/;
$score=~s/中/70/;
$score=~s/及格/60/;
$score=~s/合格/75/;
$grade=($score-60)*0.1+1.5 if $score>59;
$grade=4 if $score>84;
print OUTPUT $grade,"\n";
}
$up+=$grade*$credit; $down+=$credit;
}
print OUTPUT "\nYour GPA=",$up/$down;

很短是吧?Perl 编写程序有一个特点,可以用简单的代码完成复杂的事情。
我在考虑给她制作一个可视化界面,便于大家使用。

计算规则参考了教务部的通知:

根据《浙江大学关于进一步实施学分制的意见》的文件精神,为进一步推进教育教学改革,经研究现对我校大学生成绩绩点的计算方法进行适当的调整,我部办理出国成绩单出具平均学分绩点(GPA)证明,自2002年~2003学年开学起亦作相应的调整。

新的平均学分绩点(GPA)计算方法如下:

一、 百分制:
1、85 ~ 100 = 4.0;
2、60 ~ 84 = 1.5 ~3.9 (每1分递增0.1分)

二、 五级制:
优 = 4.0,良 = 3.5,中 = 2.5, 及格 = 1.5;

三、 二级记分制:
合格 = 75 = 3.0

四、 计算公式:

Σ(课程学分×课程学分绩)
平均学分绩点(GPA)= ---------------------------------
Σ 课程学分

特此通知

教 务 部
2002年9月5日

Posted by 西瓜 at August 1, 2003 02:37 PM

Comments

Post a comment




Remember Me?