DSOFT
Amintas
engenharia
DSOFT
Unidade 3
Algoritmos Estruturados
DSOFT
Algoritmos Estruturados
Ementa desta Unidade:
3.1 – Conceitos de Algoritmos
3.2 – Tipos de variáveis;
3.3 – Estruturas Condicionais;
3.4 – Estruturas de repetição;
3.5 – Construção de algoritmos;
DSOFT
Algoritmos Estruturados
3.1 – Conceitos de Algoritmos
A palavra algoritmo deriva do nome do
matemático árabe Mohammed ibu-Musa alKhowarizm (≈800d.C.).
Algoritmo é a descrição de um padrão de
comportamento, expresso em termos de um
repertório bem definido e finito de ações
“primitivas”, das quais damos por certo que
podem ser executadas.
DSOFT
Algoritmos Estruturados
Exemplo: Digamos que uma dona de casa irá
dar ordens para sua empregada descascar
batatas. A dona de casa passará o seguinte
algoritmo para descascar batatas:
“Traga a cesta de batatas do porão”
“Traga a panela do armário”
“Descasque as batatas”
“Devolva a cesta ao porão”
DSOFT
Algoritmos Estruturados
Características de um algoritmo:
Utiliza comandos simples, que não levam a
dupla interpretação.
É detalhado o suficiente para que qualquer
pessoa o siga sem dificuldade.
É determinístico, ou seja, dadas as mesmas
condições de entrada, o algoritmo irá
produzir a mesma resposta.
DSOFT
Algoritmos Estruturados
Estrutura de um algoritmo:
Para construirmos um algoritmo, iremos
utilizar o Português Estruturado (também
chamado de Portugol).
A primeira estrutura de todo algoritmo é:
Algoritmo <NomeDoAlgoritmo>
E a última linha de todo algoritmo é:
Fim Algoritmo
DSOFT
Algoritmos Estruturados
Logo abaixo da primeira linha do algoritmo,
devemos esclarecer de forma sucinta o
objetivo do algoritmo com um texto entre
chaves:
{Objetivo: <Objetivo do Algoritmo>}
Devemos identificar também os parâmetros
de entrada do algoritmo, que é o conjunto de
valores que ele espera para poder ser
executado com sucesso:
Parâmetros de entrada <lista de variáveis>
DSOFT
Algoritmos Estruturados
Finalmente, o último passo antes de passar
para a construção do algoritmo é identificar
os parâmetros de saída, que é o conjunto de
valores entregue pelo algoritmo ao final da
sua execução:
Parâmetros de saída <lista de variáveis>
Algoritmos Estruturados
DSOFT
Exemplo da estrutura do algoritmo:
Algoritmo Exemplo
{Objetivo: Mostrar a estrutura de um
algoritmo}
Parâmetros de entrada a, b, c
Parâmetros de saída x, y
...
Fim Algoritmo
DSOFT
Algoritmos Estruturados
3.2 – Tipos de variáveis
3.2.1 - Variáveis
Dentro de um algoritmo, variáveis
correspondem a posições de memória do
computador,
onde
fica
armazenado
determinado valor. As variáveis são
representadas por identificadores que são
cadeias de caracteres alfanumérico.
Matrizes e vetores podem ser representados
pelos seus elementos através de índices, tais
como vetor[i] e matriz[i,j].
DSOFT
Algoritmos Estruturados
Trabalharemos neste curso com somente 4
tipos de variáveis (as linguagens de
programação possuem conjuntos enormes de
tipos de variáveis, mas podemos dizer que
todos são derivados destas quatro primitivas):
-Inteiro: Representa os números inteiros;
-Real: Qualquer número real (com vírgula);
-Caracter: Variáveis que recebem caracteres
(letras e números).
-Lógico: Recebe valores Falso e Verdadeiro.
DSOFT
Algoritmos Estruturados
Podemos imaginar que variável é o nome de
um local onde será armazenado qualquer
valor do conjunto de valores suportado pelo
seu tipo.
Soma
Valor
5,452
Toda variável deve ser declarada no
algoritmo antes de ser utilizada com o
seguinte comando:
<Tipo da Variável>: <NomeA>, <NomeB>;
DSOFT
Algoritmos Estruturados
3.2.2 - Comandos básicos:
Atribuição: Agora que já sabemos como
declarar as variáveis que serão usadas em
nossos algoritmos, podemos inserir valores
nelas com o seguinte comando:
<NomeDaVariável> ← <expressão>;
Onde a expressão pode ser somente um valor
ou uma expressão matemática que utiliza
outros valores e variáveis.
DSOFT
Algoritmos Estruturados
Expressões aritméticas:
Para
representarmos
as
expressões
aritméticas, utilizamos a notação matemática
já conhecida, dada na seguinte tabela:
Função
Descrição
Função
Descrição
+
Soma
-
Subtração
*
Multiplicação
/
Divisão
^
Expoente
Log10
Logaritmo decimal
Loge
Logaritmo natural
Raiz2
Raiz Quadrada
Abs
Valor absoluto
quociente
Divisão inteira
Arredonda
Arredonda para inteiro
Sinal
1 se >0; 0 se =0; -1 se <0
Max
Maior valor
Resto
Resto da divisão
Min
Menor valor
Trunca
Corta casas decimais
DSOFT
Algoritmos Estruturados
Expressões Lógicas:
São expressões cujos resultados são sempre
lógicos (Verdadeiro ou Falso), não
dependendo do tipo das variáveis ou
expressões utilizadas. Existem operadores
relacionais e operadores lógicos.
Os operadores relacionais fazem a
comparação entre valores não lógicos,
retornando um valor lógico e são mostrados
na tabela a seguir:
Algoritmos Estruturados
DSOFT
Operador
Descrição
Operador
Descrição
<
Menor
≤
Menor ou igual
>
Maior
≥
Maior ou igual
=
Igual
≠
Diferente
Os operadores lógicos, por outro lado,
permitem a combinação de relações cujos
resultados sejam lógicos e são:
Operador
Descrição
e
Conjunção
ou
Disjunção
não
Negação
DSOFT
Algoritmos Estruturados
As tabelas abaixo mostram os resultados
lógicos para os operadores lógicos.
e
ou
não a
V F
V F
V
V F
V
V V
F
F
F
V F
F
a
V F
F
V
DSOFT
Algoritmos Estruturados
3.2.3 – Comandos de entrada e saída
Apesar dos parâmetros de entrada e saída
serem especificados logo no início do algoritmo, devemos ler e escrever estes parâmetros
no algoritmo para podermos utilizá-los.
O comando para leitura de um ou mais
parâmetros é o:
Leia <lista de variáveis>
Onde a lista de variáveis pode conter
qualquer parâmetro de entrada.
DSOFT
Algoritmos Estruturados
Quando o algoritmo termina, ele deve exibir
os valores calculados, que estarão
armazenados nas variáveis dos parâmetros de
saída. Para isso, devemos utilizar o comando:
Escreva <lista de variáveis>
Onde a lista de variáveis contém as variáveis
dos parâmetros de saída especificados.
DSOFT
Algoritmos Estruturados
3.3 - Estruturas Condicionais
O uso de uma estrutura condicional torna
possível a escolha dos comandos a serem
executados quando uma certa condição é
satisfeita ou não. Esta estrutura permite o
controle de qual código será executado.
As estruturas condicionais podem ser simples
ou compostas.
DSOFT
Algoritmos Estruturados
3.3.1 – Estrutura Condicional Simples:
Esta estrutura é utilizada quando temos que
decidir pela execução de um trecho do
algoritmo e possui a forma:
Se <condição lógica> então
<comandos>
Fim se
Nesta estrutura, o trecho <comandos> só
será executado se a <condição lógica> for
verdadeira.
DSOFT
Algoritmos Estruturados
3.3.2 – Estrutura condicional composta:
Esta estrutura é utilizada quando temos que
decidir qual de dois caminhos seguir dentro
do algoritmo (somente um dos trechos é
executado).
Se <condição lógica> então
<comandos 1>
Senão
<comandos 2>
Fim se
DSOFT
Algoritmos Estruturados
3.4 – Estruturas de repetição
Em cálculo numérico, muitas vezes devemos
repetir um trecho do algoritmo diversas vezes,
até que seja atendida uma condição
específica.
Nestes casos, utilizamos as estruturas de
repetição, que podem ter número definido ou
indefinido de repetições.
DSOFT
Algoritmos Estruturados
3.4.1 – Número indefinido de repetições:
Nesta estrutura, não temos idéia do número
de vezes que o trecho do algoritmo deverá ser
executado. Temos então uma estrutura que irá
repetir o trecho do algoritmo até que seja
satisfeita uma condição de parada.
Esta estrutura é mostrada a seguir:
DSOFT
Algoritmos Estruturados
Repita
<comandos 1>
se <condição lógica> então
interrompa
fim se
<comandos 2>
Fim repita
<comandos 3>
DSOFT
Algoritmos Estruturados
Na estrutura mostrada, o trecho <comandos
1> é executado e então verifica-se a condição
lógica. Se ela for verdadeira, é executado o
comando interrompa, que transfere a
execução do algoritmo para o trecho
<comandos 3>. Se a condição lógica for
falsa, o trecho <comandos 2> é executado e
em seguida é executado novamente o trecho
<comandos 1>. Esta sequência só é quebrada
quando a condição lógica for verdadeira.
DSOFT
Algoritmos Estruturados
3.4.2 – Número definido de repetições
Quando o número de repetições a ser
executado é conhecido, usamos a seguinte
estrutura:
Para <controle>←<valor inicial> até
<valor final> passo <delta> faça
<comandos>
Fim para
DSOFT
Algoritmos Estruturados
Nesta estrutura, uma variável de controle é
utilizada para contar as repetições de valor
inicial até valor final, com uma diferença
entre valores igual ao passo. Depois de
atingido o valor final, a execução do
algoritmo continua com os comandos após o
“fim para”.
DSOFT
Algoritmos Estruturados
3.5 – Construção de algoritmos
Com as definições passadas, podemos agora
construir algoritmos estruturados através de
exemplos.
Exemplo 1: Construa um algoritmo que
multiplique um valor por 2.
DSOFT
Algoritmos Estruturados
Resolução:
Algoritmo Dobrar
{Objetivo: Multiplicar um valor por dois}
Parâmetros de entrada: Valor
Parâmetros de saída: Valor_Dobrado
Leia Valor
Valor_Dobrado←Valor * 2
Escreva Valor_Dobrado
Fim Algoritmo
DSOFT
Algoritmos Estruturados
Exemplo 2: Faça um algoritmo que encontre
o fatorial de um número.
Algoritmo Fatorial
{Objetivo: Calcular o fatorial de um número}
Parâmetro de entrada: Número
Parâmetro de saída: Fatorial
Leia Número
Inteiro Valor
Fatorial←1
DSOFT
Algoritmos Estruturados
Para Valor ←1 até Número Passo 1 Faça
Fatorial=Fatorial*Valor
Fim para
Escreva Fatorial
Fim Algoritmo
DSOFT
www.matematiques.com.br
engenharia
Download

Unidade 3