Algoritmos I
Conceitos Preliminares
Computador
Problema
Lógica
Algoritmo
Processamento de dados
Programa
Implementação
Paradigmas de programação
Programação estruturada
Atividade prevista – avaliação da aula
Elaborar uma síntese da aula contemplando as definições abordadas
Computador
Problema
Lógica
Algoritmo
Processamento de dados
Programa
Implementação
Paradigmas de programação
Programação estruturada
Programação estruturada
Programação estruturada
preconiza que qualquer programa pode ser reduzido a apenas três estruturas: seqüência, decisão e iteração.
a programação estruturada orienta os programadores para a criação de estruturas simples em seus programas, usando procedimentos e funções.
Programação estruturada
Programação estruturada
Propõe a elaboração de um programa a partir da divisão de um problema em partes menores. A junção de cada pequena solução contribui de forma decisiva para a solução do problema maior.
Problema
Objeto de uma questão.
Um problema será uma pergunta, situação, necessidade, de caráter geral a ser respondida (ou, resolvida).
Um problema é descrito identificando-se:
quais são os possíveis dados (ou entradas);
quais são os possíveis resultados (ou saídas);
que condições (ou relações) devem ser satisfeitas para que um particular resultado seja uma saída aceitável para uma certa entrada. (teste)
Programação estruturada
Passos para elaboração de um programa no paradigma de programação estruturada
estudar o problema, quebrando-o em partes menores;
2.Definir as entradas e saídas esperadas;
3.Determinar o tipo de processamento necessário para transformar/ produzir os dados de entrada nos resultados esperados;
Programação de computadores
Exemplo:
Dadas a base e a altura de um triângulo determine sua área.
Problema : determine a área do triângulo.
Dados de Entrada: base e a altura
Saída - resultado esperado: o valor da área do triângulo
A programação de computadores
Abrange:
1.Análise do problema para definição dos dados de entradas, o processamento e os dados de saídas;
2.Elaboração de uma solução
1.construção de um algoritmo (portugol, descrição narrativa, fluxograma, diagrama de Chapin) que expresse a solução para o problema
3.Codificação - IMPLEMENTAÇÃO
Tradução do algoritmo para uma linguagem de programação específica.
É importante demonstrar (ou verificar) que o algoritmo (ou programa) realmente resolve o problema proposto. - CERTIFICAÇÃO
Teste de Mesa.
Processamento de dados
Programa – definições
Codificação de um algoritmo em uma determinada linguagem de programação (ASCENCIO, 1999).
O processamento de dados é feito pela execução de programas.
Um programa é uma seqüência de instruções codificadas em uma linguagem de programação
programar é basicamente estruturar dados e construir algoritmos e implementá-los em uma linguagem computacional específica.
Algoritmo
“Algoritmo é uma seqüência de passos que visam atingir um objetivo definido” (FORBELLONE, 1999).
“Algoritmo é a descrição de uma seqüência de passos que deve ser seguida para a realização de uma tarefa” (ASCENCIO, 1999).
Segundo Ziviani, um algoritmo pode ser visto como uma seqüência de ações executáveis para a obtenção de uma solução para um determinado tipo de problema.
“Algoritmo é uma seqüência finita de instruções e operações cuja execução, em tempo finito, resolve um problema computacional, qualquer que seja sua instância” (SALVETTI, 1999)
conjunto de regras e de procedimentos lógicos, perfeitamente definidos, que levam à solução de um problema em um número finito de etapas
Algoritmos - exemplos
Soma de alguns números
Elaboração de um misto quente
Calçar um tênis
Trocar uma lâmpada
Fazer um bolo
Efetuar depósito em um caixa eletrônico
Lógica
Trata da correção do pensamento, do raciocínio.
Arte de pensar corretamente:
André é mais velho que Carlos.
Carlos é mais velho que Aída.
Portanto, André é mais velho que Aída
As praias ficam na costa do País. Brasília está no centro do país. Logo, Brasília não tem praia
Método para Construção de Algoritmos
1.Ler atentamente o enunciado.
a)Entender o problema proposto;
b)Dividir o problema em partes menores, se ele for complexo
2.Retirar do enunciado a relação das entradas de dados.
3.Definir a relação das saídas.
4.Determinar o que deve ser feito para transformar entradas determinadas nas saídas especificadas
a.Ter bem definido o objetivo- que resultado devo alcançar?
b.Definir o processamento, ou seja, quais cálculos/ operações devem ser efetuados, quais as restrições, se houver.
c.Quais são as saídas, resultados esperados do processamento.
5.Construir o algoritmo.
6.Executar o algoritmo (teste de mesa).
a)Testar o algoritmo realizando simulações
7.Analisar os resultados, revendo os passos anteriores caso não tenha conseguido as saídas necessárias.
Método para Construção de Algoritmos
Em Síntese:
Bibliografia
ASCENCIO, A. F. G.; CAMPOS, E.A. V. Fundamentos e programação de computadores. São Paulo: Pearson, 2007.
CARBONI, I.F. lógica de programação, São Paulo: Thomsom, 2003.
BORATTI, I.C.; OLIVEIRA, A.B. Introdução à programação de computadores. Florianópolis: VisualBooks, 2004.
MANZANO. J. A. N. G. Estudo dirigido de algoritmos. São Paulo: Érica, 2003. (15)
FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico Eberspacher. Lógica de Programação de Algoritmos e Estrutura de Dados. 2 ed. São Paulo: Makron Books, 2000 (9)
Conceitos Preliminares
Computador
Problema
Lógica
Algoritmo
Processamento de dados
Programa
Implementação
Paradigmas de programação
Programação estruturada
Atividade prevista – avaliação da aula
Elaborar uma síntese da aula contemplando as definições abordadas
Computador
Problema
Lógica
Algoritmo
Processamento de dados
Programa
Implementação
Paradigmas de programação
Programação estruturada
Programação estruturada
Programação estruturada
preconiza que qualquer programa pode ser reduzido a apenas três estruturas: seqüência, decisão e iteração.
a programação estruturada orienta os programadores para a criação de estruturas simples em seus programas, usando procedimentos e funções.
Programação estruturada
Programação estruturada
Propõe a elaboração de um programa a partir da divisão de um problema em partes menores. A junção de cada pequena solução contribui de forma decisiva para a solução do problema maior.
Problema
Objeto de uma questão.
Um problema será uma pergunta, situação, necessidade, de caráter geral a ser respondida (ou, resolvida).
Um problema é descrito identificando-se:
quais são os possíveis dados (ou entradas);
quais são os possíveis resultados (ou saídas);
que condições (ou relações) devem ser satisfeitas para que um particular resultado seja uma saída aceitável para uma certa entrada. (teste)
Programação estruturada
Passos para elaboração de um programa no paradigma de programação estruturada
estudar o problema, quebrando-o em partes menores;
2.Definir as entradas e saídas esperadas;
3.Determinar o tipo de processamento necessário para transformar/ produzir os dados de entrada nos resultados esperados;
Programação de computadores
Exemplo:
Dadas a base e a altura de um triângulo determine sua área.
Problema : determine a área do triângulo.
Dados de Entrada: base e a altura
Saída - resultado esperado: o valor da área do triângulo
A programação de computadores
Abrange:
1.Análise do problema para definição dos dados de entradas, o processamento e os dados de saídas;
2.Elaboração de uma solução
1.construção de um algoritmo (portugol, descrição narrativa, fluxograma, diagrama de Chapin) que expresse a solução para o problema
3.Codificação - IMPLEMENTAÇÃO
Tradução do algoritmo para uma linguagem de programação específica.
É importante demonstrar (ou verificar) que o algoritmo (ou programa) realmente resolve o problema proposto. - CERTIFICAÇÃO
Teste de Mesa.
Processamento de dados
Programa – definições
Codificação de um algoritmo em uma determinada linguagem de programação (ASCENCIO, 1999).
O processamento de dados é feito pela execução de programas.
Um programa é uma seqüência de instruções codificadas em uma linguagem de programação
programar é basicamente estruturar dados e construir algoritmos e implementá-los em uma linguagem computacional específica.
Algoritmo
“Algoritmo é uma seqüência de passos que visam atingir um objetivo definido” (FORBELLONE, 1999).
“Algoritmo é a descrição de uma seqüência de passos que deve ser seguida para a realização de uma tarefa” (ASCENCIO, 1999).
Segundo Ziviani, um algoritmo pode ser visto como uma seqüência de ações executáveis para a obtenção de uma solução para um determinado tipo de problema.
“Algoritmo é uma seqüência finita de instruções e operações cuja execução, em tempo finito, resolve um problema computacional, qualquer que seja sua instância” (SALVETTI, 1999)
conjunto de regras e de procedimentos lógicos, perfeitamente definidos, que levam à solução de um problema em um número finito de etapas
Algoritmos - exemplos
Soma de alguns números
Elaboração de um misto quente
Calçar um tênis
Trocar uma lâmpada
Fazer um bolo
Efetuar depósito em um caixa eletrônico
Lógica
Trata da correção do pensamento, do raciocínio.
Arte de pensar corretamente:
André é mais velho que Carlos.
Carlos é mais velho que Aída.
Portanto, André é mais velho que Aída
As praias ficam na costa do País. Brasília está no centro do país. Logo, Brasília não tem praia
Método para Construção de Algoritmos
1.Ler atentamente o enunciado.
a)Entender o problema proposto;
b)Dividir o problema em partes menores, se ele for complexo
2.Retirar do enunciado a relação das entradas de dados.
3.Definir a relação das saídas.
4.Determinar o que deve ser feito para transformar entradas determinadas nas saídas especificadas
a.Ter bem definido o objetivo- que resultado devo alcançar?
b.Definir o processamento, ou seja, quais cálculos/ operações devem ser efetuados, quais as restrições, se houver.
c.Quais são as saídas, resultados esperados do processamento.
5.Construir o algoritmo.
6.Executar o algoritmo (teste de mesa).
a)Testar o algoritmo realizando simulações
7.Analisar os resultados, revendo os passos anteriores caso não tenha conseguido as saídas necessárias.
Método para Construção de Algoritmos
Em Síntese:
Bibliografia
ASCENCIO, A. F. G.; CAMPOS, E.A. V. Fundamentos e programação de computadores. São Paulo: Pearson, 2007.
CARBONI, I.F. lógica de programação, São Paulo: Thomsom, 2003.
BORATTI, I.C.; OLIVEIRA, A.B. Introdução à programação de computadores. Florianópolis: VisualBooks, 2004.
MANZANO. J. A. N. G. Estudo dirigido de algoritmos. São Paulo: Érica, 2003. (15)
FORBELLONE, André Luiz Villar; EBERSPACHER, Henri Frederico Eberspacher. Lógica de Programação de Algoritmos e Estrutura de Dados. 2 ed. São Paulo: Makron Books, 2000 (9)
Nenhum comentário:
Postar um comentário