La función en cuestión sirve para, una vez dados el número y la potencia, imprimir el resultado.
#------------------------------------------------------------------------------- # Name: module2 # Purpose: # # Author: Kerith # # Created: 01/01/2011 # Copyright: (c) Kerith 2011 # Licence:#------------------------------------------------------------------------------- #!/usr/bin/env python import sys def ElevarPotencia(numero, potencia): num_base = numero contador = 0 if potencia != 0: while contador < potencia: numero *= num_base contador += 1 else: numero = 1 return numero def main(): numero = int(raw_input('Numero: ')) potencia = int(raw_input('Potencia: ')) # A partir de aqui es prescindible resultado = ElevarPotencia(numero, potencia) print resultado # Hasta aqui ^ if __name__ == '__main__':
main()
Vale, si, es posible hacerlo más corto con un bucle 'for' o una función recursiva, pero tampoco esta tan mal, no?Básicamente la función ElevarPotencia() dice (línea por línea):
"crea una variable num_base, que tenga el mismo valor que numero."
"crea un contador, que empiece desde cero"
"si potencia es diferente a 0"
"mientras contador sea menor que potencia"
" numero = numero*num_base"
" añade 1 al contador"
"sino, numero = 1"
"devuelve numero"
No hay comentarios:
Publicar un comentario