Pesquisar aqui

Wednesday, November 20, 2019

C++ - While loop

Quando temos código que queremos que seja executado múltiplas vezes, o que fazemos?
Copiamos e colamos o código várias vezes?

Não. Usamos os loops (ciclos).

O while loop continua a executar o código enquanto uma condição é verdade.

Escrevendo:
Um "while", seguido de um valor lógico (condição) entre ( ) e um bloco de código (código entre { }).
while(true){
//código
}
Este loop é infinito, porque true é sempre true.

A condição é verificada no início de cada ciclo, ou seja, logo no começo, e a seguir do código ser executado.

Exemplo:
int num = 2;

while(num < 4){
    num += 1;
}

  • O inteiro num tem valor 2.
  • Começa o while loop e é logo verificada a condição, neste caso "num < 4". Como num é 2 e 2 é menor que 4, executamos o código.
  • A única coisa que o código faz é incrementar 1 ao valor de num, ficando 3.
  • Volta-se a verificar a condição, e como 3 < 4, executa-se o código novamente, mudando o valor de num para 4.
  • Verifica-se mais uma vez a condição, mas desta vez é falsa, 4 não é menor que 4: Acaba-se o loop.
  • num foi modificado, e continua com valor 4.

Do... while
Este loop é exatamente o mesmo que o while, com uma pequena diferença. O código é executado pelo menos uma vez, e apenas a partir daí passa a ser testada a condição para os próximos ciclos.

Escreve-se com um "do" seguido de um bloco de código. No fim do bloco de código (após o }), "while" seguido da condição, e um ";" para finalizar.
do{
//código
}
while(false);
O código é executado pelo menos uma vez, e verifica-se a condição. Neste caso, o loop para porque false é sempre false.

Tem o mesmo efeito que copiar e colar o código antes do while loop.

Programa exemplo
#include <iostream>
using namespace std;

int main()
{
    int num = 0;
    cout << "Escreve 5!" << endl;
    
    while(num != 5){
        cin >> num;
    }
    
    cout << "Boa!!! Escreveste 5!" << endl;
}
  • O programa começa por dizer ao utilizador para escrever o número 5.
  • Um while loop começa e enquanto num for diferente de 5, pede input do utilizador na variável num.
  • Quando o utilizador escrever 5 em vez de outra coisa, o loop termina e o programa parabeniza-o por escrever 5.
Escrevendo 3 e depois 5:
Escreve 5!
3
5
Boa!!! Escreveste 5!


Referências - 19/11/2019



No comments:

Post a Comment

Comente de forma construtiva...

Note: Only a member of this blog may post a comment.