Vous êtes sur la page 1sur 17

ALGORITMOS

Prof.: Alessandro J.de Souza

Quarta Aula Terica

Controle de Fluxo de Execuo

Comandos Compostos
Estrutura seqencial
Estruturas de Deciso
Estruturas de Repetio
Aninhamentos

Algoritmo e lgica de Programao

Controle de Fluxo de Execuo

Comandos Compostos

Um comando composto um conjunto de zero ou mais


comandos (ou instrues) simples, como atribuies e
instrues primitivas de entrada ou sada de dados, ou
alguma das construes apresentadas neste captulo.

Algoritmo e lgica de Programao

Controle de Fluxo de Execuo

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.
Em termos de fluxogramas, a estrutura
seqencial caracterizada por um nico
fluxo de execuo (um nico caminho
orientado) no diagrama.

<comando 1>

<comando 2>

<comando 3>

Algoritmo e lgica de Programao

Controle de Fluxo de Execuo

Estruturas de Deciso (Tipo


Se)
Se <condio>
Ento
<comando_composto_1>
Seno
<comando_composto_2>
Fim_se

.V.

<comando_
composto_1>

Algoritmo e lgica de Programao

<condio>

.F.

<comando_
composto_2>

Controle de Fluxo de Execuo

Caso particular do SE

Pseudocdigo
Se <condio>
Ento
<comando_composto_1>
Fim_se

.V.

<condio>

<comando_
composto_1>

Algoritmo e lgica de Programao

.F.

Controle de Fluxo de Execuo

Estruturas de Deciso do
Tipo Escolha

Na estrutura de deciso do
tipo Escolha pode haver uma
ou mais condies a serem
testadas e um comando
composto diferente associado
a cada uma destas.

<condio_1>

.V.

<comando_composto_1>

.V.

<comando_composto_2>

.V.

<comando_composto_n>

.F.

<condio_2>

.F.

<condio_n>

.F.

<comando_composto_s>

Algoritmo e lgica de Programao

Controle de Fluxo de Execuo

Estruturas de Deciso do Tipo Escolha

Pseudocdigo
Escolha
Caso <condio_1>
<comando_composto_1>
Caso <condio_2>
<comando_composto_2>
Caso <condio_n>
<comando_composto_n>
Seno
<comando_composto_s>
Fim_escolha

Algoritmo e lgica de Programao

Controle de Fluxo de Execuo


Algoritmo Exemplo_Escolha
VarSALARIO, SAL_REAJ : real
PROF : literal[20]
Incio
Leia SALARIO, PROF
Escolha
Caso PROF = Tcnico
SAL_REAJ 1.5 * SALARIO
Caso PROF = Gerente
SAL_REAJ 1.3 * SALARIO
Seno
SAL_REAJ 1.1 * SALARIO
Fim_escolha
Escreva Salrio Reajustado = , SAL_REAJ
Fim.

Incio

SALARIO, PROF

PROF =
"Tcnico"

.V.

SAL_REAJ aaa 1.5 * SALARIO

.V.

SAL_REAJ aaa 1.3 * SALARIO

.F.

PROF =
"Gerente"

.F.

SAL_REAJ aaa 1.1 * SALARIO

"Salrio Reajustado = ",


SAL_REAJ

Fim

Algoritmo e lgica de Programao

Controle de Fluxo de Execuo

Estruturas de Repetio

As estruturas de repetio so muitas vezes chamadas de


Laos ou, tambm, de Loops.
A classificao das estruturas de repetio feita de
acordo com o conhecimento prvio do nmero de vezes
que o conjunto de comandos ser executado. Assim, os
laos dividem-se em:

laos contados
laos condicionais

Algoritmo e lgica de Programao

10

Controle de Fluxo de Execuo

Laos Contados: quando se conhece previamente quantas vezes o comando


composto no interior da construo ser executado

Pseudocdigo

Para <var> de <incio> at <final> incr de <inc> faa


<comando_composto>
Fim_para

<var> = <nicio>
<fim> <inc>

<comando_
composto>

Algoritmo e lgica de Programao

11

Controle de Fluxo de Execuo


Incio

Exemplo Para

Escreva um algoritmo para calcular a soma de dez nmeros


quaisquer fornecidos pelo usurio.

Algoritmo Soma_10
Var SOMA, NUM: real
CONT : inteiro
Incio
SOMA 0
Escreva Algoritmo para somar 10 nmeros
Para CONT de 1 at 10 faa
Escreva Nmero:
Leia NUM
SOMA SOMA + NUM
Fim_para
Escreva Soma = , SOMA
Fim.

Algoritmo e lgica de Programao

SOMA aaa 0

"Algoritmo para somar


10 nmeros"

CONT = 1, 10, 1

"Nmero: "

"Soma = ", SOMA

Fim

NUM

SOMA aaa
SOMA + NUM

12

Controle de Fluxo de Execuo

Laos Condicionais: so aqueles cujo conjunto de comandos em seu interior executado


at que uma determinada condio seja satisfeita. Ao contrrio do que acontece nos laos
contados, nos laos condicionais no se sabe de antemo quantas vezes o corpo do lao
ser executado.

Lao Condicional Enquanto


Pseudocdigo

<condio>

Enquanto <condio> faa


<comando_composto>
Fim_enquanto

.F.

.V.

<comando_
composto>
Algoritmo e lgica de Programao

13

Controle de Fluxo de Execuo

Exemplo Enquanto

Uma empresa decide dar um aumento de 30% aos funcionrios cujo salrio inferior a
R$ 5.000. Escreva um algoritmo que possa ser utilizado para efetuar o clculo do salrio
de um numero indeterminado de funcionrios.
Algoritmo Reajuste_3_Enquanto
Var SALARIO, SAL_REAJ : real
Incio
Escreva Algoritmo para clculo de reajuste
Escreva Salrio =
Leia SALARIO
Enquanto SALARIO > 0 faa
Se SALARIO < 5000 Ento
SAL_REAJ 1.3 * SALARIO
Escreva Salrio Reajustado = , SAL_REAJ
Fim_se
Escreva Salrio =
Leia SALARIO
Fim_enquanto

Fim.
Algoritmo e lgica de Programao

14

Controle de Fluxo de Execuo

Lao Condicional - Repita

Pseudocdigo

Repita
<comando_composto>
At que <condio>

<comando_
composto>

.F.

<condio>

.V.

Algoritmo e lgica de Programao

15

Controle de Fluxo de Execuo

Exemplo Repita

Uma empresa decide dar um aumento de 30% aos funcionrios cujo salrio inferior a
R$ 5.000. Escreva um algoritmo que possa ser utilizado para efetuar o clculo do salrio
de um numero indeterminado de funcionrios.
Algoritmo Reajuste_3_Repita
Var SALARIO, SAL_REAJ : real
Incio
Escreva Algoritmo para clculo de reajuste
Repita
Escreva Salrio =
Leia SALARIO
Se (SALARIO > 0) .E. (SALARIO < 5000) Ento
SAL_REAJ 1.3 * SALARIO
Escreva Salrio Reajustado = , SAL_REAJ
Fim_se
At que SALARIO <= 0
Fim.

Algoritmo e lgica de Programao

16

Controle de Fluxo de Execuo

Sntese

As estruturas de controle do fluxo de execuo so essenciais para que se possa alterar a


seqncia de execuo dos comandos de um programa em funo dos dados do mesmo.
Um comando composto um conjunto de zero ou mais comandos simples, sejam eles instrues
primitivas ou construes como as estudadas neste captulo.
Uma estrutura seqencial aquela em que os comandos vo sendo executados numa seqncia
pr-estabelecida, um aps o outro.
As estruturas de deciso permitem escolher qual o caminho a ser seguido num algoritmo em
funo de uma ou mais condies. A construo Se utiliza apenas uma condio, ao passo que a
construo Escolha utiliza uma ou mais condies.
As estruturas de repetio so usadas quando se deseja repetir um trecho de um algoritmo
(comando composto). Quando o nmero de vezes que o trecho ser repetido conhecido diz-se que
o lao do tipo contado (construo Para). Quando este nmero no conhecido, mas funo de
uma determinada condio, ento tm-se os laos condicionais (construo Enquanto e Repita).
As construes Repita e Enquanto diferem uma da outra pelo fato de a primeira efetuar o teste da
condio no final da construo e, portanto, executar o comando composto ao menos uma vez. Por
outro lado, a construo Enquanto efetua o teste da condio em seu incio e executa o comando
composto zero ou mais vezes.

Algoritmo e lgica de Programao

17