Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: grandanh en 5 Enero 2014, 18:23 pm



Título: Ayuda Programa
Publicado por: grandanh en 5 Enero 2014, 18:23 pm
En el Horóscopo Chino Imaginario, cada persona tiene un signo, que es un animal (rata, dragón o mandril) y un elemento (agua o fuego). El signo de la persona viene determinado por el mes y el año de nacimiento. Así:

a. Si el mes es enero, la persona es “rata”. En febrero es “dragón” y en marzo, “mandril”. A partir de aquí los signos se van repitiendo.
b. Si la suma de las cifras del año es par, el elemento es el fuego. En caso contrario, es el
agua.

Queremos almacenar los signos de una serie de amigos (como mucho 50). De cada amigo almacenaremos su nombre y su signo. Realiza un programa que muestre un menú con las siguientes opciones:

1. Introducir los datos de una persona. Esta opción pide al usuario el nombre, el mes y el año
de nacimiento y guarda el signo (animal y elemento). .

2. Listado. Esta opción imprime en pantalla los nombres y signos de los amigos introducidos y
solicita el nombre de un elemento y al final del listado muestra el número de amigos que
tenemos con ese elemento.
3. Finalizar la ejecución del programa.

La ejecución del programa consistirá en ir seleccionando cualquiera de las 2 primeras opciones del menú, en cualquier orden y número de veces, hasta que se elija la opción 3, en cuyo caso el programa finalizará.


Título: Re: Ayuda Programa
Publicado por: joanj94 en 5 Enero 2014, 18:42 pm
aja, y de que necesitas ayuda? No entiendes el enunciado o quieres que te hagamos la tarea? jajaja


Título: Re: Ayuda Programa
Publicado por: jaxoR en 5 Enero 2014, 20:41 pm
Nosé en lo que tenes problemas porque no especificaste mucho, pero me dí una idea de como hacerlo.

Una forma, es haciendo un enum con los meses:

Código
  1. enum
  2. {
  3. enero,
  4. febrero,
  5. marzo,
  6. abril,
  7. mayo,
  8. junio,
  9. julio,
  10. agosto,
  11. septiembre,
  12. octubre,
  13. noviembre,
  14. diciembre
  15. }

Luego creas las variables y haces los printf y los scanf para obtener los valores que ingresa el usuario.

Para obtener el signo podes hacer un switch utilizando los enums. Puede ser (corrijanme si hay algo mal, no estoy muy familiarizado con los switch):

Código
  1. switch (mes)
  2. {
  3. case 0.3.6.9:
  4.          printf("Tu animal es rata");
  5.  
  6.  case 1.4.7.10
  7.          printf("Tu animal es dragon");
  8.  
  9.  case 2.5.8.11
  10.           printf("Tu animal es mandril");
  11. }

Lo de fuego y agua no se como hacerlo porque no se como hacer para sumar las cifras del mismo numero almacenado.

Espero haberte ayudado


Título: Re: Ayuda Programa
Publicado por: dato000 en 5 Enero 2014, 21:15 pm
nada mal ese es un buen eso de las enumeraciones  ::)

Pero para la proxima, que el posteador original deje algo de sus esfuerzos, realmente estamos para ayudar, pero una cosa es compartir otra cosa es robar, no hacemos tarea.