Usuário com melhor resposta
Uso do comando return ou qualquer outro que volte a etapa anterior conforme uma condição

Pergunta
-
Boa tarde pessoal,
Minha dificuldade é a seguinte:
Caso m > 5 , meu programa é inválido e eu preciso voltar para que a pessoa entre com um valor menor que 5 e assim o programa continua.
Console.Write("ESCREVA A QUANT. DE MOLAS DA ESTRUTURA:" ); int m; m = int.Parse(Console.ReadLine()); Console.WriteLine(""); if (m > 5) { Console.Write("QUANT. MÁX. DE MOLAS DO PROGRAMA: 5 "); } else ...
Qual a melhor forma?
Obrigado e desculpe o nível iniciante da duvida..rs
Abraços
Respostas
-
Daniel,
Coloque dentro de um "while" seu código, quando a variável for false, que dizer que ele não precisa digitar novamente, pois já atende a condição (ser menor ou igual a 5)
bool devoContinuarExecutando = true; while (devoContinuarExecutando) { Console.WriteLine("ESCREVA A QUANT. DE MOLAS DA ESTRUTURA:"); int m; m = int.Parse(Console.ReadLine()); Console.WriteLine(""); if (m > 5) { Console.Write("QUANT. MÁX. DE MOLAS DO PROGRAMA: 5 "); } else { //Se caiu aqui é porque ele digitou um valor menor ou igual a 5 devoContinuarExecutando = false; } }
Vitor Mendes | Seu feedback é muito importante para todos!
Visite o meu site: http://www.vitormendes.com.br/- Sugerido como Resposta Murilo Kunze quinta-feira, 21 de fevereiro de 2013 19:37
- Editado Vitor Mendes quinta-feira, 21 de fevereiro de 2013 19:43
- Marcado como Resposta Daniel Ferraz quinta-feira, 21 de fevereiro de 2013 20:42
Todas as Respostas
-
Daniel,
Coloque dentro de um "while" seu código, quando a variável for false, que dizer que ele não precisa digitar novamente, pois já atende a condição (ser menor ou igual a 5)
bool devoContinuarExecutando = true; while (devoContinuarExecutando) { Console.WriteLine("ESCREVA A QUANT. DE MOLAS DA ESTRUTURA:"); int m; m = int.Parse(Console.ReadLine()); Console.WriteLine(""); if (m > 5) { Console.Write("QUANT. MÁX. DE MOLAS DO PROGRAMA: 5 "); } else { //Se caiu aqui é porque ele digitou um valor menor ou igual a 5 devoContinuarExecutando = false; } }
Vitor Mendes | Seu feedback é muito importante para todos!
Visite o meu site: http://www.vitormendes.com.br/- Sugerido como Resposta Murilo Kunze quinta-feira, 21 de fevereiro de 2013 19:37
- Editado Vitor Mendes quinta-feira, 21 de fevereiro de 2013 19:43
- Marcado como Resposta Daniel Ferraz quinta-feira, 21 de fevereiro de 2013 20:42
-
Meu problema agora é que querendo fazer um switch para variável m, com case 1 a case 5, pois cada caso tem um código, o erro acusa tipo da variável m inválida.
//continuando.. switch (m) { case ("1"): Console.Write("Escreva a rigidez da mola 1: "); double k1; k1 = Convert.ToDouble(Console.ReadLine());
// não aceita o case 1 para m
-
Daniel
Certamente a sua variável "m" não esta entre os tipo suportado pela a estrutura switch/case. Tente colocar m.ToString()
Vitor Mendes | Seu feedback é muito importante para todos!
Visite o meu site: http://www.vitormendes.com.br/