Vous êtes sur la page 1sur 4

ALGORITMOS

Parte 03

1. BLOCOS DE COMANDOS (comando composto)


Blocos de comando so grupos de comandos que devem ser tratados como uma unidade lgica. O incio
de um bloco em Pascal marcado pela palavra BEGIN e o trmino por END. O bloco de comando serve para
criar um grupo de comandos que devem ser executados juntos. Normalmente usa-se bloco de comandos quando
se usa comandos de teste em que deve-se escolher entre executar dois blocos de comandos. Um bloco de
comandos pode ser utilizado em qualquer trecho de programa.
2. ESTRUTURAS DE CONTROLE DO FLUXO DE EXECUO
Qualquer conjunto de dados fornecido a um algoritmo ser submetido ao mesmo conjunto de instrues,
executadas sempre na mesma seqncia.
No entanto, na prtica muitas vezes necessrio executar aes diversas em funo dos dados fornecidos
ao algoritmo. Em outras palavras, dependendo do conjunto de dados de entrada do algoritmo, deve-se executar
um conjunto diferente de instrues. Alm disso, pode ser necessrio executar um mesmo conjunto de instrues
um nmero repetido de vezes. Em resumo necessrio controlar o fluxo de execuo das instrues (a seqncia
em que as instrues so executadas num algoritmo) em funo dos dados fornecidos como entrada do mesmo.
De acordo com o modo como o controle do fluxo de instrues de um algoritmo feito, as estruturas
bsicas de controle so classificadas em:
Estruturas seqenciais
Estruturas de deciso
Estruturas de repetio
3. ESTRUTURA SEQENCIAL
Na estrutura seqencial os comandos de um algoritmo so executados numa seqncia pr-estabelecida.
Cada comando executado somente aps o trmino do comando anterior.
Uma estrutura seqencial delimitada pelas palavras-reservadas Incio e Fim e contm basicamente
comandos de atribuio, comandos de entrada e comandos de sada.
Um algoritmo puramente seqencial aquele cuja execuo efetuada em ordem ascendente dos nmeros
que identificam cada passo. A passagem de um passo ao seguinte natural e automtica, e cada passo executado
uma nica vez.
4. ESTRUTURAS DE DECISO
Neste tipo de estrutura o fluxo de instrues a ser seguido escolhido em funo do resultado da
avaliao de uma ou mais condies. Uma condio uma expresso lgica.
A classificao das estruturas de deciso feita de acordo com o nmero de condies que devem ser
testadas para que se decida qual o caminho a ser seguido. Segundo esta classificao, tm-se 3 tipos de estruturas
de deciso:
Estrutura de Deciso Simples (Se ... ento)
Estrutura de Deciso Composta (Se ... ento ... seno)
Estrutura de Deciso Mltipla do Tipo Escolha (Caso ... Seno)
Os algoritmos puramente seqenciais podem ser usados na soluo de um grande nmero de problemas,
porm existem problemas que exigem o uso de alternativas de acordo com as entradas do mesmo.
Nestes algoritmos, as situaes so resolvidas atravs de passos cuja execuo subordinada a uma
condio. Assim, o algoritmo conter passos que so executados somente se determinadas condies forem
observadas.
4.1. Estruturas de Deciso Simples
Nesta estrutura uma nica condio (expresso lgica) avaliada. Dependendo do resultado desta
avaliao, um comando ou conjunto de comandos sero executados (se a avaliao for verdadeira) ou no sero
executados (se a avaliao for falsa), no retornando nenhum valor ou expresso.
H duas sintaxes possveis para a estrutura de deciso simples:
Sintaxe

SE <condio> ENTO
<comando_nico>
SE <condio> ENTO
INCIO
<comando_composto>
FIM

Exemplo
SE X>10 ENTO
Escreva (X maior que 10);
SE X>10 ENTO
INCIO
cont := cont + 1;
Escreva (X maior que 10);
FIM_SE

A semntica desta construo a seguinte: a condio avaliada.


Se o resultado for verdadeiro, ento o comando_nico ou o conjunto de comandos
(comando_composto) delimitados pelas palavras-reservadas incio e fim sero executados. Ao trmino de sua
execuo o fluxo do algoritmo prossegue pela instruo seguinte construo, ou seja, o primeiro comando aps
o comando_nico ou a palavra-reservada fim.
No caso da condio ser falsa, o fluxo do algoritmo prossegue pela instruo seguinte construo, ou
seja, o primeiro comando aps o comando_nico ou a palavra-reservada fim, sem executar o comando_nico
ou o conjunto de comandos (comando_composto) entre as palavras-reservadas incio e fim.
4.2. Estruturas de Deciso Composta
Se uma condio for verdadeira, executa uma seqncia de comandos, seno executa outra seqncia
de comandos.
H duas sintaxes possveis para a estrutura de deciso simples:
Sintaxe
SE <condio> ENTO
<comando_nico_1>
SENO
<comando_nico_2>
SE <condio> ENTO
INCIO
<comando_composto_1>
FIM
SENO
INCIO
<comando_composto_2>
FIM

Exemplo
SE X>100 ENTO
Escreva (X maior que 100);
SENO
Escreva (X no maior que 100 );
SE X > 100 ENTO
INCIO
X := X + 1;
Escreva (X maior que 100);
FIM
SENO
INCIO
X:= X + 1;
Escreva (X maior que 100);
FIM

A semntica desta construo a seguinte: a condio avaliada:


Se o resultado for verdadeiro, ento o comando_nico_1 ou o conjunto de comandos
(comando_composto_1) delimitados pelas palavras-reservadas incio e fim sero executados. Ao trmino de sua
execuo o fluxo do algoritmo prossegue pela instruo seguinte construo, ou seja, o primeiro comando aps
o comando_nico_2 ou a palavra-reservada fim do comando_composto_2.
Nos casos em que a condio avaliada como falsa, o comando_nico_2 ou o conjunto de comandos
(comando_composto_2) delimitados pelas palavras-reservadas incio e fim sero executados. Ao trmino de sua
execuo o fluxo do algoritmo prossegue pela instruo seguinte construo, ou seja, o primeiro comando aps
o comando_nico_2 ou a palavra-reservada fim do comando_composto_2
4.3. Estruturas de Deciso com SEs Aninhados ou Encadeados
Se uma condio for verdadeira, executa uma seqncia de comandos, seno testada uma segunda
condio, se for verdadeira, executa uma outra seqncia de comandos, seno, testada uma terceira condio e
assim sucessivamente at chegar a ltima instruo disponvel para a realizao do devido teste
As estruturas aninhadas ou encadeadas tem a vantagem de tornar o algoritmo mais rpido, pois so
efetuados menos testes e menos comparaes, o que resulta num menor nmero de passos para chegar ao final do
mesmo.
A sintaxe para este tipo de estrutura a seguinte:
Sintaxe
SE <condio> ENTO

SE < condio2> ENTO


< comando_nico>
SENO
<comando_nico>
FIM_SE
SENO
< comando_nico>
FIM_SE

Exemplo
Se X > 10 ento
Escreva (X maior que 10);
Seno
Se X=10 ento
Escreva (X igual a 10);
Seno
Escreva (X maior que 10);
Fim_se
Fim_se

4.4. Estrutura de Deciso Mltipla do Tipo Escolha


Este tipo de estrutura uma generalizao da construo Se, onde somente uma condio era avaliada e
dois caminhos podiam ser seguidos. Na estrutura de deciso do tipo Caso pode haver uma ou mais condies a
serem testadas e um comando diferente associado a cada uma destas.
A sintaxe para este tipo de estrutura a seguinte:
Sintaxe
CASO <varivel>

SEJA <condio_1> FAA


<comando_composto_1>
SEJA <condio_2> FAA
<comando_composto_2>
...
SEJA <condio_n> FAA
comando_composto_n>
SENO
<comando_composto_s>
FIM

Exemplo
Caso prof
Seja Tcnico faa
salrio:= 800
Seja Gerente faa
salrio:= 1000
Seno
salrio:= 500
Fim

Seu funcionamento o seguinte: ao entrar-se numa construo do tipo Caso, a condio_1 testada com
a varivel: se for verdadeira, o comando_composto_1 executado e aps seu trmino, o fluxo de execuo
prossegue pela primeira instruo aps o final da construo (fim); se a condio_1 for falsa, a condio_2
testada: se esta for verdadeira, o comando_composto_2 executado e ao seu trmino, a execuo prossegue
normalmente pela instruo seguinte ao final da construo (fim). O mesmo raciocnio estendido a todas as
condies da construo. No caso em que todas as condies so avaliadas como falsas, o
comando_composto_s (correspondente ao Seno da construo) executado.
Um caso particular desta construo aquele em que o comando_composto_s no contm nenhuma
instruo. Isto ocorre nas situaes que no se deseja efetuar nenhuma ao quando todas as condies so falsas.
Assim, pode-se dispensar o uso do Seno na construo Caso.

Exerccios
1. Desenvolva um algoritmo que leia um valor de hora (uma varivel para a hora e outra para minuto) e informe
quantos minutos se passaram desde o incio do dia.
2. Crie um algoritmo para ler dois valores numricos e apresentar a diferena do maior pelo maior.
3. Efetuar a leitura de quatro nmeros inteiros e apresentar os nmeros que so divisveis por 2 e 3
simultaneamente.
.

Vous aimerez peut-être aussi