Conceitos Básicos ENTRADA PROCESSAMENTO SAÍDA

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

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

ALGORITMOS AULA 1. Profª Amanda Gondim

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

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

Algoritmos e Programação

Algoritmos e Programação

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

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

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

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

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

GFM015 Introdução à Computação. Algoritmos. Ilmério Reis da Silva UFU/FACOM

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

Lógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto

ALGORITMOS CONCEITOS PRELIMINARES. Prof. Angelo Augusto Frozza, M.Sc.

Como representar um algoritmo?

Universidade Federal de Uberlândia Faculdade de Computação. Conceitos básicos de algoritmos Prof. Renato Pimentel. Computação

Aula 08 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Algoritmos e Linguagem de Programação I

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

Estrutura de Dados Algoritmos

Capítulo 1 Conceitos Básicos

Introdução à Programação. slides de Deise Sacol

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

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

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

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

Portugol. Tiago Alves de Oliveira

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

Introdução à Lógica de Programação. Adaptação de Luis Otavio Alvares

Aula 02. Algoritmos e Pseudocódigo

Introdução à Computação

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 à Lógica de Programação

Introdução à Programação. Prof. Gustavo Callou

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

Algoritmos e Técnicas de Programação

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

Fundamentos de Lógica e Algoritmos Aula 2.5 Conceitos Básicos de Algoritmos. Prof. Dr. Bruno Moreno

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

Fundamentos de Programação

Introdução a Programação

Introdução ao Conceito de Algoritmo e Programação Estruturada

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

Algoritmos e Programação

Algoritmos e Programação

Conceitos básicos de algoritmos

INTRODUÇÃO À PROGRAMAÇÃO

Desenvolvimento de Algoritmos. RAD 2119 Tecnologia de Informação Aplicada a Administração. Essa aula. Lógica e Pensamento Lógico. Lógica.

Programação Básica de Computadores

Disciplina de Algoritmos e Programação

#Conceituação. Algoritmos. Eliezio Soares

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

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

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

Capítulo 1 - Lógica e Algoritmos

Método para Construção de Algoritmos

Pseudocódigo e Visualg

Algoritmo: Definição. Algoritmo. O que é Lógica? Lógica de Programação. Mas e a Lógica de Programação?

Aula 4B. Lógica e Algoritmos. Profª. Fabiany

Introdução à Programação

Introdução aos Algoritmos

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

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

Introdução aos Algoritmos

Algoritmos Estrutura Condicional

Fundamentos de Lógica e Algoritmos. Aula 2.3 Introdução a Algoritmos. Prof. Dr. Bruno Moreno

Técnicas de Programação

Prof. Jorge Cavalcanti

Linguagem de Descrição de algoritmos

Conceitos Básicos de Algoritmos

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

Unidade 2: Algoritmos e programação

Desenvolvimento de Algoritmos. Slides elaborados pela Prof(a). Simone do Rocio Senger de Souza ICMC/USP

Programação de Computadores IV. Introdução a Algoritmos SLIDES CEDIDOS POR Bruno Marques

Transcrição:

Aula 02 - Algoritmos Disciplina: Algoritmos Prof. Allbert Velleniche de Aquino Almeida E-mail: allbert.almeida@fatec.sp.gov.br Site: http://www.allbert.com.br /allbert.almeida

Conceitos Básicos Desde o início de sua existência, o homem procurou criar máquinas para auxiliá-lo em seu trabalho, diminuindo o esforço físico e economizando tempo Hardware x software ENTRADA PROCESSAMENTO SAÍDA

Metodologia para desenvolvimento A metodologia utilizada se orienta pela sequência de aprendizado descrita na figura a seguir: Problema MENTE Utilização do Raciocínio MEIO FÍSICO Construção de Algoritmos Solução COMPUTADOR Implementação de Programas

Metodologia para desenvolvimento Tipos Utilização do Raciocínio Âmbito Construção do Algoritmo Implementação de Programas Mente Meio Físico Computador

Utilização do Raciocínio Pensar correta e ordenadamente na análise e resolução do problema. Formalmente, chamamos este processo de lógica de programação, que pode ser entendido como a habilidade em se utilizar corretamente o raciocínio na resolução de problemas.

Construção de Algoritmos Descrever adequadamente a solução pensada do problema em um meio físico através da sequencialização da solução em passos finitos. Formalmente, chamamos este processo de construção de algoritmos, que pode ser entendido como a habilidade de se utilizar corretamente a lógica de programação na construção de algoritmos, ou seja, a solução transcrita em passos.

Implementação de Programas Transcrever adequadamente para o computador o algoritmo que resolve o problema. Formalmente, chamamos a este conhecimento de programação, que pode ser entendido como a habilidade de se implementar corretamente os algoritmos em uma linguagem entendida pelo computador.

Conceito de algoritmo O uso de algoritmos está sempre presente na vida cotidiana das pessoas; Essa sequência de passos para solução de um problema não é única, da mesma forma que não existe um algoritmo único para a solução de um problema computacional;

Conceito de algoritmo Algoritmo é, então, um conjunto de passos (ações) que levam à solução de um determinado problema. Em geral, os caminhos que levam a uma solução são muitos. Um conjunto finito de regras que provê uma sequência de operações para resolver um tipo de problema específico [KNUTH] Sequência ordenada, e não ambígua, de passos que levam à solução de um dado problema [TREMBLAY]

Conceito de algoritmo Alguns algoritmos com os quais qualquer pessoa está acostumada a conviver são: instruções de como utilizar um aparelho eletrodoméstico; uma receita para preparo de um bolo ou algum prato; guia de preenchimento da declaração do imposto de renda; a maneira como as contas de água, luz e telefone são calculadas mensalmente, etc.

Ex. 1: Algoritmo para fazer um bolo. separar os ingredientes; se tiver batedeira bater os ingredientes na batedeira; senão bater os ingredientes à mão; colocar a massa na forma; ligar o forno; aguardar a temp. do forno atingir 200º C; colocar a forma no forno; aguardar o tempo de cozimento; retirar o bolo do forno; deixar esfriar;

Ex. 2: Algoritmo ao acordar de manhã. dar um beijo na esposa; levantar-se da cama; tomar um banho; tomar café; se casado há menos de um ano dar outro beijo na esposa; caminhar até a garagem; ligar o carro; dirigir-se para o trabalho;

Técnicas para elaboração de algoritmo ler atentamente o enunciado, destacando os pontos mais importantes; definir os dados de entrada; definir o processamento; definir os dados de saída; construir o algoritmo utilizando uma das ferramentas descritas na próxima seção; testar o algoritmo realizando simulações.

Ferramentas para representação de algoritmo As ferramentas mais comuns são: descrição narrativa fluxograma linguagem algorítmica (ou pseudocódigo, português estruturado, etc.)

Descrição narrativa Faz-se uso do português para descrever algoritmos. Ex.: Imaginem um problema onde o usuário tenha que entrar com dois números e o problema tenha que somar esses números e apresentar o resultado ao usuário. Entrar com o 1º número; Entrar com o 2º número; Somar o 1º e 2º número; Exibir o resultado;

Descrição narrativa Vantagens: o português é bastante conhecido por nós Desvantagens: imprecisão provocada pela ambiguidade; pouca confiabilidade (a imprecisão acarreta a desconfiança); extensão (normalmente, escreve-se muito para dizer pouca coisa).

Fluxograma Utilização de símbolos gráficos para representar algoritmos Processamento Sequência Decisão Entrada Saída Início Leia A, B C = A + B Escreva C Fim Terminal: Início e Fim

Fluxograma Vantagens: é uma ferramenta bastante conhecida; figuras dizem muito mais que palavras; padrão mundial. Desvantagens: faz com que a solução do problema já esteja amarrada a dispositivos físicos; pouca atenção aos dados, não oferecendo recursos para descrevê-los ou representá-los; complica-se à medida que o algoritmo cresce.

Português Estruturado (Pseudocódigo) Consiste na definição de uma pseudolinguagem de programação Ex.: Algoritmo soma Inicio leia (A) leia (B) C A+B escreva (C) Fimalgoritmo

Português Estruturado (Pseudocódigo) Vantagens: Independência física da solução; Usa o português como base; Pode-se definir quais e como os dados vão estar estruturados; Fácil mapeamento em uma linguagem de programação qualquer. Desvantagens: Exige a definição de uma linguagem não real para trabalho; Não padronizado.

Simulação de algoritmos Também conhecido como teste de mesa A partir de dados de teste cuja resposta é conhecida, simula-se a execução do algoritmo e compara-se a resposta obtida com a resposta esperada

Exemplo #1 Dado o seguinte problema: Cálculo da média de um aluno. Descrição: A média do aluno é composta por duas provas e duas séries de exercícios. A primeira prova tem peso 1 e a segunda tem peso 2, a média aritmética das séries de exercícios tem peso 1. Construa um algoritmo para calcular a média do aluno.

Solução Exemplo #1 1. Dados de Entrada Nota1 = 8.0 Nota2 = 7.5 Série1 = 10.0 Série2 = 8.0 2. Calcular a média: (N1 + N2 * 2 + ((S1+S2)/2))/4 3. Dados de saída: Média = 8.0

Solução Exemplo #1 (Narrativa) Entrar com a 1ª nota; Entrar com a 2ª nota; Entrar com a 1ª série de exercícios; Entrar com a 2ª série de exercícios; Calcular a média; Exibir a média;

Solução Exemplo #1 (Fluxograma) Início N1, N2, S1, S2 Média=(N1+N2*2+(S1+S2)/2)/4 Média Fim

Solução Exemplo #1 (Pseudocódigo) Algoritmo Calcular Média Inicio leia(n1) leia(n2) leia(s1) leia(s2) MEDIA <- (N1 + N2*2 + (S1 + S2) /2) /4 escreva(media) Fimalgoritmo

Exemplo #2 Dados três valores positivos, a, b e c, determine a sua média aritmética, harmônica, geométrica e ponderada com pesos de 1, 2 e 3 respectivamente. Quais as tarefas a serem executadas para a solução deste problema?

Solução Exemplo #2 1. Obter os valores para a, b e c. 2. Calcular a média aritmética. 3. Calcular a média harmônica. 4. Calcular a média geométrica. 5. Calcular a média ponderada. 6. Exibir os resultados. mm = 1 a + 2 b + 3 c 1 + 2 + 3