Documentos de Académico
Documentos de Profesional
Documentos de Cultura
#
#Juan Camilo Garzon Upegui-Programacion Cientifica
#
#Funcion salto J(m,n,q)
def J(m,n,q):
cp=2
if m==n:
cp=q
else:
cp=1+cp
#Funcion cero Z(n)
def Z(n):
fww[n-1]=0
#Funcion sucesor S(n)
def S(n):
fww[n-1]=fww[n-1]+1
w=open('archivo_registros_MRI.txt','r')
fw=w.readlines()
###
# Sobre la lista creada apartir de la lectura de los dos archivos
(programa y registros)
# Realizo una serie de operaciones para eliminar caracteres inutiles y asi
obtener
# una lista mas comoda para trabajar
fh=fhh[:]
for i in range(len(fh)):
fh[i]=fh[i].replace('\n','')
for i in range(len(fw)):
fw[i]=fw[i].replace('\n','')
for i in range(len(fw)):
fw[i]=fw[i].replace(' ','')
for i in range(len(fh)):
fh[i]=fh[i][2:]
for i in range(len(fh)):
fh[i]=fh[i].replace(' ','')
### creare la lista del programa fh de una manera que se pueda leer
facilmente
for i in range(len(fh)):
fh[i]=fh[i].replace('(',',')
for i in range(len(fh)):
fh[i]=fh[i].replace(')','')
for i in range(len(fh)):
fh[i]=fh[i].split(',')
import copy
kk=copy.deepcopy(fh)
for i in range(len(kk)):
kk[i].pop(0)
for i in range(len(kk)):
for j in range(len(kk[i])):
kk[i][j]=int(kk[i][j])
maxkk=kk[:]
for i in range(len(kk)):
maxkk[i]=max(kk[i])
fww=range(max(maxkk))
for i in range(len(fww)):
fww[i]=0
for i in range(len(fw)):
fww[int(fw[i][0])-1]=int(fw[i][1])
###Ahora que tengo las dos listas basicas fh: programa y fww:registros
#procedo al desarrollo de la simulacion
def simuleMRI(fh,fww,N):
for cp in range(len(fh)):
if fh[cp].count('J')==1:
J(int(fh[cp][1]),int(fh[cp][2]),int(fh[cp][3]))
cp=cp
elif fh[cp].count('S')==1:
S(int(fh[cp][1]))
cp=cp+1
elif fh[cp].count('Z')==1:
Z(int(fh[cp][1]))
cp=cp+1
elif fh[cp].count('T')==1:
T(int(fh[cp][1]),int(fh[cp][2]))
cp=cp+1
else: print 'errormutherfuvker'
return fww