Linguagem C
Estruturas de Controlo Repetitivas
1
Ling. C – Estruturas Repetitivas

REVISÃO

Pode escrever-se qualquer programa recorrendo
apenas a 3 formas de controlo da sua execução:
Sequencial (já estudada)
 Condicional (já estudada)
 Repetitiva


Um programa pode ter todas as estruturas de
controlo o número de vezes que forem necessárias.
2
Ling. C – Estruturas Repetitivas

As estruturas de controlo repetitivas permitem
executar um conjunto de instruções
determinado número de vezes.

Podemos ter repetições condicionais ( a
repetição ocorre condicionada a uma condição
lógica) e incondicionais (que têm um número
predefinido de repetições).
3
Ling. C – Estruturas Repetitivas
Condicionais

Existem dois tipos distintos de Repetições
Condicionais
Tipo 1 - Condição testada no início da repetição
 Tipo 2 - Condição testada no final da repetição

4
Ling. C – Estruturas Repetitivas
Condicionais: while

Sintaxe Geral:
while (condição)
{
<bloco de instruções ; >
}

Características:
 Testa a condição antes da execução do bloco de instruções.
 Enquanto a condição for verdadeira, o bloco de instruções
é executado. Assim, o bloco de instruções pode ser
executado 0 ou mais vezes.
 Pára a execução do bloco de instruções quando a condição
se tornar falsa (condição = 0).
5
Ling. C – Condição testada no início
da repetição: while
/* Description: exemplo da aplicação do ciclo (estrutura de controlo) while */
#include<stdio.h>
main()
{
int i;
i=0;
while(i<=10)
{
printf("%d \n", i);
i=i+1;
}
system("pause");
}
6
Ling. C – Condição testada no final
da repetição: do - while

Sintaxe Geral:
do
{
< bloco de instruções ; >
}
while (condição) ;

Características:
 Testa a condição após da execução do bloco de instruções .
 Enquanto a condição for verdadeira, o bloco de instruções
é executado. Assim, o bloco de instruções é executado pelo
menos uma vez.
 Pára a execução do bloco quando a condição se tornar
falsa .
7
Ling. C – Condição testada no final
da repetição: do-while
/* Description: exemplo da aplicação do ciclo (estrutura de controlo) do-while */
#include<stdio.h>
main()
{
int i;
i=0;
do
{
printf("%d\n", i);
i=i+1;
}
while(i<=10);
system("pause");
}
8
Ling. C – Estruturas Repetitivas
Incondicionais: for

Repetição Incondicional - N.º predefinido de
repetições

Sintaxe Geral:
for (varDeControlo=valor_inicial; condição; (in/de)cremento_da_varDeControlo)
{
< bloco de instruções ; >
}
9
Ling. C – Estruturas Repetitivas
Incondicionais: for

Características:
Incrementa ou decrementa a variável de controlo
cada vez que o bloco é executado
 O bloco de instruções é executado enquando a
condição for verdadeira.
 A variável_de_controlo deve ser do tipo primitivo
int.

10
Ling. C – Estruturas Repetitivas
Incondicionais: for
/*
Description: exemplo da aplicação do ciclo (estrutura de controlo) for
*/
#include<stdio.h>
main()
{
int i;
for(i=0; i<=10; i=i+1)
{
printf("%d\n", i);
}
system("pause");
}
11
Ling. C – Incrementos e
decrementos

INCREMENTOS e DECREMENTOS
 Incremento significa aumentar o valor
i=i+1;
j=j+2;

Decremento significa diminuir o valor
i=i-1;
j=j-10;
12
Ling. C – Incrementos e
decrementos

INCREMENTOS e DECREMENTOS de 1 unidade



i=i+1;
i=i-1;
Podem-se usar as seguintes abreviaturas:

i=i+1;



i++;
++i;
i=i-1;


i--;
--i;
13
Ling. C – Incrementos e
decrementos
Se o operador estiver à esquerda da variável ( ++i ) : o valor da variável
será incrementado ou decrementado antes da variável ser usada noutra
operação;
Se o operador estiver à direita da variável ( i++ ) : o valor da variável será
incrementado ou decrementado depois da variável ser usada noutra
operação;
Linguagem C
int a, b, c, i=3;
a=i++;
b=++i;
c=--i;
Traçagem
a: ?
a: 3
a: 3
a: 3
b: ?
b: ?
b: 5
b: 5
c: ?
c: ?
c: ?
c: 4
i: 3
i: 4
i: 5
i: 4
14
Ling. C – Estruturas Repetitivas
Incondicionais
/*
Description: exemplo da aplicação do ciclo (estrutura de controlo) for
*/
#include<stdio.h>
main()
{
int i;
for(i=0; i<=10; i++)
{
printf("%d\n", i);
}
system("pause");
}
15
Download

ppt06