C sharp - problema con console.read();

 
Vista:

problema con console.read();

Publicado por SkyeTeam (2 intervenciones) el 28/08/2018 00:37:00
Buenas que tal? tengo un problema con el console.read(); ya que cuando escribo el dato que quiero que se guarde en la variable da otro, ejemplo: escribo "0" y me da 48, si escribo "1" da 49 y así, cual sera el problema? Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 218
Bronce
Ha mantenido su posición en C sharp (en relación al último mes)
Gráfica de C sharp

problema con console.read();

Publicado por Cesar (82 intervenciones) el 28/08/2018 00:46:40
Hola.

Estas guardando el codigo ascii.

Console.Read(), regresa el codigo ascii, de la tecla presionada.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

problema con console.read();

Publicado por SkyeTeam (2 intervenciones) el 28/08/2018 00:52:57
y como hago para que al pulsar 1 de 1 por asi decirlo, ya que intento hacer un sistema que si pulsas el numero 1 hace un if y si pulsas 2 hacer un else if y asi, como puedo hacer que de 1 o 2 y que lea eso bien?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 218
Bronce
Ha mantenido su posición en C sharp (en relación al último mes)
Gráfica de C sharp

problema con console.read();

Publicado por Cesar (82 intervenciones) el 28/08/2018 01:20:21
Hola.

Veo 3 opciones:

- Primera y mas facil, validalo directamente con su codigo ascii (valida el 48, 49, etc.).

- Convierte la respuesta a su equivalente char, y luego a entero. Esto regresara el entero, pero solo funcionara si presionas numeros. Si presionas un caracter, mandara error:

1
var valorEntero=int.Parse(((char)Console.Read()).ToString());

- Validalo como tecla:

1
2
3
4
5
6
7
8
9
10
11
12
var tecla = Console.ReadKey();
switch (tecla.Key)
{
   case ConsoleKey.D1:
   case ConsoleKey.NumPad1:
      // Tecla 1
      break;
   case ConsoleKey.D2:
   case ConsoleKey.NumPad2:
      // Tecla 2
      break;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar