for

Descrição

O comando for [e usado para repetir um bloco de código envolvido por chaves. Um contador de incremento é geralmente utilizado para terminar o loop. O comando for é útil para qualquer operação repetitiva, e é usado frequentemente com vetores para operar em coleções de dados ou pinos.

Sintaxe

for (inicialização; condição; incremento) { //comando(s); }

A inicialização ocorre primeiro e apenas uma vez. A cada repetição do loop, a condição é testada; se é verdadeira (true), o bloco de comandos, e o incremento são executados. Quando a condição se torna falsa (false), o loop termina.

Código de Exemplo

// Varia o brilho de um LED usando um pino PWM int pinoPWM = 10; // LED em série com um resistor de 470 ohm no pino 10 void setup() { // setup não necessário } void loop() { for (int i = 0; i <= 255; i++) { analogWrite(pinoPWM, i); delay(10); } }

※ Notas e Advertências:

O loop for na linguagem C++ é muito mais flexível que os loops for encontrados em outras linguagens. Quaisquer dos três elementos da sintaxe podem ser omitidos, porém os ponto e vírgula (';') são necessários. Além disso, os comandos para inicialização, condição e incremento podem ser quaisquer comandos válidos na linguagem C++, mesmo com variáveis não relacionadas ao loop, e podem usar quaisquer tipos de dados da linguagem, incluindo floats. Esses tipos de comandos for incomuns podem prover soluções rápidas para alguns problemas raros de programação.

Por exemplo, usar uma multiplicação no comando de incremento irá gerar uma progressão logarítmica:

for (int x = 2; x < 100; x = x * 1.5) { println(x); }

Gera: 2,3,4,6,9,13,19,28,42,63,94.

Outro exemplo, Aplica um efeito de fading crescente e decrescente em um LED com apenas um loop for:

void loop() { int x = 1; for (int i = 0; i > -1; i = i + x) { analogWrite(pinoPWM, i); if (i == 255) { x = -1; // muda a direção no pico } delay(10); } }

Ver Também

Please note: These are affiliate links. If you buy the components through these links, We may get a commission at no extra cost to you. We appreciate it.