perl期末考试大作业

发布 2022-09-14 19:37:28 阅读 4914

perl程序设计课程考核。

院系部门: 生物信息学院。

学生专业: 生物信息专业

学生学号: 2009212256

学生姓名: 彭莉

2023年6月。

perl程序设计课程考试大作业。

设置目的】1、 贯彻实施高等教育的质量工程,深化教学改革,对本课程考试实施改革,以课程大作业形式取代原有的卷面考试;

2、 运用本课程所学知识,掌握perl和bioperl程序开发环境的搭建、配置和测试;

3、 熟悉和巩固运用perl编程实现生物信息学中生物信息的分析处理等实践技能;

考评方法】满分100分:(大作业:70分;随机提问回答情况:30分);

合格控制线:(大作业:>40分;随机提问回答情况:>20分),任意一部分不合格则为不合格。

第一题:请问bioperl怎样安装和配置,请结合文字图表概述bioperl的安装、配置与测试,并简述该过程**现问题解决经历(10分)。

一、求解过程。

1)、安装最新版本的后启动ppm,见图1-1;

图1-1:启动ppm安装软件。

图1-2:per ppm软件包管理界面。

2)、打开后,选择edit >>preferences。添加fig1.3图的站点,添加bribes的例子见图1-4;

图1-3:模块相应的站点。

图1-4:添加bribes模块的站点地址。

3)、选择view >>all packages,在搜索框输入bioperl进行搜索,结果见图1-5;这个结果个人觉得有些奇怪,因为搜索结果里面有些包是一样的,我觉得会不会是在不同的站点里存在了同样的包,然后就出现了一些相同的包。

图1-5:搜索bioperl软件包的结果。

4)、安装相应的包,首先安装bioperl包,选中bioperl,右键选择安装,然后按图1-5中右上角的右箭头开始进行**并安装,其实可以一次性选择所有想安装的模块,然后再一起进行**安装;不过为了让电脑更好的运行,就分开一个一个进行安装,bioperl安装情况见图1-6,bioperl-db安装情况见图1-7,bioperl-network安装情况见图1-8,图1-9,bioperl-run和bundle-bioperl情况见图1-10,bioperl-bioperl-core安装情况见fig1.11,bio-mgen和bundle-bioperl-xml******1.0见图;

图1-6:安装bioperl完成。

图1-7:安装完成bioperl-db

图1-8:正在**安装bioperl-network

图1-9:安装完成bioperl-network

图1-10:同时安装bioperl-run和bundle-bioperl完成。

图1-11:bioperl-bioperl-core安装完成。

图1-12:同时**安装bio-mgen和bundle-bioperl-xml******1.0,图1-13:完成所有的模块安装;

5)、检测安装情况由图1-13和图1-14,可知安装成功;

图1-14:安装bioperl所在的文件夹。

二、心得与体会。

第一次装得时候居然没有成功,结果原因是网速不够,再试了一次终于成功了。

第二题:结合图形和程序回答下面问题。

2.1、编程实现一个dna序列文件的酶切位点的分析(包括酶切位点统计、酶切位点的标记和计数,以及可视化输出等,不准用模式匹配知识)(10分)。

实现过程:#!/usr/bin/perl

print"输入一段序列:";

open(file,"d:\\perl\\"

a=;string=join(""a);

print"$string", n";

print "我们将标记每一个酶切位点at:";

print" $string", n";

foundat = 0;

offset = 0;

label = 1;

positions;

while ( foundat = index( $string, 'at', offset ) 1 )

= label++;

offset = foundat + 1;

foreach ( 0 ..length( $string ) 1 )

print "";

foreach ( 0 ..length( $string ) 1 )

测试的结果见图2-1;

图2-1 心得体会:

刚开始题目都没读懂,老师给了个模板,说是上一届做的,结果看都看不懂**,后来经过老师讲解了之后,慢慢开始理解那个学长(或是学姐)的**是怎么回事了,但是还是不知道怎么用。因为老师足够的狡猾,把**删的就剩下几行,还是完全不懂得。在同学的讲了又看看了又讲的情况下,终于把它写出来了,但是,结果还是不知道怎么来的。

浑浑噩噩的就弄出来了。写出来了,运行出来了还是有很多问题。不知道为什么只能运行一行**,两行怎么都运行不了。

不知道怎么回事?

2.2、对1中编写的程序采用子程序进行优化,并阐述子程序输入输出和内部算法实现的理由和心得(10分)。

一、解题思想。

本做法主要是对于题2.1中运用子程序进行优化……,并且采用子程序的实现也有利于提高**的可读性。

2、实现过程:

核心**:while ( foundat = index( $string,$tags,$offset ) 1 )

= label++;

offset = foundat + 1;

print" "

foreach ( 0 ..length( $string ) 1 )

print "";print" "

foreach ( 0 ..length( $string ) 1 )

程序**:#!/usr/bin/perl

print"上传序列文件到d:盘中的perl下面,输入序列的文件名:";

b=;open(file,"d:\\perl\\$b");

while()

print"$string", n";

print "输入你想查找的酶切位点:";

chomp($tags=);

print "我们将标记每一个酶切位点$tags:";

print" $string","n";

meiqie_site($string,$tags);

sub meiqie_site

my($strings,$tags)=@

my $foundat = 1;

my $offset = 0;

my $label = 1;

while ( foundat = index( $string,$tags,$offset ) 1 )

= label++;

offset = foundat + 1;

print" "

foreach ( 0 ..length( $string ) 1 )

print "";print" "

foreach ( 0 ..length( $string ) 1 )

测试结果输出见图2-2:

图2-2:子程序优化2-1题测试输出。

心得体会:当然第一题如果做出来了的话,这道题就简单多了,只需要加一个子程序,通过对子程序的调用,将需要的参数传进去就好了,其他的什么也不用做。但是在做这道题的时候还是改了很久。

因为做第一题的很多地方都不是很人性化,所以就加了一些个人的元素进去,能够自动的上传文档,然后就可以对任意序列进行分析。

2.3、进一步完善上面的程序,编写的系列酶切酶管理程序,实现酶切酶信息的添加、删除和修改,并简述理由和心得(20分)。

一、解题思想。

本题中的要求实现添加、删显示功能,该子程序通过两层的循环实现二维数组的输出。count功能,该子程序使用index函数和while循环来实现位点信的不断循环运行,并提示用户可以通过相应的操作来退出程序。

2、实现过程:

核心**:if($c==1)

print"输入你想增加的酶切位点名字:";

chomp($d=);

print"输入对应的酶切位点的序列:";

chomp($e=);

print"加入的酶切位点为:";

$name=$e;

while(($f,$num)=each (%name))

$m=&meiqie_site($string,$num);

printf(" f $num ");

perl期末考试大作业

perl程序设计课程考核。院系部门 生物信息学院。学生专业 生物信息专业 学生学号 学生姓名 彭莉 2011年6月。perl程序设计课程考试大作业。设置目的 1 贯彻实施高等教育的质量工程,深化教学改革,对本课程考试实施改革,以课程大作业形式取代原有的卷面考试 2 运用本课程所学知识,掌握perl和...

《现代物流概论》期末考试大作业

一 结合实际,谈谈对物流活动的认识?时下,物流一词频繁见诸于报端,几乎成为了 利润源泉 的代名词。随着中国市场的进一步对外开放以及wto的加入,中国经济与世界经济融为一体的趋势已成必然。在中国,现代企业竞争的结果使生产企业和商业企业都进入一个微利时代,产品的成本和利润也变得非常透明。企业之间的竞争现...

期末考试期末考试记事作文

期末考试 期末考试记事作文。今天是期末考试,第一天考的是语文8 10 10 10,地理10 30 11 30,英语13 40 15 20,生物16 00 17 00,两门主课两门小课。早上我早早的起了床,吃完早饭骑着自行车来到学校。这句话说得简单,做起来可是不简单。因为骑车的路程是very苦的呀!我...