Investigación Corta - Pesos moleculares de proteinas

Anuncio
Universidad del Valle de Guatemala
Colegio Universitario
Algoritmos y programación
Sección 110
GRUPO 2
Proyecto #2
Proteínas
Investigación Corta
Amanda Amado 11260
Francisco Quiroa 10060
Juan Fernando Meza 10084
Elizabeth Quiroa 12196
Preguntas insustituibles:

Meta:
Se desea hacer un programa el cual tenga como “base de datos” una lista de
aminoácido, con su referencia y peso respectivo. El programa debe de determinar el
orden de los aminoácidos que constituyen una molécula de proteína en forma de
cadena. El programa debe de ser capaz de leer secuencias de 20 números que
representarán una cadena de aminoácidos que al juntarse forman una proteína. Se
deberá escribir en forma de
0001020000011001000
Y el programa leerá en orden alfabético conforme a la lista de aminoácidos que se
presenta.

Salidas:
El programa debe de regresar la lista de los aminoácidos con el nombre
respectivo de referencia de la siguiente manera: LysGluMetAspSerGlu, esta lista es una
proteína. El programa debe de recorrer listas y leer el peso molecular y la cantidad de
moléculas que se tienen y devolver el peso molecular total de la proteína.

Entradas:
Las tres entradas del programa es la “base de datos” de los aminoácidos.
Serán 3 listas, una con el nombre del aminoácido, otra con la referencia respectiva y el
peso molecular de cada una. El archivo generara una secuencia de proteínas que
tendrá 20 caracteres numéricos y estos 20 caracteres representaran una lista de
aminoácidos en el orden alfabético de la lista. De esta lista, cada entero representara
cuantas moléculas del aminoácido hay en la proteína.

Condiciones:
Se condiciona con try para probar la función de “calculo” que es la que asocia la
referencia del aminoácido con el aminoácido sino se imprime “no se puede abrir el
archivo”

Repeticiones:
No hay repeticiones pues no se considero necesario ya que el programa solo leía las
cadenas de aminoácidos sin pedir nada al usuario.
Variables y funciones:
Se tienen 3 listas, una lista se llama aminoácido, que guarda los nombres de los
aminoácidos, una lista que se llama referencia que tienen la abreviación del
aminoácido respectiva en orden y otra llamada pesomolecular que guarda el peso de
cada aminoácidos.
-
Una variable es pmol que se define con peso*cantidad, peso es el que se
encuentra indicado en la lista de pesos y cantidad es el número de la secuencia de
20 caracteres.
Hay una función llamada imprimirproteina que recibe 3 parámetros, uno que será la
proteína, otro que será peso y otro que será numero e imprime el nombre de la
proteína, el peso en moles.
La función calcular es la que primero con la función global, elige
aleatoriamente entre aminoácido, referencia y pesomolecular, luego abre un archivo
llamado datos.txt que es un archivo creado para que lea la secuencia de aminoácidos.
Para las líneas en el archivo, hace un contador llamado cont que inicia con una cuenta
cero y otro contador llamado peso con valor de cero.
En conclusión, lee los
aminoácidos y devuelve las proteínas junto con el peso de la molécula.
Para “por” en líneas de datos, si pos está entre 1-0 y pos es diferente que 0,
proteína toma el valor de proteína más la posición correspondiente en la lista
respectiva, peso toma el valor de peso mas pesomol por el lugar en la lista
correspondiente. Luego imprime la proteína, el peso y el número. Finalmente se le
suma 1 al contador num.
Narración de como llegó a la solución
La solución se encontró pues se supo que se debía de tener tres listas y que deben de
estar en orden para que el primer dato de una lista sea correspondiente al primero de la
segunda y tercera lista. Luego de crear las listas. Luego de tener las listas el paso siguiente era
identificar las proteínas o cadenas de aminoácidos para que el programa identifique la lista de
referencias adecuadas.
Se basó todo el programa en el inicio de las listas que servirán como “base de datos” y
a partir de eso se trabajará con estos datos, el peso, la posición que se está buscando para el
aminoácido que se pide. Se sabía que para cada dato había otros dos que estaban asociados
por lo que se decidió hacer tres funciones, sin embargo, una debió ser la principal que se llama
“calcular” que encuentra el peso y encuentra la cadena de aminoácidos.
Dividimos el programa en 4 partes principales, una era la que encontraba el peso en
moles, otra que imprime la proteína junto con su peso molecular en moles, la otra era la que
realizaba la función principal y la otra fue crear una lista de datos, un archivo llamado datos.txt
en el bloc de notas para probar el programa.
Funciones desarrolladas:
Funcion
Pm()
Imrimirproteina()
Calcular()
Parámetros que
Valores que
Finalidad de la
Proceso
recibe
devuelve
función
Peso y cantidad
pmol
Encontrar el
Multiplica peso
peso molecular
por cantidad de
en moles
moléculas
Proteína, peso y
Str(num)
Imprimir el peso
Busca el str de
número
Proteína
correspondiente
peso y de num
Str(peso)
de cada amino
Aminoácido,
Proteína, peso y
Encontrar la
Lee la secuencia
referencia, peso
número
proteína y el
de aminoácidos
peso que tiene
y devuelve la
molecular
proteína.
Conclusiones
En este trabajo se aprendió a trabajar en grupo, a trabajar con Python y hacer
programas utilizando funciones que provee el programa tales como try y except. Dentro de
los conceptos aprendidos en clase se práctico hacer listas, recorrerlas y leer el largo de una
lista. La función principal fue el de recorrer y encontrar la posición correspondiente al
aminoácido del que se estaba ingresando junto con su peso y su referencia.
Se practicó crear funciones y algunas funciones útiles que tiene Python que son
simples como imprimir algún texto, realizar algunas operaciones matemáticas, convertir textos
en cadenas y la función “global” que busca dentro de toda la lista y elige.
Python es un programa que ayuda a programar, posee algunas instrucciones que ya
están determinadas para que el usuario no necesite estableces funciones básicas como por
ejemplo la suma o lo que representa el símbolo “+”. La programación es una herramienta útil
para crear diferentes funciones sin necesidad de hacerlas manuales, y de igual forma, ayuda a
resolver problemas y solucionar algoritmos.
Bibliografía
Downey, Allen. Think Python: How to Think Like a Computer Scientist. Learning with Python.
ISBN 13:9780521898119. http://www.thinkpython.com. Versión electrónica 1.1.21
Dentro del IDLE de Python el comando help()
Documentos relacionados
Descargar