Ciclos WHILE e FOR.
Até agora temos visto como utilizamos alguns comandos simples. Mas, diversas
vezes, ao logo da programação de uma aplicação web, temos de repetir as
mesmas funções diversas vezes. Por exemplo, quando dei o exemplo da lista de
compras do Ze e da Maria, essa lista tinha 4 produtos. Esses 4 produtos fora
escritos utilizando 4 linhas com o comando "echo". Agora imaginamos uma
lista de compras com 100 produtos, e temos uma dor de cabeça! ;)
Nestes casos, não se pensa duas vezes, e pegamos num dos ciclos que podemos
implementar: o While ou o FOR.
Estes dois ciclos são muito identicos, visto que se pode sempre converter um
ciclo WHILE, num ciclo FOR, e vice versa. A decisão de utilizar um ou outro,
é apenas tomada pela pessoa que os implementa, e tem a ver com a
simplicidade com que depois consegue interpretar um ou outro. Existem
situaçõs onde um WHILE aplica-se com mais facilidade, outras em que um FOR
arraza com tudo. =) Ambos serão explicados separadamente.
While!
Quer dizer "Enquanto". A sua sintaxe é a seguinte:
while(condição)
{
//bloco de codigo
}
Ou seja, enquanto a condição se verificar, executa determinado código.
Exemplo de um ciclo WHILE:
$numero=1;
while ($numero<=10)
{
echo "Número: $numero
";
$numero++;
}
?>
Este código inicia a variável $numero com o valor 1. Seguidamente entra
dentro de um ciclo WHILE, que executa um bloco de código, enquanto a variável
$numero for inferior ou igual a 10. No bloco, temos um output que nos vai
indicar qual o valor da variável, e logo a seguir, temos o incremento de
uma unidade da variável $numero. O resultado da execução do script é a
seguinte:
Número: 1
Número: 2
Número: 3
Número: 4
Número: 5
Número: 6
Número: 7
Número: 8
Número: 9
Número: 10
Enquanto a condição tiver o valor VERDADEIRO, o bloco de codigo do While é
executado.
FOR
O ciclo for, tem uma particularidade em relação ao WHILE. Enquanto um While
a variavel de contagem, e a instrução de incremento, quando existem, são
declaradas em pontos diferentes do código, o ciclo FOR junta essas
declarações no mesmo local onde define a condição. Sintaxe de um FOR:
for (declaraçao de variaveis; condição de execução; incrementos de variaveis)
{
//bloco de codigo a executar
}
Na primeira zona declaramos as variaveis (normalmente os contadores ou
indices); na segunda zona indicamos as condiçoes de execuçao do ciclo for:
enquanto essas condiçoes tiverem o valor VERDADEIRO, o ciclo é realizado; na
3 zona, é onde vamos indicar os incrementos das variáveis/contadores.
Utilizando o exemplo do WHILE, vamos construir um FOR:
for ($numero=1; $numero<=10; $numero++)
{
echo "Número: $numero
";
}
?>
O resultado deste ciclo é exactamente igual ao do WHILE. Neste tipo de
ciclo, onde iniciamos uma variável, e incrementamos essa mesma
variável para control do ciclo, o FOR tem vantagem na sua implemetnaçao.
Exercicio 6.1:
Cria um array $meses (usando a funcao "array()") com os nomes dos meses do ano.
Utiliza ambos os ciclos While e FOR (separadamente) para escrever os 12 meses.
Exercicio 6.2:
Com base no Exercicio 3 (p4.txt) usa um ciclo While para escrever os
produtos do Ze, e um FOR para escrever os produtos da Maria. Nota: Deves
respeitar o código de cores dos produtos de ambos os estafetas.
Nota: Este exercicio é de alguma dificuldade. É possível que requeira de algum
tempo e prática, para conseguires implementa-lo correctamente. Se
conseguires completar o exercicio sem qualquer ajuda.. é porque estas a
dominar bem isto! :)
Resumo:
Utilizamos ciclos sempre que temos linhas de código repetidas. Usar um ciclo
WHILE ou FOR depende da situação de implementação, e da forma como achamos
ser mais simples a sua compreensão.
##########################################################################
# Autor: [Dragon] #
# Email: dragon@cidadela.org #
# URL: http://www.cidadela.org #
# Última revisão: 2001/01/16 #
##########################################################################