Usuário com melhor resposta
O que está acontecendo com este código?

Pergunta
-
Module Module1 Sub Main() Dim x, y As Double Dim esc As Char Console.Write("Entre com operador (/,*,+,-,%): ") esc = Console.ReadLine() Console.Write("Entre com X: ") x = Console.Read() Console.Write("Entre com Y: ") y = Console.Read() If esc = "+" Then Console.WriteLine(x + y) End If Console.ReadKey() End Sub End Module
Eu entro com o valor 1 (exemplo) na variável X e depois o programa mostra 62, ignorando o resto das instruções. Por quê?
Respostas
-
Então utilize Console.ReadLine() e transforme ele para Double
Assim:
Dim x, y As Double Dim esc As Char Console.Write("Entre com operador (/,*,+,-,%): ") esc = Console.ReadLine() Console.Write("Entre com X: ") x = Double.Parse(Console.ReadLine()) Console.Write("Entre com Y: ") y = Double.Parse(Console.Read()) If esc = "+" Then Console.WriteLine(x + y) End If
Fúlvio Cezar Canducci Dias- Sugerido como Resposta Fulvio Cezar Canducci Dias sexta-feira, 6 de setembro de 2013 00:17
- Marcado como Resposta allazao sexta-feira, 6 de setembro de 2013 00:29
Todas as Respostas
-
Então utilize Console.ReadLine() e transforme ele para Double
Assim:
Dim x, y As Double Dim esc As Char Console.Write("Entre com operador (/,*,+,-,%): ") esc = Console.ReadLine() Console.Write("Entre com X: ") x = Double.Parse(Console.ReadLine()) Console.Write("Entre com Y: ") y = Double.Parse(Console.Read()) If esc = "+" Then Console.WriteLine(x + y) End If
Fúlvio Cezar Canducci Dias- Sugerido como Resposta Fulvio Cezar Canducci Dias sexta-feira, 6 de setembro de 2013 00:17
- Marcado como Resposta allazao sexta-feira, 6 de setembro de 2013 00:29
-