perl期末考试大作业(4)

2019-04-13 21:28

goto here; }

elsif($c==2) {

print\输入你想修改的酶切位点名字:\\n\ chomp($d=);

print\输入想改的酶切位点的序列是:\\n\ chomp($e=);

print\修改后的酶切位点:\\n\ $name{\

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

$m=&meiqie_site($string,$num); printf(\ $f $num \\n\}

print\ goto here; }

elsif($c==3) {

print\输入你想删除的酶切位点名字:\\n\ chomp($d=);

print\输入删除的酶切位点的序列:\\n\ chomp($e=); $name{\

print\删除后酶切位点结果为:\\n\ delete($name{\

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

$m=&meiqie_site($string,$num); printf(\ $f $num \\n\}

print\ goto here; }

if($c==4) {

print\显示所有的酶切位点:\\n\ foreach (keys %hash) { $i++;

15

print \ \\n\ }

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

$m=&meiqie_site($string,$num); printf(\ $f $num \\n\ }

print\ goto here; }

if($c==5) {

print\退出系统,谢谢使用!\}

sub meiqie_site {

my($strings,$tags)=@_; my $foundAt = 0; my $offset = 0; my $label = 1;

while ( ( $foundAt = index( $string,$tags,$offset ) ) > -1 ) {

$positions{ $foundAt } = $label++; $offset = $foundAt + 1; print\ } }

测试输出见图2-3系列图; 酶添加测试:

16

图2-3-1 酶信息添加测试结果输出

酶修改测试:

图2-3-2:修改酶的信息输出

酶删除测试:

图2-3-3:删除酶信息测试输出

17

显示所有酶切信息:

图2-3-4:显示所有酶切的信息输出

程序退出测试:

图2-3-5:成功退出程序

这道题花了我接近半天,这道题很像是以前C语言的时候做学生管理系统,可以对其进行添加删除还有修改显示和退出系统等问题,这道题和当初自己做的很像。

当然这道题也不是想象中得那样简单,虽然人家都说perl语言很好学,很多东西不用

18

定义都可以直接使用,但是,这就更使我们的程序缺乏可读性。本来想看看其他人的代码,因为实在太难了,但是结果发现他们的代码根本看不懂,而且我觉得要把学到的东西用在事迹当中来确实很难。刚开始真的不知道怎么做,结果又慢慢的看了看关联数值哈希表的用法。还有很多函数也记不住。只能在网上搜。需要干什么的时候,就GOOLE。最后终于还是得到了满意的结果。本题主要的还是用到if控制结构,还有each函数。

2.4、编程实现采用滑动窗口技术实现DNA序列的四种碱基含量变化并可视化输出,并简述理由和心得(10分)。

一、解题思想

首先是利用s时候不是很在意这个问题,经过这个题之后觉得里面确实有些知识点很重要。

二、实现过程:

以1000个碱基为一个滑动窗口,计算每个滑动窗口所含有的碱基数量,从而得到最后碱基的含量曲线图: 核心代码:

for($i = 1;$i<=$string_bp_len-1000;$i++) {

$sonstring=substr($string_bp,$i,1000);

%num=(\

for($j=1;$j<=1000;$j++) {

$jianji=substr($sonstring,$j,1); if(\ {

$num{\

}

elsif(\ {

$num{\ }

19


perl期末考试大作业(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:防汛抗洪知识竞赛题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: