comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[SOLUCIONADO] Problema con simple cuestionario

  • 7 Respuestas
  • 2002 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Flemon

  • *
  • Underc0der
  • Mensajes: 235
  • Actividad:
    0%
  • Reputación 0
  • NO HAY FORMA DE DETENERME!!
    • Ver Perfil
    • Email
« en: Enero 19, 2013, 12:17:58 am »
 Hola a todos, bueno, aca mientras estudio para rendir una materia, se me dio por hacer un simple cuestionario,y cada tanto lo voy probando para ver si sale algun bug o error inesperado, en eso me tope que una de las preguntas correcta me la toma como falsa:



y aca la otra



Aca les dejo el code para que le echen un vistazo a ver que puede ser

Código: Python
  1. # -*- coding: utf-8 -*-
  2. #Cuestionario Creado por Flemon
  3. #
  4. #
  5. # En el se trataran temas del cursado de Moleculas a Celulas de la
  6. #              
  7. #
  8. # Todos los derechos reservados al autor
  9. #
  10. # Para comunicart escribeme a: flemon0x@gmail.com
  11. #
  12. import sys
  13. print 'Cuestionario Moleculas a Celulas 1.2'
  14. print ''
  15. print 'Universidad del Aconcagua'
  16. print ''
  17. raw_input('Preciona Enter para continuar')
  18. print''
  19. a=float(raw_input('Cuantos son los aa escenciales: '))
  20. if a == 9:
  21.         print 'Correcto'
  22. elif a != 9:
  23.         print 'INCORRECTO,vuelve a estudiar'
  24.         sys.exit(0)
  25. print ''       
  26. print 'Cuales son los aa escenciales?'
  27. print ''
  28. print '1- leucina valina metionina triptofano fenilalanina isoleusina treonina histidina arginina'     
  29. print '2- Valina,metionina,triptofano,fenilalanina,isoleusina,biotina,histidina,arginina,treonina'
  30. print '3- triptofano,valina,metionina,fenilalanina,isoleusina,creatinina.histidina,arginina,treonina'
  31. print ''       
  32. b = float(raw_input('Ingresa el numero de la opcion correcta: '))
  33. if b == 1:
  34.         print 'CORRECTO, SIGAMOS'
  35. elif b != 1:
  36.         print 'Mal mal, comienza devuelta'
  37.         sys.exit(0)
  38. print ''
  39. print 'El punto isoelectrico es: '
  40. print ''
  41. print 'el ph al cual la molecula de aa es acida'
  42. print 'el ph al cual la molecula de aa es neutra'
  43. print 'el ph al cual la molecula de aa es basica'
  44. c=raw_input('ingresa tu respuesta TEXTUAL: ')
  45. print ''
  46. print ''
  47. if c == 'el ph al cual la molecula de aa es neutra':
  48.         print 'CORRECTO,vamos por la que sigue'
  49. elif c!= 'el ph al cual la molecula de aa es neutra':
  50.         print 'INCORRECTO,volve a comenzar del principio'
  51.         sys.exit(0)    
  52. print ''
  53. print ''       
  54. print 'La union PEPTIDICA es:'
  55. print ''
  56. print 'union quimica entre aa con ganancia de agua'
  57. print 'union quimica entre aa sin alteracion del agua'
  58. print 'union quimica entre aa con perdida de agua'
  59. print ''
  60. d=raw_input('ingresa tu respuesta TEXTUAL: ')
  61. if d=='union quimica entre aa con perdida de agua':
  62.         print 'GENIAL,vas por un buen camino, vamos por mas'
  63. elif d!='union quimica entre aa con perdida de agua':
  64.         print 'Mal,Mal,Mal,anda urgente a seguir estudiando'
  65.         sys.exit(0)
  66. print ''
  67. print ''
  68. print 'PASEMOS A VITAMINAS'    
  69. print ''
  70. print ''
  71. print 'Que son las VITAMINAS?'
  72. print ''
  73. print '1- Son Enzimas'
  74. print '2- Son Coenzimas'
  75. print ''
  76. e = raw_input('ingresa el numero de la respuesta correcta: ')
  77. if e == 2:
  78.         print 'bien, bien, continuemos que el tema es facil'
  79.         print ''
  80. elif e==1:
  81.         print 'No, No no, es facil, volve a empezar por tu burrada'
  82.         sys.exit(0)            
  83. print ''
  84. print ''
  85. print 'Cuales son los Liposolubles? '  
  86. print ''
  87. print '1- A,D,E,K'
  88. print '2- B1,B2,B3,B5,B6,B8,B9,B12,C'
  89. print ''
  90. f= raw_input('ingresa el numero de la respuesta correcta: ')
  91. if f == 1:
  92.         print 'Vamos nomas, continuemos con el cuestionario que es facil la cosa'
  93. elif f != 2:
  94.         print 'Agggg, eso lo tenes que saber como tu propio nombre'
  95.         sys.exit(0)    
  96. print ''
  97. print ''
  98. print 'La vitamina A como se llama?'
  99. print ''
  100. print 'tocoferol'
  101. print 'retinol'
  102. print 'calciferol'
  103. print ''
  104. g= raw_input('ingresa  la respuesta correcta TEXTUALMENTE: ')
  105. if g== 'retinol':
  106.         print 'Biiiiieeeeeen, continuemos'
  107. elif g!= 'retinol':
  108.         print 'Anda a repasar y volve'
  109.         sys.exit(0)
  110. print ''
  111. print 'la funcion de la vitamina A es: '
  112. print ''
  113. print 'mantenimiento de la piel mucosas y diente'
  114. print 'formacion de adn y arn'
  115. print ''
  116. h  = raw_input('ingresa TEXTUALMENTE la respuesta correcta: ')
  117. if h == 'mantenimiento de la piel mucosas y diente':
  118.         print 'Biiiiieeeeeen'
  119. elif h != 'mantenimiento de la piel mucosas y diente':
  120.         print 'volve a repasar'
  121.         sys.exit(0)
  122. print ''       
  123. print 'la funcion de la vitamina D es:'
  124. print ''
  125. print '1- Absorcion de Mg+ '
  126. print '2- Absorcion de K'
  127. print '3- Absorcion de Ca'
  128. print ''
  129. i = raw_input('Ingresa el numero de tu respuesta: ')
  130. if i== 3:
  131.         print 'Si, esa es la correcta'
  132. elif i != 3:
  133.  print 'No era esa la respuesta correcta'
  134.  sys.exit(0)
  135. print ''
  136. print 'la funcion de la vitamina E es: '
  137. print ''
  138. print '1- formacion de anticuerpos'
  139. print '2- formacion de adn,arn y globulos rojos'
  140. print '3- mantenimiento general de la retina'
  141. print ''
  142. j = raw_input('Ingresa el numero de tu respuesta: ')
  143. if j== 2:
  144.         print 'Correcto,SIGAMOS'
  145. elif j != 2:
  146.         print 'No, volve de cero'
  147.         sys.exit(0)
  148. print ''
  149. print 'la funcion de la vitamina K es: '
  150. print ''
  151. print '1- La formacion de anticuerpos'
  152. print '2- antioxidante'
  153. print '3- Necesaria para la coagulacion sanguinea'     
  154. print ''
  155. k = raw_input('Ingresa el numero de tu respuesta: ')
  156. if k== 3:
  157.         print 'bien, continuemos'
  158. elif k != 3:
  159.         print ' No, estas mal'
  160.         sys.exit(0)                    
  161. print ''       
  162. print 'Pasemos a Electrolitos'
  163. print ''
  164. print ''
  165. print 'Cual es el principal cation del liquido extracelular?: '
  166. print ''
  167. print '1- El Na+'
  168. print '2- El Mg'
  169. print '3- El K'
  170. print ''
  171. l=raw_input('Ingresa el numero de tu respuesta: ')
  172. if l== 1:
  173.         print 'Correcto'
  174. elif l!= 1:
  175.         print 'No, esta mal eso'
  176.         sys.exit(0)
  177. print ''
  178. print 'El Na que efectos causa?'
  179. print ''
  180. print '1- Irritabilidad Muscular, equilibrio osmotico, volumen intracelular,equilibrio acido-base,permeabilidad capilar'
  181. print '2- Irritabilidad Muscular, equilibrio osmotico, volumen extracelular, equilibrio acido-base, permeabilidad capilar'
  182. print ''
  183. m = raw_input('Ingresa el numero de tu respuesta: ')
  184. if m== 2:
  185.         print 'bien'
  186. elif m!= 2:
  187.         print 'No, mal '
  188.         sys.exit (0)           

« Última modificación: Octubre 26, 2013, 09:21:53 am por Expermicid »
No intentes pararme, trata de defenderte, trata de matarme, pero de cualqueir forma TE SUPERARE

Desconectado Once

  • *
  • Underc0der
  • Mensajes: 391
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • El blog de Once
  • Twitter: @don_once
« Respuesta #1 en: Enero 19, 2013, 12:52:40 am »
Hola,

Tu error está acá:

Código: Python
  1. f= raw_input('ingresa el numero de la respuesta correcta: ')
  2. if f == 1:
  3.         print 'Vamos nomas, continuemos con el cuestionario que es facil la cosa'
  4. elif f != 2:
  5.         print 'Agggg, eso lo tenes que saber como tu propio nombre'
  6.         sys.exit(0)
  7.  

raw_input te regresa una cadena y tu estás comparando un entero (no es lo mismo un "1" a un 1) así que la solución es simple y tienes dos opciones:

1) convierte lo que te regresa la función a entero con la función int()
2) Encierra entre "" los números para que Python los tome como cadenas.

Y ahora un pequeño consejo para ahorrar caracteres: en los condicionales no es necesario que uses elif, ya que sólo evaluas dos posibles respuestas, la correcta y la verdadera. Así que puedes acortar code usando sólo else:

Código: Python
  1. if f == 1:
  2.         print 'Vamos nomas, continuemos con el cuestionario que es facil la cosa'
  3. else:
  4.         print 'Agggg, eso lo tenes que saber como tu propio nombre'
  5.         sys.exit(0)
  6.  

Haría lo mismo que tu código y te ahorrarias las condiciones

Otro consejo: Puedes evitar hacer tanto print. puedes usar un sólo print y triples comillas (dobles o simples)

Código: Python
  1. print '''
  2. la funcion de la vitamina E es:
  3. formacion de anticuerpos
  4. formacion de adn,arn y globulos rojos
  5. 3- mantenimiento general de la retina
  6. '''
  7.  

PD: Te edité el post para que se viera el código.

Saludos!
« Última modificación: Enero 19, 2013, 12:59:48 am por 11Sep »






No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado Zheffho

  • *
  • Underc0der
  • Mensajes: 2
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #2 en: Enero 19, 2013, 01:08:53 am »
Vaya que buena ayuda, no sabia que en Python se podia usar un solo "print"  para varias lineas, funciona en otros lenguajes?

Desconectado Flemon

  • *
  • Underc0der
  • Mensajes: 235
  • Actividad:
    0%
  • Reputación 0
  • NO HAY FORMA DE DETENERME!!
    • Ver Perfil
    • Email
« Respuesta #3 en: Enero 19, 2013, 01:19:22 am »
Muchas gracias por el dato de print, y por tu revisión en el codigo, con respecto en la parte del elif f !=2, era 1, solo que estaba experimentando a ver que pasaba, hice lo que me dijiste, pero igual me sigue marcandola como incorrecta a la opcion correcta, jajaja, es extraño
No intentes pararme, trata de defenderte, trata de matarme, pero de cualqueir forma TE SUPERARE

Desconectado Once

  • *
  • Underc0der
  • Mensajes: 391
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • El blog de Once
  • Twitter: @don_once
« Respuesta #4 en: Enero 19, 2013, 01:39:00 am »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
Vaya que buena ayuda, no sabia que en Python se podia usar un solo "print"  para varias lineas, funciona en otros lenguajes?

Sé que para php hay una forma similar de hacer, pero por el momento se me escapa. en otros lenguajes, la verdad lo ignoro

Citar
Muchas gracias por el dato de print, y por tu revisión en el codigo, con respecto en la parte del elif f !=2, era 1, solo que estaba experimentando a ver que pasaba, hice lo que me dijiste, pero igual me sigue marcandola como incorrecta a la opcion correcta, jajaja, es extraño

Pon el código (ojala sólo la parte que te da el error) que tienes

Saludos!






No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado 2Fac3R

  • *
  • Underc0der
  • Mensajes: 237
  • Actividad:
    0%
  • Reputación 0
  • Why be a king, when you can be a god
    • Ver Perfil
    • Escuela de Hackers & Programación
  • Skype: rockeg_18
  • Twitter: @2Fac3R
« Respuesta #5 en: Enero 19, 2013, 02:28:30 am »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
Vaya que buena ayuda, no sabia que en Python se podia usar un solo "print"  para varias lineas, funciona en otros lenguajes?

En php es algo asi:

Código: PHP
  1. <?php
  2.  
  3. echo <<<cadena
  4.  
  5. Imprimiendo en varias lineas <br>
  6. como en python xD <br>
  7.  
  8. cadena
  9. ?>
  10.  

Igual lo podemos hacer simplemente asi:

Código: PHP
  1. <?php
  2. echo "cadena
  3.  
  4. Imprimiendo en varias lineas <br>
  5. como en python xD <br>
  6.  
  7. cadena";
  8. ?>
  9.  
:D
Zalu2
Escuela de Hackers & Programación.
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado Flemon

  • *
  • Underc0der
  • Mensajes: 235
  • Actividad:
    0%
  • Reputación 0
  • NO HAY FORMA DE DETENERME!!
    • Ver Perfil
    • Email
« Respuesta #6 en: Enero 19, 2013, 07:29:04 am »
Ya lo solucione, era sencillo, me habia comido la funcion float(), jajajaja,  :o

ahora me quedo asi ese fragmento:

Código: Python
  1. print '''
  2. Cuales son los Liposolubles?    
  3. 1- A,D,E,K
  4. 2- B1,B2,B3,B5,B6,B8,B9,B12,C
  5. '''
  6. f= float(raw_input('ingresa el numero de la respuesta correcta: '))
  7. if f == 1:
  8.         print 'Vamos nomas, continuemos con el cuestionario que es facil la cosa'
  9. elif f!= 1:
  10.         print 'Agggg, eso lo tenes que saber como tu propio nombre'
  11.         sys.exit(0)    

 como me había olvidado de eso, jajaja, muchísimas gracias a todos, ya lo voy a subir completo, el temario entra hasta histología, capas a alguien en un futuro le sea de ayuda, tanto para orientarse de como formar un cuestionario con python o repaso de biologia, jajajaja  ;D

muchas gracias 11Sep por tu ayuda
No intentes pararme, trata de defenderte, trata de matarme, pero de cualqueir forma TE SUPERARE

Desconectado Once

  • *
  • Underc0der
  • Mensajes: 391
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • El blog de Once
  • Twitter: @don_once
« Respuesta #7 en: Enero 21, 2013, 09:22:01 pm »
Hola brother,

Si bien diste con la solución, recuerda que Python es fuertemente tipado, así que debes tener cuidado en un futuro con los tipos si no quieres tener problemas con tus proximos scripts.

Saludos!
« Última modificación: Enero 21, 2013, 09:41:09 pm por 11Sep »






No tienes permisos para ver links. Registrate o Entra con tu cuenta

 

¿Te gustó el post? COMPARTILO!



[SOLUCIONADO] ¿Kali Linux o Kali Linux Ligth ?

Iniciado por worq

Respuestas: 2
Vistas: 7880
Último mensaje Noviembre 21, 2017, 12:28:54 pm
por Codig0Bit
[SOLUCIONADO] Multiuploader de imagenes con mysql, hosting de imagenes con mysql

Iniciado por graphixx

Respuestas: 4
Vistas: 2245
Último mensaje Marzo 26, 2013, 05:42:58 pm
por Xt3mP
[SOLUCIONADO] ¿Como publicar un software como software libre?

Iniciado por FuriosoJack

Respuestas: 2
Vistas: 1661
Último mensaje Mayo 23, 2017, 07:24:22 am
por HATI
[SOLUCIONADO] Linux Mint, errores, errores y mas errores...

Iniciado por n1sendev

Respuestas: 12
Vistas: 3071
Último mensaje Noviembre 22, 2017, 06:50:55 am
por RuidosoBSD
[SOLUCIONADO] Ayuda urgente con Virus "Virus.Win32Sality"

Iniciado por Napsters

Respuestas: 6
Vistas: 3502
Último mensaje Junio 11, 2012, 03:38:18 am
por Satyricon