Buscar

como funciona o comando whille em c++?

💡 2 Respostas

User badge image

washington souza

"While" - Testa uma condição. Se a condição for verdadeira ele executa o bloco, caso contrário ele sai.. 

"Do... While" - Esse é quase a mesma coisa, mas ele testa a condição no final. Ou seja, o bloco será executado pelo menos uma vez, para depois decidir se será executado novamente ou não. 

Exemplo de "While": 

while ( condição ) 


// Bloco 




Exemplo de "Do... While": 

Do 


// Bloco 

} while ( condição ); 

0
Dislike0
User badge image

RD Resoluções

While executa uma comparação com a variável. Se a comparação for verdadeira, ele executa o bloco de instruções ( { } ) ou apenas a próxima linha de código logo abaixo.

Procedemos da seguinte maneira:

WHILE (comparação)

Veja o exemplo abaixo.

01.#include <iostream>

02.#include <cstdlib>

03.using namespace std;

04. 

05.int main (void){

06.int par=0;

07.cout <<"Os numeros pares de 0 a 100 sao:\n\n";

08.while (par<=100)

09.{

10.cout <<par<<"\t";

11.par+=2; //o mesmo que par=par+2

12.}

13.system ("pause");

14.return 0;

15.}

Neste exemplo serão mostrados os números pares entre 0 e 100.

Algumas precauções

O WHILE muitas vezes pode nos pregar peças. Se prestarmos atenção, no exemplo acima inicializamos a variável parem 0, pois quando usamos no while uma variável sem inicializa-la pode causar comportamentos estranhos. E por que isso acontece? É simples. C/C++ não inicializa variáveis automaticamente em 0, ou seja, se você comparar uma variável não inicializada, essa variável pode ser qualquer coisa, ex.: 1557745, -9524778, 1 ou até mesmo 0.

Outro problema comum com o while é o loop infinito. O WHILE, diferentemente de FOR, não incrementa ou decrementa automaticamente uma variável, isso deve estar expressado dentro do bloco de instruções, como podemos ver na linha par+=2. Caso contrário, par sempre seria zero e nunca chegaria a 100 para o loop parar, causando o loop infinito.

O ideal é utilizar o WHILE em um loop definido pelo usuário, que a partir de uma entrada ele termine. Ou seja, enquanto o usuário não fizer determinada ação, o loop continuará a dar voltas. Como no exemplo abaixo.

01.#include <iostream>

02.#include <cstdlib>

03.using namespace std;

04. 

05.int main (void){

06.int nr=1;

07.while (nr!=0) //enquanto nr for diferente de 0

08.{

09.cout <<"Digite um numero (0 para finalizar): ";

10.cin >> nr;

11.cin.ignore ();

12.if (nr>0)

13.cout <<"Este numero e positivo\n";

14.else

15.cout <<"Este numero e negativo\n";

16.}

17.return 0;

18.}

0
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis


✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta.

User badge image

Outros materiais