Algoritmos e Programação (Prática) : Profa. Andreza Leite Andreza - Leite@
Algoritmos e Programação (Prática) : Profa. Andreza Leite Andreza - Leite@
Algoritmos e Programação (Prática) : Profa. Andreza Leite Andreza - Leite@
(Prática)
É extremamente rápido;
2. Solução
Existe solução para o problema?
Qual o custo da sua implementação?
Qual o custo da sua execução?
Como iremos representá-la?
Algoritmos e Programação
Introdução
3. Algoritmo
Representação de uma solução para um problema, com
algumas características:
Seqüência finita de etapas;
Individualmente, existe realização possível para cada uma das
etapas consideradas;
Termina após um tempo finito.
Diversas são as técnicas e métodos existentes para a
construção de algoritmos.
No entanto, todas elas possuem um mesmo objetivo, onde as
suas variações não passam de pequenos detalhes frente a sua
organização geral no atendimento a uma ou outra área mais
especificamente.
Algoritmos e Programação
Introdução
3. Algoritmo
Representação:
Linguagem natural;
Pseudocódigo (linguagem textual com poucos símbolos e regras,
que são simples);
Fluxograma (linguagem visual composta por poucos símbolos e
regras)
Um algoritmo expressa uma solução para um problema.
Acontece que:
Computadores não entendem (normalmente, ou pelo menos da
forma como nós precisamos):
Linguagens naturais;
Pseudocódigos;
Fluxogramas.
Algoritmos e Programação
Introdução
4. Programa
Precisamos então:
Estabelecer um mecanismo de comunicação com o computador,
de modo a fazê-lo entender tudo que quisermos que ele faça;
Os computadores entendem somente instruções, postas em uma
sequência lógica e seguindo diversas regras;
Essas instruções e essas regras não são de fácil uso pelas
pessoas, daí a necessidade de uma etapa intermediária, que é
a construção de um programa, a partir do algoritmo;
Para isso, vamos usar uma “linguagem de programação”.
Um pouco mais complexas do que as linguagens usadas para
representar algoritmos;
Mas mais fáceis de serem entendidas pelo computador.
Algoritmos e Programação
Introdução
4. Programa
Precisamos então:
Traduzir algoritmos para programas;
Conhecer e utilizar (pelo menos) duas linguagens de
programação;
Entender que erros nas traduções do algoritmo para a
linguagem são comuns;
Algoritmos e Programação
Introdução
Revendo e separando bem as coisas a partir
daqui pra frente:
Sua parte:
Problema
Solução
Algoritmo
Execução
Resultados
Algoritmos e Programação
Introdução
Ciclo de desenvolvimento
Problema
Solução
Algoritmo
Execução
Resultados
Algoritmos e Programação
Algoritmos no mundo real
Qualquer sequência de etapas para se resolver um
problema ou chegar a um objetivo é um algoritmo.
Exemplos:
Algoritmos e Programação
Algoritmos
A elaboração do algoritmo descreve a necessidade dos dados e
as suas manipulações durante a execução da lógica proposta
por ele, sendo feito por meio de técnicas diferentes que
representarão a seqüência desses passos (ou etapas).
Entre as várias técnicas existentes, serão abordadas:
Fluxograma;
Pseudocódigo (Português Estruturado).
O fluxograma utiliza figuras geométricas predefinidas para
descrever as ações (ou instruções) a serem realizadas na
resolução de um problema.
Pseudocódigo consiste na descrição estruturada, por meio de
regras pré-definidas, de passos (ou instruções) a serem
realizados para a resolução do problema, utilizando a
linguagem natural para representar o raciocínio.
Algoritmos e Programação
Fluxograma
Vantagem – a representação gráfica é mais concisa que a
representação textual.
Desvantagem – é necessário aprender a simbologia dos
fluxogramas
Algoritmos e Programação
Fluxograma
Exemplo de fluxograma: calcular o dobro de um número
Algoritmos e Programação
Pseudocódigo (Portugol)
Descrição narrativa utilizando nosso idioma para descrever o
algoritmo.
Vantagem – sua transcrição para qualquer linguagem de
programação é quase que direta.
Desvantagem – é necessário aprender as regras do
pseudocódigo.
Exemplo de uma descrição narrativa.
Receber e efetuar a soma de dois números, exibindo o resultado
ao final.
Receber os dois números.
Efetuar a soma dos dois números.
Mostrar o resultado.
Algoritmos e Programação
Algoritmo em Pseudocódigo
Unidade Central de
Entrada Processamento Saída
CPU
Memória
Conceitos Básicos
Os dados e os programas são armazenados na memória,
em regiões distintas.
Os programas são formados, essencialmente, por
comandos (instruções sobre o que fazer);
Os comandos são lidos sequencialmente da memória, um
após o outro;
A execução de um novo comando inicia apenas depois
que a execução do anterior tiver terminado (execução
sequencial).
Eventualmente, um comando pode modificar o valor de
um dado existente na memória, solicitar novos dados ao
usuário ou enviar dados para a saída.
Conceitos Básicos
Conceitos básicos para construção de algoritmos
Constantes;
Variáveis;
Identificadores;
Palavra-reservada.
Constantes: São valores fixos, que não podem ser alterados pelas
instruções do algoritmo, ou seja, é um espaço de memória cujo valor
não deve ser alterado durante a execução de um algoritmo.
Exemplos:
Inteiro 10, -23768, ...
Real -2.34, 0.149, ...
Caractere “k”, “computador”
Conceitos Básicos
Variáveis: Elementos de dado cujo valor pode ser modificado ao
longo de sua execução.
São espaços alocados na memória que recebeu um nome
(identificador) e pode ter tipo (inteiro, caractere e real), armazena
um valor que pode ser modificado durante a execução do
algoritmo.
Um programa pode manipular várias variáveis distintas;
Cada variável pode armazenar vários valores, mas apenas um de
cada vez;
“Variáveis” são criadas no início da execução do programa e
destruídas ao término da sua execução;
O conjunto de “variáveis” que um programa necessita precisa ser
definido antes de se iniciar a execução do programa.
Conceitos Básicos
Regras para criar nomes de variáveis.
Os nomes das variáveis devem representar o que será guardado
dentro dela.
O primeiro caractere de um nome deverá ser sempre alfabético.
Não podem ser colocados espaços em branco no nome de
variáveis, usar o UNDERSCORE “_”.
A declaração de uma variável é feita no algoritmo informando o
seu nome, seguido por : e terminado com o seu tipo.
Exemplos:
a: inteiro
nome_do_aluno: caractere
sinalizador: logico
valor1, valor2: real
Conceitos Básicos
Palavras reservadas (palavras-chave):
São identificadores predefinidos que possuem
significados especiais para o interpretador do
algoritmo.
inicio senao para repita
var logico se ate
faca inteiro caractere real