TÉCNICAS DE PROGRAMAÇÃO 1 INTRODUÇÃO A ALGORITMOS



Documentos relacionados
Introdução à Computação para o Ensino Médio. Centro Técnico Científico

TÉCNICAS DE PROGRAMAÇÃO 1 ESTRUTURAS DE CONTROLE

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO PARTE I. Prof. Dr. Daniel Caetano

Sessão 2 UFCD 0804 Algoritmos

Lógica de programação Instrução Algoritmo Diferença entre algoritmo e programa

Programação de Computadores I Fluxogramas PROFESSORA CINTIA CAETANO

INTRODUÇÃO À PROGRAMAÇÃO

ALGORITMOS E FLUXOGRAMAS

Reaproveitando algoritmos

Programação em papel quadriculado

Bacharelado em Ciência e Tecnologia Processamento da Informação TESTE DE MESA TESTE DE MESA

O que é desenho técnico

OBSERVANDO AS DIFERENÇAS DE TEMPO NAS EXECUÇÕES DE ALGORITMOS EM PROCESSADORES DIFERENTES


Algoritmos e programação

Com base nos slides vistos em sala de aula resolva os seguintes exercícios:

Estruturas de Repetição

TÉCNICAS DE PROGRAMAÇÃO

5. Uma lousa denominada EPI (registrador de endereço de próxima instrução).

Lógica para a Programação - 1º semestre AULA 01 Prof. André Moraes

A IMPORTÂNCIA DO MATERIAL CONCRETO NA MULTIPLICAÇÃO

INTERPRETANDO A GEOMETRIA DE RODAS DE UM CARRO: UMA EXPERIÊNCIA COM MODELAGEM MATEMÁTICA

Algoritmos não se aprendem: Copiando algoritmos Estudando algoritmos Algoritmos só se aprendem: Construindo algoritmos Testando algoritmos

Definição. de solução de um problema passo-a-passo. Representa a lógica l. passo.

Conceito de Algoritmos e Suas Características

Introdução à Programação. João Manuel R. S. Tavares

Fundamentos de Física e Matemática para Biologia-FFCLRP-USP Primeiro Semestre de 2007 Professor: Antônio C. Roque (DFM-FFCLRP-USP)

Introdução à Ciência da Computação

PESQUISA EM INFORMÁTICA -ESTILOS DE PESQUISA EM COMPUTAÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

Cap.2.5: Design de Algoritmos e Programação Estruturada. Algoritmos, fluxogramas e pseudo-código

9.1.2 Laços Controlados por Entrada: Contador

Prof. Dr. Abel Gomes Cap.4: Design de Algoritmos e Programação Estruturada. Algoritmos, fluxogramas e pseudo-código

Apresentação da Disciplina Processo de Software

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos

UFRPE Prof. Gustavo Callou

Avaliação de IHC - Introdução

Algoritmos e Pseudocódigo

QUANTIFICADORES. Existem frases declarativas que não há como decidir se são verdadeiras ou falsas. Por exemplo: (a) Ele é um campeão da Fórmula 1.

CURSO: Desenvolvimento Web e Comércio Eletrônico DISCIPLINA: Gestão da Qualidade Professor: Ricardo Henrique

7. Estrutura de Decisão

Programação II. Aula 2

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

Camarões a Monterrey. Foto ilustrativa

Filas: conceitos e implementações

O ENSINO DE CÁLCULO NUMÉRICO: UMA EXPERIÊNCIA COM ALUNOS DO CURSO DE CIÊNCIA DA COMPUTAÇÃO

Densímetro de posto de gasolina

Introdução a Computação

Simulado de Algoritmos - Respostas

DIAGRAMA DE ATIVIDADES

COMO APRENDER E DAR PRIORIDADE A SUAS ATIVIDADES

IMPLEMENTAÇÃO DE UM PROTÓTIPO PARA INFORMATIZAÇÃO DE PROCESSO DE ADEQUAÇÃO DE FÉRIAS

Seminário de Avaliação Econômica de Projetos Sociais

Linguagens de. Aula 01. Profa Cristiane Koehler

COMO ENSINEI MATEMÁTICA

10/02/2015. As linguagens. Algoritmos e Lógica de programação. Os produtos. Os ingredientes. Introdução. Atuais:.Net Java Delphi PHP

Solução de problemas por meio de busca (com Python) Luis Martí DEE/PUC-Rio

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2

Laboratório de Programação I

EM FAMÍLIA. Um domingo de chuva NÍVEL A2

Diagrama de contexto

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE MATEMÁTICA PROGRAMA DE PÓS-GRADUAÇÃO EM ENSINO DE MATEMÁTICA TÓPICOS DE MATEMÁTICA APLICADA B

Base Nacional Comum Curricular Lemann Center at Stanford University

Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva

3. Estruturas de seleção

Introdução a Programação

UNIVERSIDADE PAULISTA CURSO SUPERIOR DE TECNOLOGIA. Projeto Integrado Multidisciplinar I e II

Aula 2 - Cálculo Numérico

Engenharia de Software II

Language descriptors in Portuguese Portuguese listening - Descritores para a Compreensão do Oral em História e Matemática

Carga horária : 4 aulas semanais (laboratório) Professores: Custódio, Daniel, Julio foco: introdução a uma linguagem de programação Linguagem Java

Cotagem de dimensões básicas

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

Convertendo Algoritmos para a Linguagem C

LÓGICA DE PROGRAMAÇÃO. Professor Celso Masotti

Estudaremos métodos numéricos para resolução de sistemas lineares com n equações e n incógnitas. Estes podem ser:

LÓGICA DE PROGRAMAÇÃO

Capítulo III Comparações entre algoritmos para análise dos resultados de SFRA Por Marcelo Eduardo de Carvalho Paulino*

Experimento. Guia do professor. Otimização da cerca. Secretaria de Educação a Distância. Ministério da Ciência e Tecnologia. Ministério da Educação

Fração como porcentagem. Sexto Ano do Ensino Fundamental. Autor: Prof. Francisco Bruno Holanda Revisor: Prof. Antonio Caminha M.

Plano de Aula de Matemática. Competência 3: Aplicar os conhecimentos, adquiridos, adequando-os à sua realidade.

Trabalho de laboratório Avaliação semestral Exame final MÉDIA PONDERADA CONCEITO

Projeto da Disciplina Parte1: Estudo de Viabilidade. Um Estudo de Viabilidade

Aprovação do curso e Autorização da oferta. PROJETO PEDAGÓGICO DE CURSO FIC : Formação Básica em Desenho Técnico Auxiliado por Computador

Aula 4 Conceitos Básicos de Estatística. Aula 4 Conceitos básicos de estatística

Construindo uma aula significativa passo-a-passo.

Exercícios Teóricos Resolvidos

Data 23/01/2008. Guia do Professor. Introdução

MAC 412- Organizãção de Computadores - Siang Wun Song. Um seminário sobre como preparar um seminário

ALP Algoritmos e Programação

Sistemas de Apoio à Decisão

Resolução de problemas e desenvolvimento de algoritmos

Computação Eletrônica

O MÉTODO HÚNGARO PARA RESOLUÇÃO DE PROBLEMAS DE OTIMIZAÇÃO

Capítulo 8. CICLOS. Tabela 8.1 Programa8a.f90.

OBJETIVO VISÃO GERAL SUAS ANOTAÇÕES

ENTREVISTA Alfabetização na inclusão

A estrutura de repetição em um algoritmo consiste na execução de um trecho do mesmo levando em consideração certas condições imposta pelo algoritmo.

DESENVOLVENDO COMPETÊNCIAS MATEMÁTICAS Marineusa Gazzetta *

Faculdade de Computação

Transcrição:

TÉCNICAS DE PROGRAMAÇÃO 1 INTRODUÇÃO A ALGORITMOS 2015.2 Morganna Carmem Diniz

Resumo Para implementar a solução de um problema no computador é necessário que seja encontrada uma forma de descrever esta solução de uma forma clara e precisa. É preciso que encontrar uma sequência finita de passos que transformem os argumentos de entrada em resultados, permitindo que o problema possa ser resolvido de maneira automática. Esta sequência de passos é chamada de algoritmo.

Receita O que é uma receita?

Receita O que é uma receita culinária? É uma descrição de um conjunto de passos ou ações que fazem a combinação de um conjunto de ingredientes com vista a obter um produto gastronômico particular.

Exemplo: Receita Como fritar um ovo? Escreva a receita de como fritar um ovo. http://2.bp.blogspot.com/_ofyajo13d8/r2rexiehgui/aaaaaaaaabc/d0qcei9j0_q/s400/ovo_frito.jpg

Receita Como fritar um ovo? Ingredientes Receita (Conjunto de Ações)

Como fritar um ovo? Se perguntarmos as instruções de como fritar um ovo, muitas pessoas dariam as instruções que foram seguidas no vídeo : Como fritar um ovo sem lógica (vídeo visto e comentado em aula). http://www.youtube.com/watch?v=neutvuv0kho Neste vídeo a atriz interpretou as instruções de acordo com o seu entendimento.

Análise do Problema Ovo frito Nem sempre ao seguir as receitas tem-se o resultado esperado. Isso se deve basicamente a três fatores o Ingredientes inadequados o Má compreensão das instruções das receitas o Instruções incompletas ou ambíguas. O mesmo problema aparece ao na elaboração de um algoritmo.

Análise do Problema Ovo frito Para que não ocorra os problemas no entendimento da solução do problema é necessário: 1) Definir bem o problema. 2) Procurar a compreensão correta do problema. 3) Eliminar possíveis ambiguidades e assegurar o entendimento completo das especificações de entrada e saída. 4) Estudar métodos de resolução e estabelecemos uma estratégia para obter a sua solução.

Receita Como fritar um ovo? Ingredientes Receita (Conjunto de Ações)

Receita Como fritar um ovo? Ovo Manteiga Sal 1- Derreta a manteiga numa frigideira 2- Dê uma batidinha na casca do ovo e coloque o conteúdo do ovo na frigideira 3- Frite o ovo até que a borda fique ligeiramente dourada e a gema cozida 4- Salgue depois de pronto

Como fritar um ovo Fazendo uma analogia entre a solução do problema de Como fritar um ovo? e um algoritmo temo sequência abaixo. Entrada Instruções Produto final

Algoritmo Um algoritmo é um conjunto finito e bem definido de instruções que atuam sobre uma entrada de forma a produzir a saída esperada. Solucionando assim o problema.

Passos para o desenvolvimento de um Algoritmo Passo1: Definição do problema. Passo2: Procurar a compreensão correta do problema Passo3: Eliminar possíveis ambigüidades e assegurar do entendimento completo das especificações de entrada e saída com quem especificou o problema. Passo 4: Escolher uma amostra significativa de dados, definindo as especificações de entrada. Passo 5: Determinar a saída desejada correspondente aos dados de entrada, definindo as especificações de saída. Passo 6: Estudar métodos de resolução e estabelecer uma estratégia para obter a sua solução.

Características de um algoritmo Finitude: um algoritmo deve sempre terminar após um número finito de passos. Definição dos passos que descrevem a solução do problema: cada passo de um algoritmo deve ser precisamente definido. As ações devem ser definidas rigorosamente e sem ambiguidades. Entradas: zero ou mais entradas. (Dados sobre os quais as ações são aplicadas) Saídas: uma ou mais saídas (Resultado das ações)

Características de um algoritmo Eficiência: Um algoritmo deve ser eficiente. Isto significa que todas as operações devem ser suficientemente básicas de modo que possam ser em princípio executadas com precisão em um tempo finito por um ser humano usando papel e lápis.

Formas para descrever um Algoritmo Pode-se descrever um algoritmo de três formas: o Linguagem Natural: Os algoritmos são expressos diretamente em linguagem natural (o português, por exemplo); o Fluxograma: Representação gráfica que emprega formas geométricas padronizadas para indicar as diversas ações e decisões que devem ser executadas para resolver o problema; o Pseudocódigo: Emprega uma linguagem intermediária entre a linguagem natural e uma linguagem de programação para descrever os algoritmos.

Exemplo: Problema Dado o problema abaixo, veremos como descrever um algoritmo em Linguagem Natural: A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em consideração que a média para aprovação deve ser pelo menos 5,0.

Construindo Algoritmo - Linguagem natural A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em consideração que a média para aprovação deve ser pelo menos 5,0. Obter as três notas de um aluno (Nota1, Nota2, Nota3)

Construindo Algoritmo - Linguagem natural A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em consideração que a média para aprovação deve ser pelo menos 5,0. Obter as três notas de um aluno (Nota1, Nota2, Nota3) Calcular a média aritmética das 3 notas media = (Nota1+Nota2+Nota3)/3,0

Construindo Algoritmo - Linguagem natural A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em consideração que a média para aprovação deve ser pelo menos 5,0. Obter as três notas de um aluno (Nota1, Nota2, Nota3) Calcular a média aritmética das 3 notas media = (Nota1+Nota2+Nota3)/3,0 Comparar a média com o valor 5,0 Se media for maior ou igual a 5,0 escrever aprovado Caso contrário, escrever reprovado

Algoritmo - Fluxograma Para descrever um algoritmo com o Fluxograma temos que definir a Linguagem Gráfica, que utiliza formas geométricas diferentes que implicam ações (instruções, comandos) distintas

Exemplo: Problema Dado o problema abaixo, veremos como descrever um algoritmo com um Fluxograma: A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em conta que a média para aprovação deve ser pelo menos 5,0.

Construindo Algoritmo - Fluxograma A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em conta que a média para aprovação deve ser pelo menos 5,0. Início Ler 3 notas (n1,n2,n3)

Construindo Algoritmo - Fluxograma A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em conta que a média para aprovação deve ser pelo menos 5,0. Início Ler 3 notas (n1,n2,n3) Calcular média Média = (n1+n2+n3)/3

Construindo Algoritmo - Fluxograma A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele levando em conta que a média para aprovação deve ser pelo menos 5,0.foi aprovado ou reprovado. Início Ler 3 notas (n1,n2,n3) Calcular média Média = (n1+n2+n3)/3 V Se Média >= 5 F Escrever Aprovado Escrever Reprovado Fim

Algoritmo - Fluxograma Início Ler 3 notas (n1,n2,n3) Calcular média Média = (n1+n2+n3)/3 V Se Média >= 5 F Escrever Aprovado Escrever Reprovado Fim

Algoritmo - Pseudocódigo Para descrever um algoritmo com o Pseudocódigo deve ser definido uma linguagem intermediária entre a linguagem natural e uma linguagem de programação para descrever as instruções.

Exemplo: Problema Dado o problema abaixo, veremos como descrever um algoritmo em Pseudocódigo: A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em conta que a média para aprovação deve ser pelo menos 5,0.

Construindo Algoritmo - Pseudocódigo A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em conta que a média para aprovação deve ser pelo menos 5,0. variáveis média, nota1, nota2, nota3 : real; início leia(nota1, nota2, nota3);... fim.

Construindo Algoritmo - Pseudocódigo A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em conta que a média para aprovação deve ser pelo menos 5,0. variáveis média, nota1, nota2, nota3 : real; início leia(nota1, nota2, nota3); média (nota1+nota2+nota3)/3;... fim.

Construindo Algoritmo - Pseudocódigo A partir das três notas de um aluno, calcular sua média aritmética e determinar se ele foi aprovado ou reprovado, levando em conta que a média para aprovação deve ser pelo menos 5,0. variáveis média, nota1, nota2, nota3 : real; início leia(nota1, nota2, nota3); média (nota1+nota2+nota3)/3; se (média >= 5,0) então imprima( Aluno Aprovado ); caso contrário imprima( Aluno Reprovado ); fim.

Referências D.D Salvetti e L.M. Barbosa, Algoritmos, Pearson Makron Books, 1998. Notas de aulas do curso presencial de Técnicas de Programação1 - UNIRIO - Desenvolvidos pelas professoras: Geiza Maria Hamazaki da Silva e Adriana C. F Alvim primeiro semestre de 2011.