18 de mai. de 2009

Aula 05: Instruções Iterativas (Parte I)

Iteração, do latim iteratione é a repetição de uma ou mais ações. Portanto, as estruturas iterativas são estruturas repetitivas. Os comandos mais usados em pseudo-código são:
- Para-Faça. Na linguagem C é o for e no Pascal é o for-to-do.
- Enquanto-faça. Na linguagem C é o while e em Pascal é o while-do.
- Repita-até. Na linguagem Pascal é o repeat-until.
- Faça-enquanto. Na linguagem C é o do-while. Tem a mesma funcionalidade do repita-até, só que no contrário. Veremos as diferenças mais adiante.

Hoje veremos apenas o Para-Faça, sua sintaxe e como usar a estrutura:

PARA-FAÇA
Em Pseudo-código:

para vc <- vi até vf passo nr faça
bloco de comandos;
fim_para;


Em C:

for(vc = vi; vc <= vf; vc = vc + nr) {
bloco de comandos;
}


Onde:
vc - variável de controle
vi - valor inicial, pode ser uma expressão aritmética que resulte em um inteiro.
vf - valor final, até onde queremos repetir; pode ser uma expressão aritmética inteira.
nr - é o incremento ou decremento. Ou seja, o valor que será incrementado ou decrementado à variável de controle, a cada iteração.

No C, temos três áreas distintas, separadas por ponto-e-vírgula. A primeira é a área de inicialização. Só ocorre na primeira iteração. A segunda é a área da condição. O bloco de comandos só será executado, se a condição for verdadeira. Se for falsa, o comando é terminado e é executado os comandos abaixo da chave que fecha o comando, ou após o ponto-e-vírgula (no caso do comando ter apenas uma instrução). A última área é a do incremento/decremento. Ela diz ao comando como será a alteração para mais ou para menos da variável de controle.

Em C, este comando é poderoso. Podemos iniciar quantas variáveis de controle quisermos, basta separa-las por vírgula. Isto serve para as demais áreas de condição e incremento/decremento.

Como ler?
Para vc recebe vi e enquanto vc for menor ou igual a vf e a cada repetição incremente ou decremente nr, faça o bloco de repetições.

Quando usar?
- Quando soubermos o número de repetições.

Exemplo: Escrever um nome dez vezes na tela, numerando as linhas.
Em Pseudo-código:

Algoritmo repeticao1;
variáveis
nome : literal; //cadeia de caracteres
i : inteiro;
Início
Escreva("Digite seu nome: ");
Leia(nome);

Para i <- 1 até 10 passo 1 faça
Escreva(i, " - ", nome);
Fim_para;
Fim.


Em C:

#include "stdio.h"
#include "string.h"
int main() {
char nome[20];
int i;

puts("Digite seu nome: ");
gets(nome);

for(1 = 1; i <= 10, i++) {
printf("%d - %s\n", i, nome);
}

getchar();
return 0;
}


Resultado esperado:

Digite seu nome:
Victor

1 - Victor
2 - Victor
3 - Victor
4 - Victor
5 - Victor
6 - Victor
7 - Victor
8 - Victor
9 - Victor
10 - Victor


Na próxima aula veremos como usar a estrutura enquanto-faça.

Retornar ao índice do curso.
Avançar à próxima aula.

Nenhum comentário: