[ Foro de Python ]

Ayuda con un programa

06-Aug-2017 07:08
Invitado (Ruddy Jacob)
1 Respuestas

Buenas, necesito ayuda con un programa que consiste en ingresar y convertir numeros a cualquier base, el programa lo estoy haciendo en python, el problema que tengo es la función "Resultado",lo que quiero es almacenar el resultado de la conversion en una cadena.

 
def ConversionB(n,b):
	n=str(n)
	b=int(b)
	n=n[::-1]
	for i in range(0,len(n),1):
		if (int(ord(n[i]))<65):
			c=float(ord(n[i])-48)*pow(b,i)
		elif (int(ord(n[i]))>=65):
			c=float(ord(n[i])-55)*pow(b,i)
	return c
def Resultado(n,br):
	n=int(n)
	br=int(br)
	v=" "
	v2=" "
	while(n>0):
		a=n%br
		n/=br
		if (a<10):
			v=str(v)+chr(a+48)
			v2=str(v2)+v
		else:
			v=str(chr(a+55))
			v2=str(v2)+v
	return v2
def suma(n1,b,n2,b2,br):
	n1=str(n1)
	b=int(b)
	n2=str(n2)
	b2=int(b2)
	br=int(br)
	x=ConversionB(n1,b)
	y=ConversionB(n2,b2)
	r=x+y
	rf=Resultado(r,br)
	return rf
 


 


11-Aug-2017 23:07
Nacho Cabanes (+31)

Usas nombres de variables tan cortos que no es fácil seguir tu programa, y más sin comentarios ni un cuerpo de programa que ayude a entender la lógica que persigues. ¿La función resultado debe convertir un número a cadena?  Si es así, ¿por qué recibe dos parámetros? ¿Si "ConversionB" es la que convierte de una base a otra, no debería ser esa la que devolviera una cadena?






Si ya eres usuario del sistema, puedes contestar desde tu cuenta y así ganar prestigio.

Si sólo eres un visitante, puedes optar por...