Algoritmos – Estruturas – Parte 4
- ESTRUTURAS -
Nos algoritmos temos 3 estruturas básica de controle nas quais detalharemos mais adiante. São elas: seqüencial, condicional e de repetição.
Estrutura Seqüencial
Esta estrutura e padrão em toda a forma de algoritmo, como já foi dito, algoritmo é uma seqüência onde o computador irá ler os comando de cima para baixo e da esquerda para a direita. Esta estrutura estará contida nas demais estruturas que iremos estudar. Cronologicamente ficaria da seguinte forma:
Comando-1
Comando-2
Comando-3
.
.
.
Comando-n
Nesta estrutura o comando-3 somente será executado após o comando-2 e o comando-2 após o comando-1 e assim por diante.
Estrutura Condicional
Estrutura também conhecida como de decisão ou seleção, caracterizasse por execução de determinados códigos de programação dependendo da veracidade de uma condição. Esta estrutura se subdivide em outras duas estruturas.
Estrutura Condicional Simples
Neste, a condição ira determinar a execução ou não de um determinado comando. Representaremos as mesmas conforme visto no tópico formas de representação:
Descrição Narrativa: Se fizer sol então vou à praia.
Fluxograma:
Linguagem Algorítmica:
Se tempo = sol então
Vou à praia
Senão
Jogarei cartas
Fim-se
Padronizando novamente para Pascal.
If tempo: = sol then begin;
Vou à praia;
end
Else begin;
Jogarei cartas;
End;
em visual basic não muda muito:
If tempo: = sol then
Vou à praia;
Else
Jogarei cartas;
End if
Estrutura Condicional Composta (case)
Esta estrutura e extremamente utilizada quando necessitasse de utilizar o comando if repetidas vezes, tornando-se assim um comando de alto poder na estruturação de qualquer algoritmo.
Descrição Narrativa: Caso o mês seja igual a 1 então é janeiro, se igual a 2 então é fevereiro, se igual a 3 então é março e assim por diante.
Fluxograma:
Linguagem Algorítmica:
Case mês of
1: mês:= Janeiro;
2: mês:= Fevereiro;
3: mês:= Março;
4: mês:= Abril;
5: mês:= Maio;
6: mês:= Junho;
7: mês:= Julho;
8: mês:= Agosto;
9: mês:= Setembro;
10: mês:= Outubro;
11: mês:= Novembro;
12: mês:= Dezembro;
end;
Estrutura de Repetição
Essa estrutura trabalha com a repetição de comandos até que condições se satisfaçam. Esta estrutura e subdividida em 3 sub-estruturas.
Estrutura de repetição com teste no inicio (comando while-do)
Os comandos contidos neste tipo de estrutura podem não ser executados nenhuma vez, já que o mesmo testa a condição no início da estrutura.
Descrição Narrativa: Enquanto não fizer sol faça; ficarei em casa.
Fluxograma:
Linguagem Algorítmica:
Enquanto tempo <> sol faça
Olhar o tempo
Fim-enquanto
Vou à praia
Padronizando:
While tempo: <> sol do begin;
Olhar o tempo
End;
Vou à praia
Enquanto o tempo for diferente de sol ou seja, não tiver sol, (condição verdadeira) a estrutura ira executar os comandos contidos nela, e este se repetirá até que o tempo seja igual a sol, pois quando o tempo for igual a sol a condição será falsa, somente assim poderemos sair da estrutura de repetição while e executar o comando “Vou à praia”.
Estrutura de repetição com teste no final (comando repeat-unitil)
Permite a repetição dos comandos contidos nesta estrutura até que o mesmo seja verdadeira. Neste tipo de estrutura o comando sempre será executado pelo menos uma vez.
Descrição Narrativa: Ficarei em casa até que faça sol.
Fluxograma:
Linguagem Algorítmica:
Repita
Ficarei em casa
Até que tempo = sol
Padronizando:
Repeat
begin
Ficarei em casa
End;
Until tempo = sol
Estrutura de repetição automática (comando for)
Permite a repetição dos comandos contidos nesta estrutura seja repetida um número específico de vezes.
Descrição Narrativa: Imprima na tela os números de 1 a 100.
Linguagem Algorítmica:
For N := 1 to 100 do
Begin
Writeln (N);
End;
Neste exemplo ao iniciar o comando for a variável N recebera o valor do primeiro número da condição (no caso 1) e será impresso na tela o valor do mesmo, quando esse comando se repetir o N passara a ter o valor de N+1 ou seja 2, e será impresso novamente na tela, isso se repetira até que N seja igual a 100. Temos também no comando for a opção que vai decrescendo N até chegar em um valor igual ao segundo da condição. Exemplo:
For N := 100 dowto 1 do
Begin
Writeln (N);
End;
Conclusão:
Nesta parte do tutorial, mostrei o conceito de estruturas utilizadas para manipulação de dados, ou seja como o programa ira ordenar os dados para obter os resultados esperados. No próximo tópico falaremos sobre array dimensionais e arrays bidimensionais.