Noções de Algoritmos

Documentos relacionados
Estruturas de controle: Estrutura de DECISÃO

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

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..

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

ALGORITMOS AULA 1. Profª Amanda Gondim

Algoritmos: tipos de dados, variáveis e expressões

Introdução a programação Visão geral

PROGRAMA HelloWorld.java ESTRUTURA SEQUENCIAL. Programa HelloWorld.java

Linguagens de Programação

Algoritmos e Técnicas de Programação

Portugol. Tiago Alves de Oliveira

Algoritmos e Programação

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

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

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

Conceitos Básicos. Fundamentos de Programação de Computadores

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

Introdução à Programação Estruturada Parte 2. Material da Prof. Ana Eliza

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

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

Algoritmos e Programação

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

Prof. Jorge Cavalcanti

Introdução aos algoritmos computacionais

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

Introdução a Computação

AULA 02. OBJETIVO: Desenvolvimento e solução de Algoritmos. LÓGICA DE PROGRAMAÇÃO

Algoritmos e Programação. Ederson Luiz da Silva Ciência da Computação

INF 1005 Programação I

Introdução a Programação de Jogos

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Programação Estruturada Aula VisualG

É neste ponto que entra o conceito de lógica de programação.

Algoritmos e Linguagem de Programação I

Capítulo 1 Conceitos Básicos

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

Algoritmos e Programação

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2

ESTRUTURAS DE REPETIÇÃO - PARTE 1

PSEUDO-CÓDIGO. Nickerson Fonseca Ferreira

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

Linguagem de Descrição de algoritmos

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

Introdução à Programação

Conceitos Básicos de Algoritmos

Programação de Computadores I Introdução PROFESSORA CINTIA CAETANO

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

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Introdução à Computação Prof. André Luís Belini

Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação CLPs: Norma IEC 61131

Algoritmos e Programação. Ederson Luiz da Silva Ciência da Computação

Algoritmo e Programação Matemática

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

Método para Construção de Algoritmos

ESTRUTURA CONDICIONAL E SELEÇÃO

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

Introdução a Computação

Agenda. Programação estruturada. Sequência. Decisão: Desvio de fluxo INTRODUÇÃO. Expressões lógicas.

INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO. ANÁLISE E DESENVOLVIMENTO DE SISTEMAS/PARANGABA PROF. MS. RONNISON REGES VIDAL Ceará, 01 de fevereiro de 2017

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

I - CONCEITOS INICIAIS

Manipulação de informação. Algoritmos computacionais

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

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35

Conceitos básicos de algoritmos

INFORMÁTICA APLICADA AULA 05 ALGORITMOS

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

Introdução aos Algoritmos

Programação Aplicada à Engenharia

Noções de algoritmos - Aula 1

Unidade 2: Algoritmos e programação

Fundamentos de Programação 1

Introdução à Ciência da Computação ICC0001 Prof. Diego Buchinger

CCI - 22 Matemática Computacional

Ivanovitch Medeiros Dantas da Silva. Natal, 01 de setembro de 2011

Fundamentos de Programação

4) Defina o que vem a ser um algoritmo, e porque, o mesmo depende do processo.

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

Disciplina: Introdução a Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer. Índice: Aula1 - Introdução Programa Algoritmo

Introdução aos Algoritmos

Comandos de desvio de fluxo. Expressões lógicas.

Conceitos Básicos ENTRADA PROCESSAMENTO SAÍDA

Algoritmos Computacionais

Pseudocódigo e Visualg

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

05/11/2018. Linguagem de Programação e Estruturada

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4

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

Disciplina: Algoritmos e Programação Professor: Paulo César Fernandes de Oliveira, BSc, PhD

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

AULA TEÓRICA 03 COMANDO CONDICIONAL

Algoritmos e Técnicas. Lógica de Programação. É a técnica de encadear pensamento para atingir determinado objetivo.

Números binários e erros

Lógica e Linguagem de Programação Aula 03 - Estruturas de controle Estrutura Condicional - Exercícios Resolvidos Professor: Danilo Giacobo

CAI Fluxograma Revisão 7

Universidade Federal de Roraima Departamento de Matemática Introdução à Ciência da Computação

Conceitos Básicos. Professor: Juliano Lucas Gonçalves.

Transcrição:

Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Noções de Algoritmos DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1

Tópicos da aula Algoritmos Definições. Requisitos. Formas de representação. Criação de algoritmos. 2

Algoritmos: definições Um algoritmo é um processo sistemático para a resolução de um problema. [Szwarcfiter, 1994] Um algoritmo computa uma saída, o resultado do problema, a partir de uma entrada, as informações inicialmente conhecidas e que permitem encontrar a solução do problema. [Szwarcfiter, 1994] 3

Algoritmos: definições Uma sequência finita de regras, raciocínios ou operações que, aplicada a um número finito de dados, permite solucionar classes semelhantes de problemas. [Piva et al, 2012] Conjunto de regras e procedimentos lógicos perfeitamente definidos que levam à solução de um problema em um número finito de etapas. [Piva et al, 2012] 4

Algoritmos: palavras-chave 5

Requisitos para um Algoritmo Finitude: Sempre deve ter um final após um número finito de etapas. Definição: Cada etapa do algoritmo deve ser definido com precisão. Entrada: Um algoritmo deve possuir zero ou mais entradas. Saída: Um algoritmo deve possuir uma ou mais saídas. 6

Algoritmos x Programas Não confunda algoritmos com programas. O algoritmo é um conjunto de instruções para realizar uma tarefa. Um algoritmo escrito em uma linguagem de programação e traduzido para linguagem de máquina é chamado de programa. Algoritmo Programa Processo 7

Formas de Representação de Algoritmos Linguagem natural (descrição narrativa). Representação do algoritmo através de descrição narrativa das instruções/passos. Fluxograma - Linguagem gráfica. Representação dos passos do algoritmo através de elementos gráficos. Diagrama de blocos. Pseudolinguagem. Representação do algoritmo mais próxima de uma linguagem de programação de alto nível. A sintaxe da representação inclui elementos das linguagens de programação. Português estruturado Portugol. 8

Criação de Algoritmos Exemplo 01: Construir um algoritmo para converter um número binário em decimal. O número binário contém 3 bits, que são informados pelo usuário. E no final da conversão, ou melhor, no final do algoritmo é obrigatório mostrar ao usuário o valor decimal. 9

Criação de Algoritmos Exemplo 01: Processamento Construção de um algoritmo para converter um número binário em decimal. O número binário contém 3 bits, que são informados pelo usuário. E no final da conversão, ou melhor, no final do algoritmo é obrigatório mostrar ao usuário o valor decimal. Saída Entrada(s) 10

Criação de Algoritmos: Exemplo 01 Linguagem natural 1. Ler o dígito da posição 0 (B0). 2. Ler o dígito da posição 1 (B1). 3. Ler o dígito da posição 2 (B2). 4. Multiplicar os dígitos (B0, B1 e B2) pelos pesos posicionais(2², 2¹ e 2^0, ou, 4, 2 e 1). X0 = B0 * 1 X1 = B1 * 2 X2 = B2 * 4 5. Somar os resultados das multiplicações do passo anterior. X = X0 + X1 + X2. 6. Escrever o valor de X. 11

Criação de Algoritmos: Exemplo 01 Linguagem natural Passo 1 Operação de leitura / Entrada de dados. Ler o dígito da posição 0 (B0). Passo 2 Operação de leitura / Entrada de dados. Ler o dígito da posição 1 (B1). Passo 3 Operação de leitura / Entrada de dados. Ler o dígito da posição 2 (B2). Passo 4 Operação aritmética. Multiplicar os dígitos pelos pesos posicionais. Passo 5 Operação aritmética. Somar os resultados das multiplicações do passo anterior. Passo 6 Operação de escrita / saída de dados. Escrever o valor de X. 12

Criação de Algoritmos: Exemplo 01 Fluxograma by: creately.com 13

Criação de Algoritmos: Exemplo 01 Fluxograma by: creately.com 14

Criação de Algoritmos: Exemplo 01 Pseudolinguagem 15

Criação de Algoritmos: Exemplo 01 Pseudolinguagem Semelhante as linguagens de programação, existe uma estrutura a ser seguida. Existem palavras reservadas: algoritmo, var, inteiro, inicio, fim algoritmo... 16

Criação de algoritmos Criação de algoritmos em pseudolinguagem. Utilizando a IDE VisualG. Criação de algoritmos/programas na linguagem C. Utilizando a IDE Code Blocks. Criação de algoritmos/programas na linguagem Java. Utilizando a IDE Netbeans. 17

Criação de algoritmos: Exemplo 02 Exemplo 02: Construir um algoritmo para calcular as raízes de uma equação de segundo grau dada por f(x) = ax + bx + c. O usuário deverá informar os valores de a, b e c, e o algoritmo deve mostrar os valores das raízes de acordo com a fórmula de Bhaskara. 18

Criação de algoritmos: Exemplo 02 Exemplo 02: Construir um algoritmo para calcular as raízes de uma equação de segundo grau dada por f(x) = ax + bx + c. O usuário deverá informar os valores de a, b e c, e o algoritmo deve mostrar os valores das raízes de acordo com a fórmula de Bhaskara. Entradas: valores das constantes a, b e c. Saídas: 2 raízes da equação de segundo grau (x1, x2). 19

Criação de Algoritmos: Exemplo 02 Linguagem natural 1. Ler o valor de a. 2. Ler o valor de b. 3. Ler o valor de c. 4. Calcular o valor de delta : delta = (b^2) (4 * a * c) 5. Calcular os valores das duas raízes: raiz1 = (-b + raiz(delta)) / (2*a) raiz2 = (-b - raiz(delta)) / (2*a) 6. Escrever os valores das raízes (raiz1 e raiz2). 20

Criação de Algoritmos: Exemplo 02 Fluxograma by: creately.com 21

Criação de Algoritmos: Exemplo 02 Pseudolinguagem 22

Criação de Algoritmos: Exemplo 02 Pseudolinguagem Cuidados! Organize suas operações aritméticas. Organize TODO seu código. ORGANIZAÇÃO é a palavra chave de um bom algoritmo. 23

Execução do Exemplo 02: E se a equação de segundo grau não tiver raízes reais (delta < 0), o que fazer? Próximas aulas: estruturas de decisão. 24

Referências Piva Junior, D., et al. Algoritmos e Programação de Computadores. Editora Campus: Rio de Janeiro, 2012. Szwarcfiter, J. L.; Markenzon, L. Estruturas de Dados e seus Algoritmos. Editora LTC, 1994. 25

Dúvidas? Dúvidas por email: heitorm@dca.ufrn.br 26