Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Meta en 25 Noviembre 2010, 06:52 am



Título: [Python] - Funciones
Publicado por: Meta en 25 Noviembre 2010, 06:52 am
Buenas amig@s:

Ejercicio 264)... (http://www.subeimagenes.com/img/1111111111-7780.jpg)

No entiendo mucho eso de cambiar de grados.

Por ejemplo. Tengo 27ºC. Por lo que dice debo restar 32 grados F y multiplicar el resultado por 59.

Por ahora no entiendo bien el concepto de los clculos que hay que hacer.

En programación se que es algo así:
Código
  1. def calculo(x):
  2.     return (operaciones grados que no se como es)

Saludo.


Título: Re: [Python] - Funciones
Publicado por: Novlucker en 25 Noviembre 2010, 11:15 am
http://es.wikipedia.org/wiki/Grado_Fahrenheit#Conversi.C3.B3n_a_otras_unidades

80,6 Fahrenheit = (80,6 - 32)/1,8 = 27 Celcius, donde x/1,8 = x*5/9

Saludos


Título: Re: [Python] - Funciones
Publicado por: Meta en 25 Noviembre 2010, 12:17 pm
Gracias.

Por aquí explcia también algo.
http://www.aaamatematicas.com/mea414x3.htm

Me ha salido así:
Código
  1. def calculo(g):
  2.    a = (g - 32) / 1.8
  3.    b = (a * 5) / 9
  4.    return b
  5.  
  6. print calculo(27)
  7. print b

No me muestra nada en pantalla.


Título: Re: [Python] - Funciones
Publicado por: Novlucker en 25 Noviembre 2010, 12:24 pm
Raro, debería de partirse.

El primer print si va a funcionar, pero el segundo no porque la variable b no existe

Por otra parte, lo que tienes que pasarle como parametro a la función son los grados Fahrenheit, el 80.6.
Por último, no entiendo por que es que tienes esa "doble" conversión dentro de la función, si con la primera alcanza.

Saludos


Título: Re: [Python] - Funciones
Publicado por: Meta en 25 Noviembre 2010, 13:26 pm
Ignorando el print b, aún así con el primer print no hace nada. Si crees que no tengo  el código bien lo puedes rectificar a ver que le pasa.


Título: Re: [Python] - Funciones
Publicado por: Novlucker en 25 Noviembre 2010, 14:00 pm
Es lo que estoy diciendo, lo estoy probando y si funciona, pero obviamente no da el resultado que debería.

Saludos


Título: Re: [Python] - Funciones
Publicado por: Meta en 25 Noviembre 2010, 20:12 pm
Pues entonces lo dejo así ya que internamente la función funciona en apariencia.

Código
  1. def calculo(g):
  2.    a = (g - 32) / 1.8
  3.    b = (a * 5) / 9
  4.    return b
  5.  
  6. print calculo(27)



Edito:

Ahora si me aparece un rasultado como es este:
Citar
-1.54320987654


Título: Re: [Python] - Funciones
Publicado por: .:WindHack:. en 25 Noviembre 2010, 22:14 pm
Código
  1. def calculo(g):
  2.    a = (g - 32) / 1.8
  3.    b = (a * 5) / 9
  4.    return b #a
  5.  
  6. print calculo(80.6)


Título: Re: [Python] - Funciones
Publicado por: Meta en 25 Noviembre 2010, 22:52 pm
¿Qué le ves de malo?
Según aquí está bien calculado.
http://www.aaamatematicas.com/mea414x3.htm

Algo me dice que estoy ciego...

Código
  1. def calculo(g):
  2.    a = (g - 32) / 1.8
  3.    b = (a * 5) / 9
  4.    return b
  5.  
  6. print calculo(80.6)
Citar
15.0




Código
  1. def calculo(g):
  2.    a = (g - 32) / 1.8
  3.    b = (a * 5) / 9
  4.    return a
  5.  
  6. print calculo(80.6)
Citar
27.0


Título: Re: [Python] - Funciones
Publicado por: .:WindHack:. en 25 Noviembre 2010, 23:09 pm
Ya te respondiste tú solo. El segundo código está bien, y no es necesario el cálculo "b".

Mira lo que explicó Novlucker:
Citar
80,6 Fahrenheit = (80,6 - 32)/1,8 = 27 Celcius, donde x/1,8 = x*5/9

Saludos.,



Título: Re: [Python] - Funciones
Publicado por: Meta en 26 Noviembre 2010, 00:39 am
Me funciona mejor así:

Código
  1. cer = float(raw_input('Temperatura Farenheit: '))
  2.  
  3. def calculo(gra):
  4.    a = (gra - 32) / 1.8
  5.    return a
  6.  
  7. print calculo(cer), 'Grados Centígrados.'