数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 3454|回复: 4

蛋白质分解成氨基酸的问题(有程序哦)

[复制链接]
发表于 2003-8-9 19:34:59 | 显示全部楼层 |阅读模式

        题目:
                  生命蛋白质是由若干种氨基酸经不同方法组合而成的。在实验中
              为了分析某个生命蛋白质的分子组成,通常用质谱验测其分子量x(
              正整数),然后将分子量x分解为n个分子量a(i=1...........n)氨
              基酸的和的形式。某实验室所研究的问题中:
                         n=18,  x<=1000
              a(i=1...........18) 分别为 57,71,87,97,99,101,103,
              113,114,115,128,129,131,137,147,156,163,186
              要求针对该实验室拥有或不拥有计算机的情况作出解答???

           请各路高手不吝赐教。谢谢!!!
           Tristom-xml@163.com



[此贴子已经被HUASHI3483于2003-12-20 16:26:19编辑过]

 楼主| 发表于 2003-8-11 16:15:01 | 显示全部楼层
我用vb 也编出来了,但若没有计算机呢?怎么去解?当x=1000时有
近3万组解!!!
发表于 2003-8-9 22:33:09 | 显示全部楼层
偶早期用的比较土的方法编程,方法是分枝定界法。
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <time.h>
#define FOR(j)  for(i[j]=0;i[j]<=m[j];i[j]++) {
#define M(j)  temp=0; for(k=0;k<j;k++) temp+=a[k]*i[k]; m[j]=(s-temp)/a[j];

void main()
{
int a[18] = {57, 71, 87, 97, 99, 101, 103, 113, 114, 115, 128, 129, 131, 137, 147, 156, 163, 186};
int i[18],temp=0,k,s;
double m[18];
unsigned long rt=0;
long t1,t2,secs_now;
struct tm *tm_now;
clrscr();
printf("Molecular weight of proteid:");
scanf("%d",&s);
time(&secs_now);
t1=secs_now;
m[0]=s/a[0];
printf("Wait");
FOR(0)     M(1)
FOR(1)     M(2)
FOR(2)     M(3)
FOR(3)     M(4)
FOR(4)     M(5)
FOR(5)     M(6)
FOR(6)     M(7)
FOR(7)     M(8)
FOR(8)     M(9)
FOR(9)     M(10)
FOR(10)    M(11)
FOR(11)    M(12)
FOR(12)    M(13)
FOR(13)    M(14)
FOR(14)    M(15)
FOR(15)    M(16)
FOR(16)
temp=0; for(k=0;k<17;k++) temp+=a[k]*i[k];
if((s-temp)%a[17]==0) {
         i[17]=(s-temp)/a[17];
         rt=rt+1;
}
}}} }}} }}} }}} }}} }}
printf("\nResults number:%ld.\n",rt);
time(&secs_now);
t2=secs_now;
printf("Run time:%ld seconds.\n",t2-t1);
getch();
}
发表于 2003-8-12 03:21:47 | 显示全部楼层
可以对一般方程进行优化。
偶看了他们写论文,是逐步对其细化,不过运算量很大,最好还是用编程实现
 楼主| 发表于 2003-8-12 23:23:37 | 显示全部楼层
我算出来了,先找一组解然后,各组解之间都可以进行等量
代换的这样就可以了。那一组解可以用x/57的余数去求。可以
求出个个数字最小的那一组
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-11-26 21:27 , Processed in 0.048581 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表