Cláudio Barbosa

Propaganda
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Estrutura de repetição com for
Sintaxe
for (inicialização; condição; incremento)
{
comando1;
comando2;
}
A inicialização atribui um valor inicial à variável de controle do laço;
Os comandos 1 e 2 serão executados até que a condição se torne falsa. Nesse
caso, a execução continua no primeiro comando após o laço;
O modo como a variável de controle cresce é definido em incremento.
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Estrutura de repetição com for
Exemplo
Resultado
<?php
2x1=2
2x2=4
2x3=6
2x4=8
2 x 5 = 10
for ($x = 1; $x <= 5; $x++)
{
$res = $x * 2;
echo "2 x $x = $res<br>";
}
/* No fim do laço, x é incrementado de
acordo com o definido. */
/* A tag <br> serve para inserir uma
quebra de linha no documento HTML. */
?>
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Estrutura de repetição com while
Sintaxe
while (condição)
{
comando1;
comando2;
}
Os comandos 1 e 2 serão executados até que a condição se torne falsa. Nesse
caso, a execução continua no primeiro comando após o laço;
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Estrutura de repetição com while
Exemplo
Resultado
<?php
5x1=5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50
$x = 1;
while ($x <= 10)
{
$res = $x * 5;
echo "5 x $x = $res<br>";
$x++;
}
?>
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Estrutura de repetição com do...while
Sintaxe
do
{
comando1;
comando2;
}
while (condição);
Os comandos 1 e 2 serão executados até que a condição se torne falsa. Nesse
caso, a execução continua no primeiro comando após o laço;
A primeira iteração sempre ocorrerá. As demais dependem da condição.
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Estrutura de repetição com do...while
Exemplo
Resultado
<?php
9x1=9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81
9 x 10 = 90
$x = 1;
do
{
$res = $x * 9;
echo "9 x $x = $res<br>";
$x++;
}
while ($x <= 10);
?>
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Exercícios propostos
1) Criar um script em PHP capaz de verificar se um número lido (GET) é primo ou
não.
2) Criar um script em PHP para mostrar 20 números da sequência de Fibonacci (0,
1, 1, 2, 3, 5, 8, 13,...).
3) Criar um script em PHP para ler 2 números (GET) e mostrar todos os números
pares entre eles (inclusive). Os números devem ser mostrados em ordem
decrescente.
4) Criar um script em PHP para mostrar o fatorial de um número lido (GET). O
cálculo do fatorial é feito da seguinte forma: n! = 1 x ... x n-1 x n
Exemplo: 5! = 1 x 2 x 3 x 4 x 5 = 120
O fatorial de 0 é 1.
Mostrar mensagem de erro para números lidos que sejam menores que 0.
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Exercícios propostos – Solução do exercício 1
Código-fonte
Resultado (sendo num = 19)
<?php
O número 19 é primo!
$x = $_GET['num'];
$soma = 0;
// Verifica quantidade de divisores de $x
for ($cont = 1; $cont <= $x; $cont++)
{
if (($x % $cont)==0)
{
$soma++;
}
}
/* O número primo tem no máximo dois
divisores */
if ($soma <= 2)
{
echo "O número $x é primo!";
}
else
{
echo "O número $x não é primo!";
}
?>
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Exercícios propostos – Solução do exercício 2
Código-fonte
Resultado
<?php
0
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
/* Inicializa variáveis com os primeiros
valores da sequência Fibonacci */
$a = 0;
$b = 1;
$cont = 1;
while ($cont <= 10)
{
/* Mostra valores na tela */
echo $a."<br>".$b."<br>";
/* Define novos valores a partir dos
dois anteriores */
$a = $a + $b;
$b = $a + $b;
}
?>
$cont++;
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Exercícios propostos – Solução do exercício 3
Código-fonte
Resultado (sendo num1 = 3 e num2= 19)
<?php
18
16
14
12
10
8
6
4
/* Lê valores através do GET */
$maior = $_GET['num1'];
$menor = $_GET['num2'];
/* Garante que $maior terá o maior valor */
if ($menor > $maior)
{
$temp = $maior;
$maior = $menor;
$menor = $temp;
}
/* Encontra e mostra os pares */
do
{
if (($maior % 2) == 0)
{
echo $maior."<br>";
}
$maior--;
}
while($maior >= $menor);
?>
Cláudio Barbosa
[email protected]
mar/2012
PHP – Estruturas de repetição
Exercícios propostos – Solução do exercício 4
Código-fonte
Resultado (sendo num = 6)
<?php
O fatorial de 6 é 720.
/* Lê número através do GET */
$x = $_GET['num'];
/* Exibe mensagem de erro para números
negativos */
if ($x < 0)
{
echo "Número inválido!";
}
else
{
/* Inicializa acumulador com elemento
neutro da multiplicação */
$fatorial = 1;
}
?>
/* Acumula produtos de $x até 1 */
for ($cont = $x; $cont >= 1; $cont--)
{
$fatorial = $fatorial * $cont;
}
echo "O fatorial de $x é $fatorial.";
Cláudio Barbosa
[email protected]
mar/2012
Download