cálculo numérico - unidade 3 - algoritmos estruturados
DESCRIPTION
Algoritmos EstruturadosTRANSCRIPT
![Page 1: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/1.jpg)
DS
OF
T
AmintasAmintas
engenhariaengenharia
![Page 2: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/2.jpg)
DS
OF
T
Algoritmos Estruturados
Unidade 3
![Page 3: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/3.jpg)
DS
OF
TAlgoritmos 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;
![Page 4: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/4.jpg)
DS
OF
TAlgoritmos Estruturados
3.1 – Conceitos de Algoritmos
A palavra algoritmo deriva do nome do matemático árabe Mohammed ibu-Musa al-Khowarizm (≈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.
![Page 5: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/5.jpg)
DS
OF
TAlgoritmos 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”
![Page 6: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/6.jpg)
DS
OF
TAlgoritmos 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.
![Page 7: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/7.jpg)
DS
OF
TAlgoritmos 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
![Page 8: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/8.jpg)
DS
OF
TAlgoritmos 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>
![Page 9: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/9.jpg)
DS
OF
TAlgoritmos 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>
![Page 10: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/10.jpg)
DS
OF
TAlgoritmos Estruturados
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
![Page 11: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/11.jpg)
DS
OF
TAlgoritmos 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].
![Page 12: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/12.jpg)
DS
OF
TAlgoritmos 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.
![Page 13: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/13.jpg)
DS
OF
TAlgoritmos 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>;
![Page 14: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/14.jpg)
DS
OF
TAlgoritmos 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.
![Page 15: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/15.jpg)
DS
OF
TAlgoritmos 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
![Page 16: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/16.jpg)
DS
OF
TAlgoritmos 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:
![Page 17: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/17.jpg)
DS
OF
TAlgoritmos Estruturados
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 Operador Descrição
< Menor ≤ Menor ou igual
> Maior ≥ Maior ou igual
= Igual ≠ Diferente
Operador Descrição
e Conjunção
ou Disjunção
não Negação
![Page 18: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/18.jpg)
DS
OF
TAlgoritmos Estruturados
As tabelas abaixo mostram os resultados lógicos para os operadores lógicos.
e ou não aV F
V V F
F F F
V F
V V V
F V F
a V F
F V
![Page 19: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/19.jpg)
DS
OF
TAlgoritmos 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 algorit-mo, 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.
![Page 20: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/20.jpg)
DS
OF
TAlgoritmos 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.
![Page 21: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/21.jpg)
DS
OF
TAlgoritmos 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.
![Page 22: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/22.jpg)
DS
OF
TAlgoritmos 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.
![Page 23: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/23.jpg)
DS
OF
TAlgoritmos 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
![Page 24: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/24.jpg)
DS
OF
TAlgoritmos 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.
![Page 25: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/25.jpg)
DS
OF
TAlgoritmos 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:
![Page 26: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/26.jpg)
DS
OF
TAlgoritmos Estruturados
Repita
<comandos 1>
se <condição lógica> então
interrompa
fim se
<comandos 2>
Fim repita
<comandos 3>
![Page 27: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/27.jpg)
DS
OF
TAlgoritmos 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.
![Page 28: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/28.jpg)
DS
OF
TAlgoritmos 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
![Page 29: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/29.jpg)
DS
OF
TAlgoritmos 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”.
![Page 30: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/30.jpg)
DS
OF
TAlgoritmos 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.
![Page 31: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/31.jpg)
DS
OF
TAlgoritmos 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
![Page 32: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/32.jpg)
DS
OF
TAlgoritmos 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
![Page 33: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/33.jpg)
DS
OF
TAlgoritmos Estruturados
Para Valor ←1 até Número Passo 1 Faça
Fatorial=Fatorial*Valor
Fim para
Escreva Fatorial
Fim Algoritmo
![Page 34: Cálculo Numérico - Unidade 3 - Algoritmos Estruturados](https://reader036.vdocuments.co/reader036/viewer/2022062407/563db8fa550346aa9a98ccd7/html5/thumbnails/34.jpg)
DS
OF
T
www.matematiques.comwww.matematiques.com.br.br
engenhariaengenharia