Estrutura de Dados Algoritmos

Documentos relacionados
Formas de representar um algoritmo

Algoritmos e Programação

Como representar um algoritmo?

Fluxograma. Conjunto de símbolos utilizados em fluxogramas

Programação em C. Victor Amorim dos Santos

Microcontroladores. Programação: fluxogramas, pseudocódigos e lógica. Prof. Daniel

Unidade 1 Conceitos básicos

CURSO de NIVELAMENTO INTRODUÇÃO À PROGRAMAÇÃO

Algoritmos e Programação

Conceitos Básicos ENTRADA PROCESSAMENTO SAÍDA

Sintática: como é escrito cada elemento da linguagem de programação.

Processamento de Dados aplicado à Geociências. AULA 3: Algoritmos computacionais Representação de Algoritmos Sintaxe Tipos de dados Expressões

INTRODUÇÃO À PROGRAMAÇÃO

Algoritmo para converter uma temperatura em Fahrenheit para Celsius

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Algoritmos e Programação

SSC304 Introdução à Programação Para Engenharias

Algoritmos e Programação - Engenharia da Computação -

Conceitos e Representação de Algoritmos

01/08/2011. Introdução Lógica Sequencia lógica Instruções Algoritmos Programas. Lógica. Lógica na programação. Instrução.

A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado..

Estruturas de Controle de Fluxo Pseudocódigo/Exercício Construa o pseudocódigo de um algoritmo para obter o resultado da divisão de dois números

Funcionamento do computador. Conceito e definição de algoritmos. Prof. Alex Camargo

Lógica Aula 3. Definição. Estrutura de decisão

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 06. Algoritmos e Programação. Informática II. q Noções de lógica

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

Introdução à Programação de Computadores Fabricação Mecânica

ALGORITMOS. O que é Algoritmo? Algoritmo é um dos processo para criação

Introdução à Computação

Portugol. Tiago Alves de Oliveira

Prof. Jorge Cavalcanti

Fluxograma. Símbolo Nome Descrição

Lógica de Programação

Ciência da Computação. Prof. Dr. Leandro Alves Neves Prof. Dr. Adriano Cansian

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

Operadores e instruções

Computação I: Representações de Algoritmos

Algoritmos e Lógica de Programação. Notas de Aula

Programação Estruturada Aula VisualG

Pseudocódigo Exercício 6

Aula Bibliografia - Definições - Operadores - Criação de um algoritmo - Exercícios. Algoritmo e Programação. Prof.

Algoritmos Estrutura Condicional

Lógica e Linguagem de Programação Aula 01 - Introdução Exercícios 01 - Respostas Professor: Danilo Giacobo

Programação Estruturada

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES

Linguagem de Programação I Prof. Tiago Eugenio de Melo.

Algoritmos e Programação

Introdução à Lógica de Programação

Aula 4 Oficina de Programação Algoritmos - Parte 3. Profa. Elaine Faria UFU

ALGORITMO: FASE 1 PARTE 1

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição

LINGUAGEM DE PROGRAMAÇÃO

ALGORITMOS AULA 1. Profª Amanda Gondim

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

Fluxograma. Símbolo Nome Descrição

Objetivo: Desenvolver algoritmos a partir de problemas

Este conceito é bastante simples e será útil e conveniente nos itens seguintes, na definição das estruturas básicas de controle de execução.

Fluxograma Pseudocódigo Estruturas de decisão. Professor Leandro Augusto Frata Fernandes

Algoritmos - 1. Alexandre Diehl. Departamento de Física - UFPel

INFORMÁTICA APLICADA AULA 06 ALGORITMOS

2 Fluxogramas e Pseudocódigo. 18 Programação em C/C++ estrutura básica e conceitos fundamentais

LINGUAGEM ALGORÍTMICA

Curso: Análise e Desenvolvimento de Sistemas. (Conceitos Práticos de Lógica de Programação)

Noções de algoritmos - Aula 1

AULA 02. Lógica de Programação. Centro Educação Profissional Ezequiel Ferreira Lima CEPEF. Curso Técnico em Eletrônica.

Algoritmos e Programação I

Subalgoritmos - motivação

Introdução à Pseudo-código PROGRAMAÇÃO I (COM06842) LÓGICA E TÉCNICA DE PROGRAMAÇÃO (COM06039)

PSEUDO-CÓDIGO. Nickerson Fonseca Ferreira

Pseudocódigo Exercício 6

2. Criação de Algoritmos

1. ALGORITMOS. São vários os conceitos para algoritmo. Escolhemos alguns para serem apresentados aqui:

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo

Algoritmos I Aula 5 Visualg

AULA 07. HABILIDADES TRABALHADAS: Desenvolver algoritmos utilizando laços a partir da leitura de fluxogramas ou algoritmos em portugol.

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

Introdução à Programação. Ceça Moraes

Aula 3: Algoritmos: Formalização e Construção

Aula 5 Controle do Fluxo de Execução

Curso Superior de Análise e Desenvolvimento de Sistemas. Disciplina: : Algoritmo 2009 / 1

1 ESTRUTURA SEQUENCIAL

Programação Básica de Computadores

Linguagem de Descrição de algoritmos

Linguagem de Programação I. Aula 02 Algoritmos

Lista de Exercícios 1 Algoritmos, Pseudocódigo e Fluxograma

LÓGICA DE PROGRAMAÇÃO 1

PPM CONTEÚDO. Lógica de programação Programação para manufatura Sistemas supervisorios PROGRAMAÇÃO PARA MANUFATURA 05/03/2009

2 Fluxogramas e Pseudocódigo

Introdução ao VisuALG

Capítulo 1 - Lógica e Algoritmos

Introdução à Algoritmos. Professora: Fabíola Gonçalves.

Programação de Computadores III

ALGORITMOS E PROGRAMAÇÃO

Introdução aos Algoritmos

Algoritmos e Estruturas de Dados

Algoritmos e Estrutura de Dados I Conceitos de Algoritmos. Prof. Elyssandro Piffer

Estruturas de Repetição

Transcrição:

Estrutura de Dados Algoritmos Antonio Felicio Netto antonio.felicio@anhanguera.com

Algoritmo O que é um algoritmo? Processo sistemático para computar um resultado a partir de dados de entrada O que são estruturas de dados? Maneira de organizar dados e operar sobre eles Algoritmos + estruturas de dados = programas Um programa é a expressão em linguagem formal (inteligível por um computador) de um algoritmo

Formas de Representar Algoritmo DESCRIÇÃO NARRATIVA Utiliza uma linguagem de escrita natural para descrever algoritmos. FLUXOGRAMA (DIAGRAMA DE MÓDULOS) Utiliza uma linguagem de representação gráfica para descrever algoritmos. LINGUAGEM ALGORÍTMICA (PSEUDO-CÓDIGO) Utiliza uma linguagem de escrita artificial para descrever algoritmos.

Exemplo de representação Um algoritmo para converter Fahrenheit e Celsius

Descrição Narrativa 1 - solicite a temperatura em Fahrenheit; 2 - transforme a temperatura em Fahrenheit para Celsius; 3- informe a temperatura em Celsius.

Fluxograma Seus principais símbolos gráficos são: = Início e final do fluxograma = Operação de entrada de dados = Operação de saída de dados em impressora = Operação de saída de dados em vídeo = Operações de processamento = Decisão = Seta de Fluxo de Dados

Fluxograma do algoritmo Início Início do algoritmo Fahrenheit Entrada da temperatura (F) Celsius = 5/9 * (Fahrenheit 32) Cálculo da temperatura (C) Celsius Apresentação do resultado Fim do algoritmo Fim

Linguagem Algorítmica A forma geral de um algoritmo em pseudo-código: Algoritmo <nome_do_algoritmo> [<declaração_de_variáveis>] [<sub-algoritmos>] Início <corpo_do_algoritmo> Fim

Linguagem Algorítmica Onde: Algoritmo Indica o início da definição do algoritmo. <nome_do_algoritmo> Nome dado ao algoritmo para distingui-lo dos demais. [<declaração_de_variáveis>] Parte opcional onde são declaradas as variáveis globais usadas no algoritmo principal e, eventualmente, nos sub-algoritmos.

Linguagem Algorítmica Onde: [<subalgoritmos>] Parte opcional onde são definidos os sub-algoritmos. Início Palavra que delimita o início do corpo do algoritmo. <corpo_do_algoritmo> Conjunto de instruções do algoritmo. Fim Palavra que delimita o término do corpo do algoritmo.

Pseudo-código do Algoritmo Algoritmo Fahrenheit-Celsius Real: Fahrenheit, Celsius; Início Leia (Fahrenheit); Celsius 5/9 * (Fahrenheit 32); Escreva (Celsius); Fim

Formas de representar o algoritmo Desc. Narrativa Fluxograma Ling. Algorítmica 1- Solicite a temperatura em Fahrenheit. 2- Transforme de Fahrenheit para Celsius. 3- Informe a temperatura em Celsius. Início Fahrenheit Celsius = 5/9 * (Fahrenheit 32) Celsius Algoritmo Fahrenheit-Celsius Real: Fahrenheit, Celsius; Início Leia (Fahrenheit); Celsius 5/9 * (Fahrenheit 32); Escreva (Celsius); Fim Fim

Formas de representar o algoritmo Descrição Narrativa Fluxograma Linguagem Algorítmica Vantagens O português é bastante conhecido por nós. Padrão mundial. Ferramenta bem conhecida. Figuras dizem muito mais que palavras. Independência de linguagem de programação. Usa o português como base. Define-se melhor quais e como os dados vão estar estruturados. Passagem quase imediata do algoritmo para uma linguagem de programação qualquer. Desvantagens Imprecisão. Pouca confiabilidade (a imprecisão acarreta a desconfiança). Extensão (normalmente, escreve-se muito para dizer pouca coisa). Complica-se à medida que o algoritmo cresce. Pouca atenção aos dados, não oferecendo recursos para declará-los. Exige a definição de uma linguagem não real para trabalho. Não é padronizada.

Construindo Algoritmos Uma boa prática para construir algoritmos é dividir o problema em 3 fases (Entrada, Processamento e Saída). Entrada Processamento Saída ENTRADA: São os dados de entrada do algoritmo. PROCESSAMENTO: São os procedimentos utilizados para chegar ao resultado final. SAÍDA: São os dados já processados.

Construindo Algoritmos No algoritmo Fahrenheit-Celsius temos: ENTRADA: Temperatura em Fahrenheit PROCESSAMENTO: Celsius = 5/9 *(Fahrenheit 32) SAÍDA: Temperatura em Celsius Num algoritmo para calcular a área de um triângulo temos: ENTRADA: Base e Altura do triângulo PROCESSAMENTO: Área = (Base * Altura)/2 SAÍDA: Área

Construindo Algoritmos Dividir o problema poderá ajudá-lo na solução (divisão e conquista); Por isso, antes de começar a elaborar o algoritmo divida o problema em: Que dados preciso para começar? Entrada Quais são os cálculos e decisões? Que dados devem ser exibidos Processamento Saída

Exercícios Identifique a entrada, o processamento e a saída dos problemas abaixo: 1. Calcular e exibir a média ponderada de 2 notas dadas. (nota1= peso 6 e nota2= peso 4) 2. Reajustar um salário em 17,75%. 3. Calcular o desconto de 23% sobre o preço de um produto. 4. Dada uma taxa de câmbio, transformar um valor em Dólar para Reais. 5. Dada uma taxa de câmbio, transformar um valor em Reais para Dólar.

Respostas 1 - Calcular e exibir a média ponderada de 2 notas dadas. (nota1= peso 6 e nota2= peso 4) ENTRADA: nota1 e nota2 PROCESSAMENTO: médiap=((nota1 * 6)+(nota2 * 4))/(6+4) SAÍDA: médiap 2 - Reajustar um salário em 17,75%. ENTRADA: salário PROCESSAMENTO: salárior = salário+(salário*0,1775) SAÍDA: salárior

Respostas 3- Calcular o desconto de 23% sobre o preço de um produto. ENTRADA: preço PROCESSAMENTO: desconto = preço*0,23 SAÍDA: desconto 4 - Dada uma taxa de câmbio, transformar um valor em Dólar para Reais. ENTRADA: câmbio e dólar PROCESSAMENTO: real = dólar * câmbio SAÍDA: real

Respostas 5- Dada uma taxa de câmbio, transformar um valor em Reais para Dólar. ENTRADA: câmbio e real PROCESSAMENTO: dólar = real/câmbio SAÍDA: dólar

Respostas 5- Dada uma taxa de câmbio, transformar um valor em Reais para Dólar. ENTRADA: câmbio e real PROCESSAMENTO: dólar = real/câmbio SAÍDA: dólar

Linguagem Algorítmica Adotaremos a seguinte sintaxe Algoritmo <nome_do_algoritmo> [<declaração_de_variáveis>] tipo: <nome> [<sub-algoritmos>] função <nome> <argumentos> : <retorno> Início <corpo_do_algoritmo> Fim

Linguagem Algorítmica Comandos: Condição : Se <comparação> então ; senão; fimse Laços: Enquanto <comparação> faça; fimenquanto Para <variável> até <valor> passo <incremento> faça; fimpara Atribuição: Entrada de dados : Leia (<variável>) Saída de dados : Escreva ( Texto <variavel)

Exercícios Elabore os algoritmos dos problemas abaixo: 1. Calcular e exibir a média ponderada de 2 notas dadas. (nota1= peso 6 e nota2= peso 4) 2. Reajustar um salário em 17,75%. 3. Calcular o desconto de 23% sobre o preço de um produto. 4. Dada uma taxa de câmbio, transformar um valor em Dólar para Reais.

Respostas Calcular e exibir a média ponderada de 2 notas dadas. (nota1= peso 6 e nota2= peso 4) Algoritmo CalculaNota Real: nota1, nota2, mediap Início Escreva ( Digite a Nota 1 ) Leia (nota1) Escreva ( Digite a Nota 2 ) Leia (nota2) mediap ((nota1 * 6)+(nota2 * 4))/(6+4) Escreva ( A média das notas é:, mediap) Fim

Respostas Reajustar um salário em 17,75%. Algoritmo ReajusteSalario Real: salario, salarior Início Escreva ( Digite o salário atual ) Leia (salario) salarior salario+(salario*0,1775) Escreva ( O salário reajustado é:, salarior) Fim

Respostas Calcular o desconto de 23% sobre o preço de um produto Algoritmo Desconto Real: desconto, preco Início Escreva ( Digite o preço do produto ) Leia (preco) desconto preco * 0,23 Escreva ( O desconto do preço do produto é de :, desconto ) Fim

Respostas Dada uma taxa de câmbio, transformar um valor em Dólar para Reais Algoritmo Cambio Real: vlrreal, vlrdolar, txcambio Início Escreva ( Digite o valor em Dólar ) Leia (vlrdolar) Escreva ( Digite a taxa de câmbio ) Leia (txcambio) vlrreal vlrdolar * txcambio Escreva ( O Valor em Reais é de R$, vlrreal) Fim

Respostas Dada uma taxa de câmbio, transformar um valor em Dólar para Reais Algoritmo Cambio Real: vlrreal, vlrdolar, txcambio Início Escreva ( Digite o valor em Dólar ) Leia (vlrreal) Escreva ( Digite a taxa de câmbio ) Leia (txcambio) vlrreal vlrdolar * txcambio Escreva ( O Valor em Reais é de R$, vlrreal) Fim