elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Conseguir modo aleatorio y carácteres.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Conseguir modo aleatorio y carácteres.  (Leído 1,999 veces)
Renhy

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Conseguir modo aleatorio y carácteres.
« en: 27 Junio 2010, 06:04 am »

Hola amigos, de una serie de 10 ejercicios no me salen 3 pero les mencionaré el más importante.

Dice:

6. Un instituto de inglés desea implementar un programa para sus alumnos, que consiste en realizar un algoritmo en el cual se deba tipear correctamente una serie de 10 números en el cual se deba conseguir 2 puntos por cada tipeo bien hecho y 0 por los malos. Al comenzar, el algoritmo le ofrece el modo aleatorio y manual que consisten en soltar aleatoriamente los 10 números y el manual en el que el usuario podrá digitar los 10 números que desee tipear. Al terminar el Algoritmo muestra el promedio final y pregunta si desea volver a realizar el ejercicio o finalizar.

Bueno lo único que he pensado hacer es meter cadena para los números tipeados pero al ser muchos tendría que declarar algunos valores...

La pantalla sale masomenos así
_________________
ESCOGER
Aleatorio (A)
ManuaL (M)
________________

Aleatorio_________
1. 90 --> .............. (los puntos suspensivos son para tipear la respuesta o la pregunta)
2. 32 --> ...............
3. 1 --> .................
4...
.
.
10. 84 --> Eighty four (Algo así sería cuando se escribe una respuesta)
_________________--

Nota_______________
Buenas: 8
Malas: 2
Total: 16                 (Cada numero bien tipeado vale 2 puntos y la nota maxima es 20)
_____________________

Final_________________
Practicar otra vez (S)
Salir                (N)
_______________-

Ahora, si se huviera escogido Manual sería así

Manual________________
1. ........ ---> .....................
2. ......... ---> ..................
3......... ---> ................
4
.
.
.
10 ..........---> ...............
_______________________

Pues en el primer espacio en blanco se debe tipear un numero del 1 al 99. Más no. Y escribir cómo se tipea.

Bueno no sé si me puedan ayudar porque no me conocen ni nada. Estoy estudiando ingeniería de sistemas y la verdad es que no los quiero trabajar al sentimiento pero me gusta hacer todo por mí y esta vez necesito ayuda ya que quisiera cnoseguirme la beca. Gracias!


En línea

nicolas_cof


Desconectado Desconectado

Mensajes: 348


Into the Wild


Ver Perfil WWW
Re: Conseguir modo aleatorio y carácteres.
« Respuesta #1 en: 27 Junio 2010, 06:11 am »

Reglas del subforo

Citar
Este no es un subforo donde se soliciten tareas, sino un lugar donde resolver dudas.

Renhy, si no pones algo de el avance de tu codigo, dudo que alguien te pueda ayudar :P

Ademas si estas hablando de una beca, la mejor forma seria ganarla con esfuerzo de tu parte. Espero que no lo tomes a mal ;)

Salu10.


« Última modificación: 27 Junio 2010, 06:13 am por nicolas_cof » En línea

Renhy

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: Conseguir modo aleatorio y carácteres.
« Respuesta #2 en: 28 Junio 2010, 00:09 am »

Eh... gracias Nicolás, postearé el avance más tarde y disculpen si se sobreentiende que es una ayuda a una tarea. De todos modos, gracias.
En línea

MIG80

Desconectado Desconectado

Mensajes: 38



Ver Perfil
Re: Conseguir modo aleatorio y carácteres.
« Respuesta #3 en: 29 Junio 2010, 08:01 am »

Bueno, una pista ;): Te resultará más sencillo si usas una tabla de de 99 strings:

Código:
número | denominacion
-------+-------------
  1    | one
  2    | two
  3    | three
  .    | .
  .    | .
  .    | .
 98    | ninety eight
 99    | ninety nine
     

Para almacenar la tabla usarias un array de 99 strings :

Código
  1. const char *denominacion[99]={ "one","two","three", . . . ,"ninety eight","ninety nine"};
  2.  

Luego, durante la ejecución del programa, se comparan lo tipeado por el estudiante de Ingles con el string correspondiente almacenado en la tabla.

Código
  1. char strres[100]; // array que almacenara la respuesta del estudiante
  2. int n;            // valor que el estudiante debera tipear en Ingles
  3. int puntaje;      // puntaje del estudiante
  4. ...
  5. printf("%2d --> ");
  6. gets(strres);
  7.  
  8. minusculas(strres); // convierte la respuesta en minusculas; de este modo TWO y Two (por ejemplo) seran
  9.                    // ambas consideradas respuestas validas cuando se solicite tipear el numero 2.
  10.  
  11. // ahora verificamos si la respuesta dada es valida
  12. if(strcmp(strres,denominacion[n-1])==0)
  13. {
  14.  // la respuesta dada es valida; se aumenta el puntaje en 2
  15.  puntaje+=2;
  16. }
  17. ...
  18.  

Bueno creo que eso resuelve una buena parte del problema :). (Implementar la funcion minusculas() no es nada dificil)
« Última modificación: 29 Junio 2010, 08:27 am por czealt » En línea

nicolas_cof


Desconectado Desconectado

Mensajes: 348


Into the Wild


Ver Perfil WWW
Re: Conseguir modo aleatorio y carácteres.
« Respuesta #4 en: 29 Junio 2010, 08:15 am »

czealt, no es recomendable el uso de las funciones gets() y strcmp().

Usa mas bien fgets() y strncmp()

Te sugiero leer el siguiente post, donde se explica el porque no usarlas...

http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html

Salu10.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines