Faculdade de Estudos Avançados do Pará
Disciplina: Algoritmos
Professor: Armando Hage
Introdução à Programação
Construção de Algoritmos
• Algoritmo é uma seqüência finita de ações
que descrevem como um problema pode
ser resolvido. Quando obedecem a sintaxe
de uma linguagem de programação
passamos a chama-la de programa
• Instrução-Frases
que indicam ações a
Instruçãoserem executadas.
Qualidades de um algoritmo
• Perfeitamente definido
• Descreve com exatidão os passos a serem
seguidos
• Não ambíguo
• Não deve deixar dúvidas do que tem que ser
feito
• Eficaz
• Resolve o problema em qualquer situação
• Eficiente
• Resolve o problema com mínimos recursos
Tipos de processamento
•
Processamento Seqüencial
• As instruções são executadas uma após a outra
• Exemplo: Obtenha a média entre cinco notas
1. Some as duas primeiras notas
2. Some a terceira notas com o resultado da
instrução 1
3. Some a quarta nota com o resultado da
instrução 2
4. Some a quinta nota com o resultado da
instrução 3
5. Divida o resultado da instrução 4 por 5
Tipos de processamento
•
Processamento Condicional
•
•
Um conjunto de instruções é executada ou não,
dependendo de uma condição verdadeira.
Exemplo: Obtenha a média entre cinco notas. Se a média
maior ou igual a seis, o aluno esta aprovado, caso
contrário, está reprovado.
1.
2.
3.
4.
5.
6.
7.
8.
9.
Some as duas primeiras notas
Some a terceira notas com o resultado da instrução 1
Some a quarta nota com o resultado da instrução 2
Some a quinta nota com o resultado da instrução 3
Divida o resultado da instrução 4 por 5
Se o resultado da instrução 5 for maior ou igual a 6
Aprove o aluno
Se o resultado da instrução 5 for menor que 6
Reprove o aluno
Tipos de processamento
•
Processamento com condição
•
Conjunto de instruções que será executada um
determinado numero de vezes.
1. Para cada aluno da sala
2. Some as duas primeiras notas
3. Some a terceira notas com o resultado da
instrução 1
4. Some a quarta nota com o resultado da
instrução 2
5. Some a quinta nota com o resultado da
instrução 3
6. Divida o resultado da instrução 4 por 5
Variáveis e Expressão
• Variável
• Pode receber valores diferentes
• Operação de atribuição
• Forma para especificar que a uma
variável será dado um valor ()
• Ex.: A 3
• Conversões de tipo
Variáveis e Expressão
• Expressões
• O lado direito do comando de atribuição
pode ser qualquer expressão, onde um
expressão é uma combinação de
variáveis, constantes e operadores.
variável  expressão
• Ex.: A 3+16+8
Obs.: Toda a variável utilizada em uma expressão deverá
possuir um valor no momento em que esta expressão é
avaliada.
Prioridade dos Operadores
•
Durante a execução de uma expressão que envolve
vários operadores, é necessário a existência de
prioridades, caso contrário poderemos obter valores
que não representam o resultado esperado.
1º Efetuar operações embutidas em parênteses "mais
internos“
2º Efetuar Funções
3º Exponenciação
4º Efetuar multiplicação e/ou divisão
5º Efetuar adição e/ou subtração
6º Operadores Relacionais
7º Operadores Lógicos
Funções Embutidas
• São rotinas pré escritas, fornecidas pelos projetistas de
linguagens de programação para auxiliar o programador na
execução de cálculos que requeiram mais do que o conjunto
convencional de operadores.
• ABS- Valor absoluto
• SQRT- Raiz quadrada
• TRUNC- Valor truncado
• ROUND- Valor arredondado
• LOG- Logaritmo na base e
• LOG10- Logaritmo base 10
• EXP- Exponencial
• SIN- Seno
• COS- Co-Seno
• TAN-Tangente
Comandos de entrada e saída
• No algoritmo é preciso representar a troca de
informações que ocorrerá entre o mundo da
máquina e o nosso mundo, para isso, devemos
utilizar comandos de entrada e saída, sendo que, a
nível de algoritmo esses comandos representam
apenas a entrada e a saída da informação,
independe do dispositivo utilizado (teclado, discos,
impressora, monitor,...), mas, sabemos que nas
linguagens de programação essa independência não
existe, ou seja, nas linguagens de programação
temos comandos específicos para cada tipo de
unidade de Entrada/Saída.
Comandos de entrada e saída
Comando de Entrada de Dados
Leia(variável_1, variável_2,...)
Comando de Saída de Dados
Imprima(expressão_1, expressão_2,...)
LINGUAGEM DE DESCRIÇÃO
DE ALGORITMO (LDA)
Estrutura um Algoritmo
Algoritmo Nome_Do_Algoritmo
variáveis
Declaração das variáveis
Procedimentos
Declaração dos procedimentos
Funções
Declaração das funções
Início
Corpo do Algoritmo
Fim
Identificadores
• Representam os nomes escolhidos para rotular
as variáveis, procedimentos e funções,
normalmente, obedecem as seguintes regras :
• 1.O primeiro caracter deve ser uma letra
• 2.Os nomes devem ser formados por caracteres
pertencentes
ao
seguinte
conjunto
{a,b,c,..z,A,B,C,...Z,0,1,2,...,9,_}
• 3.Os nomes escolhidos devem explicitar seu
conteúdo.
:
Variáveis
• Unidades
básicas
de
armazenamento
das
informações a nível de linguagens de programação.
Os tipos de dados e variáveis utilizados dependem
da finalidade dos algoritmos, mas, podemos definir
alguns, pelo fato de serem largamente utilizados e
implementados na maioria das linguagens, sendo
estes:
• INTEIRO : qualquer número inteiro, negativo, nulo ou
positivo.
• REAL : qualquer número real, negativo, nulo ou positivo.
• CARACTER:qualquer
conjunto
de
caracteres
alfanuméricos.
• LÓGICO : tipo especial de variável que armazena apenas
os valores V e F, onde V representa VERDADE e F
FALSO
Declaração de variáveis
• Para que os programas manipulem valores,
estes devem ser armazenados em variáveis e
para isso, devemos declará-las de acordo
com a sintaxe:
NomeVariável,... : tipo
Programação I -UFPA
Prof.Esp. Armando Hage
Operações Básicas
• Podem ser:
• OPERADOR DE ATRIBUIÇÃO
NomeDaVariavel ←Valor ou Expressão Atribuída
• OPERADORES ARITMÉTICOS- +,-, *, /,
Quociente, Resto, Exp (a,b)
• FUNÇÕES PRIMITIVAS: SEN(x); COS(x);
TG(x); ABS(x); INT(x); Raiz(x); PI( );
Operações Básicas
OPERADORES RELACIONAIS-São utilizados para
relacionar variáveis ou expressões, resultando num
valor lógico (Verdadeiro ou Falso), sendo eles:=, <
,>, <=, >=, <>
OPERADORES LÓGICOS-São utilizados
avaliar expressões lógicas, sendo eles:
e - e lógico ou conjunção.
ou - ou lógico ou disjunção.
não - negação.
para
Resumo
• Para resolver um problema por
computador
1. Conhecer as especificações do problema
2. Formular um esboço geral do algoritmo
3. Identificar todas as variáveis necessárias
4. Retornar aos passos inicias do algoritmo
5. Rastrear os dados com valores inicias
6. Implementar em uma linguagem de
programação
Download

Universidade Federal do Pará Centro de Ciências Exatas e Natura