Como fazer com que o while pare ? {RESOLVIDO}

Oi! Como faço para fazer com que o while pare. Sendo assim, o usuário digita um valor, como por exemplo -1, e o while terminar sua instrução, mas enquanto isso ele continuar a instrução até que o user digita o valor especificado.

Obrigado.

[quote=hackum]Oi! Como faço para fazer com que o while pare. Sendo assim, o usuário digita um valor, como por exemplo -1, e o while terminar sua instrução, mas enquanto isso ele continuar a instrução até que o user digita o valor especificado.

Obrigado.[/quote]

[code]opcao : inteiro
opcao := 0

enquanto opcao = 0 faca
escreva “Escolha uma opção”
escreva “1: Faça alguma coisa”
escreva “2: Faça alguma outra coisa”
escreva “0: Saia”
leia opcao
fim enquanto[/code]

  while( opcao != -1 )
  {
    leOpcao;
    fazOqueTemQFazer;
  }

Vc tbm pode usar o do while, caso queira executar a leitura da opção que o usuario digita antes.

do{
        //lê opcao
    }while(opcao != -1);

.

[quote=wbdsjunior][quote=hackum]Oi! Como faço para fazer com que o while pare. Sendo assim, o usuário digita um valor, como por exemplo -1, e o while terminar sua instrução, mas enquanto isso ele continuar a instrução até que o user digita o valor especificado.

Obrigado.[/quote]

[code]opcao : inteiro
opcao := -1

enquanto opcao <> 0 faca
escreva “Escolha uma opção”
escreva “1: Faça alguma coisa”
escreva “2: Faça alguma outra coisa”
escreva “0: Saia”
leia opcao
fim enquanto[/code][/quote]
corrigido.

Não compreendi.

Sendo sincero, também não compreendi sua duvida, principalmente essa parte:

Como assim, é pra ele parar na hora ou pra ele ir até o fim da intrução, verificar o valor e só então sair?

Me responda o seguinte:
Como você está lendo o valor? Armazena em alguma variável? Você modifica esse valor dentro do while?

Faz o seguinte, posta o código que fica muito mais fácil explicar.

Oi,

Acho que está falando de validação de dados,segue um exemplo,o programa vai repetir enquanto o usuário não digitar um valor válido.


import java.io.*;
class P41
{
	public static void main(String args[])
	{
		DataInputStream d;
		String s;
		int num=-1;
		try
		{
			while(num<0 || num>10)//condição do laço
			{
				System.out.println("Digite um numero de 0 a 10");
				d=new DataInputStream(System.in);
				s=d.readLine();
				num=Integer.parseInt(s);
				 if (num<0 || num>10)
				 System.out.println("Numero invalido \n");
		    }//Fim do while ( while é fechado com a chave}
		}//Fim do try
		catch(IOException e)
 		{
 			System.out.println("Erro na entrada de dados");
 		}
		catch(NumberFormatException e)
		{
			System.out.println("Erro na entrada de dados");
		}
    }//Fim do main
}//Fim do class  

Pessoal, quero parar o while quando o usuário digitar um valor. Como por exemplo -1. E o while para.

Estou no inicio do do estudo do livro do Java como programar. Portanto usa apenas o while.

Obrigado!

[quote=hackum]Pessoal, quero parar o while quando o usuário digitar um valor. Como por exemplo -1. E o while para.

Estou no inicio do do estudo do livro do Java como programar. Portanto usa apenas o while.

Obrigado![/quote]

Então vc quer validar os dados de entrada,outro exemplo…

[code]

import java.io.*;
class P42
{
public static void main(String args[])
{
DataInputStream d;
String opc=“a”;
try
{
while(!opc.equals(“sim”) && !opc.equals(“nao”))
{
System.out.println(“Digite sim ou nao”);
d=new DataInputStream(System.in);
opc=d.readLine();
opc=opc.toLowerCase();
if (!opc.equals(“sim”) && !opc.equals(“nao”))
System.out.println(“Resposta invalida \n”);
}//Fim do while
}//Fim do try
catch(IOException e)
{
System.out.println(“Erro na entrada de dados”);
}
}//Fim do main
}//Fim do class [/code]

Acho que deve estudar lógica de programação… :wink:

Baixe essa apostila,vai ajuda-lo…http://www.guj.com.br/java/230067-qual-linguagem-estudar-/2