domingo, 19 de maio de 2013

Loop For

O loop for não é tão flexível quanto o loop while, porém, é o mais popular.
A maioria dos loops tem 4 partes essenciais.

- A configuração:
Envolve declarar e iniciar uma variável increment.

- O teste de expressão:
A expressão que levará o programa a executar o loop ou sair dele. Normalmente acontece entre os parentes.

- O corpo:
O código dentro das chaves.

- O incremento:
É onde a variável é incrementada. Normalmente no final do corpo.

O loop for incorpora as quatro partes em uma única estrutura. Ex.:

for(setup; teste de expressão; incremento)
{
  Corpo;
}

Uma vez que o setup é executado, o controle vai para o teste da expressão.
O teste da expressão sendo verdadeiro, ou true, o controle passa para o corpo de loop for.
Se o teste da expressão passa a ser falso, ou false, o controle passa para a próxima declaração após a chave de fechamento.
Quando o controle tiver passado pelo corpo do loop for, é forçado a executar a seção de incremento do loop. Depois, o controle volta a testar a expressão.

Vamos refazer o programa fatorial utilizando o loop for para exemplificar e fixar.
------------------------------------------------------------------------------------------------------------


#include <cstdio>
#include <cstdlib>
#include <iostream>
using namespace std;

int main(int nNumberofArgs, char* pszArgs[])
{
   
    int nAlvo;
    cout << "Entre com o numero para calcular seu fator: ";
    cin  >> nAlvo;

   
    int nAcumulador = 1;
    for(int nValor = 1; nValor <= nAlvo; nValor++)
    {
        cout << nAcumulador << " * "
             << nValor << " igual ";
        nAcumulador = nAcumulador * nValor;
        cout << nAcumulador << endl;
    }

   
    cout << nAlvo << " O fator e: "
         << nAcumulador << endl;

    system("PAUSE");
    return 0;
}
------------------------------------------------------------------------------------------------------------

Há um operador que não foi mencionado, a virgula (,).
Vamos escrever um programa para ver o operador virgula(,) em ação.  Este programa é apenas ilustrativos, vamos entrar numa prática mais aplicada para o operador virgula(,) quanto chegar os arrays, e eu espero chegar lá ;)

------------------------------------------------------------------------------------------------------------


#include <cstdio>
#include <cstdlib>
#include <iostream>
using namespace std;

int main(int nNumberofArgs, char* pszArgs[])
{
 int nAlvo;
 cout << "Entre com o valor maximo: ";
 cin >> nAlvo;

 for(int nMinuscula = 1, nMaiuscula = nAlvo;
 nMinuscula <= nAlvo; nMinuscula++, nMaiuscula--)
 {
  cout << nMinuscula << " * "
       << nMaiuscula << " e igual "
       << nMinuscula * nMaiuscula << endl;
 }

 system("pause");
 return 0;
}
------------------------------------------------------------------------------------------------------------
Desta vez, nós queremos não apenas incrementar uma variável de 1 até o nAlvo, mas também, decrementar a segunda variável de nAlvo até 1.






Nenhum comentário:

Postar um comentário