Aula 1 - Introdução Cleverton Hentz

Documentos relacionados
Programação Básica de Computadores

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

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

Aula 02. Algoritmos e Pseudocódigo

Introdução à Programação

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

Pseudocódigo e Visualg

Aula 2 - Introdução Cleverton Hentz

Algoritmos e Programação de Computadores Disciplina:

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

Computadores = cérebros eletrônicos?

Algoritmos e Fluxogramas

Programação em C. Victor Amorim dos Santos

INTRODUÇÃO À PROGRAMAÇÃO. Introdução à Algoritmos. Prof. Me. Sérgio Carlos Portari Júnior

Programação em C. Victor Amorim dos Santos

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

ALP Algoritmos e Programação

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

Algoritmos e Linguagem de Programação I

Algoritmos e Técnicas de Programação

Desenvolvimento de algoritmos Desenvolvimento de Algoritmos

Capítulo 1 - Lógica e Algoritmos

Introdução à Computação

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

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

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

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

INTRODUÇÃO À PROGRAMAÇÃO

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

CAPÍTULO 1 - INTRODUÇÃO. Objetivos da aula

Algoritmos e Programação

Fábio Rodrigues / Israel Lucania

#Conceituação. Algoritmos. Eliezio Soares

Algoritmos e Técnicas de Programação

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

Algoritmos e Linguagem de Programação I

ALGORITMOS AULA 1. Profª Amanda Gondim

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

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

Programação em C. Victor Amorim dos Santos

Introdução à Programação

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

Universidade Veiga de Almeida Algoritmos e Linguagem I

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

Programação de Computadores:

Introdução à Algoritmia

CONCEITO DE ALGORITMO

Técnicas de Programação

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

Introdução aos Algoritmos

UFCD 0804 Algoritmos

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

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

Algoritmos e Programação

Algoritmo. Conjunto finito de instruções que permitem a realização de uma tarefa. 2.1: Introdução 2. ALGORITMOS

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

ALGORITMOS ALGORITMOS ALGORITMOS. Natureza dos passos. Apresentação das Estruturas de Algoritmos - Fluxograma

INTRODUÇÃO A LÓGICA DE PROGRAMAÇÃO

Aula 02 ALGORITMOS. Introdução à Computação

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

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

Revisão Histórico das Linguagens de Programação

Lógica de Programação

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

Programação de Computadores III

INF1005: Programação I. Algoritmos e Pseudocódigo

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

Patrícia de Siqueira Ramos. UNIFAL-MG, campus Varginha. 21 de Março de 2018

Programação para Games I

Aula 1: Desenvolvimento de Algoritmos

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

Algoritmos. 1 - Introdução à construção de Algoritmo pode ser definido como um conjunto finito de regras bem

Introdução a Algoritmos

Conceitos Básicos ENTRADA PROCESSAMENTO SAÍDA

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

Análise e Técnicas de Algoritmos

INF 1005 Programação I

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

Introdução à Programação de Computadores Parte II

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

Fundamentos de Programação

INTRODUÇÃO A PROGRAMAÇÃO

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

LO GICA E TE CNICA DE PROGRAMAC ÃO. TÁSSIO JOSÉ GONÇALVES GOMES

Pseudocódigo e visualg

Algoritmos I Aula 2 Lógica de Programação

CONCEITOS DE ALGORITMOS

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

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

Prof. Paulo Villa Aula 1

Algoritmos. Prof. Jonatas Bastos Site:

Linguagem C. André Tavares da Silva.

Introdução a Programação de Jogos

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

Noções de Lógica Algoritmos e Lógica de Programação. Reinaldo Gomes

Conceitos e Representação de Algoritmos

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

Programação de Computadores III

Algoritmos Lógica e Programação Prof. Me. Adelson Felipe Dias Nogueira

Transcrição:

Aula 1 - Introdução Cleverton Hentz

Sumário da Aula O que é um algoritmo? Exemplos de algoritmos. Principais características. 2

Introdução Um algoritmo é um procedimento bem definido que recebe um conjunto de valores como entrada e produz um conjunto de valores de saída; Os algoritmos podem ser utilizados tanto na informática quanto em outros processos que não sejam computadorizados; Os algoritmos são utilizados na construção de programas de computador. 3

Exemplo Informal de Algoritmo Imagine a seguinte situação: O pneu do seu carro furou, agora você precisa trocá-lo! Para isso, você vai precisar: 1) Pegar o pneu reserva; 2) Afrouxar ligeiramente as porcas; 3) Suspender o carro com o macaco; 4) Retirar as porcas e o pneu furado; 5) Colocar o pneu reserva e as porcas; 6) Abaixar o carro; 7) Dar o aperto final nas porcas; 8) Guardar o pneu furado. 4

Noções Básicas Na tarefa de trocar um pneu, vemos que há uma sequência de ações envolvidas: Algumas devem ser feitas obrigatoriamente antes das outras: Retirar as porcas e o pneu furado; Colocar o pneu reserva e as porcas. Essas ações tem começo (motivação) e fim (solução) bem definidos; A descrição das ações é documentada em uma notação que possa ser compreendida e reproduzida por outros (No caso, a língua portuguesa escrita). 5

Algoritmos O exemplo da troca de pneu, é um exemplo de um algoritmo não-computacional (aplicado a uma situação do dia-a-dia); Como vimos no exemplo da troca de pneu, essa definição aplica-se a diversas situações do nosso dia-adia. Você consegue imaginar algumas dessas situações?? 6

Exemplos no dia-a-dia Receita de comida, Troca de uma lâmpada queimada, Conserto de um objeto, Preenchimento de um formulário, Compra e/ou venda de um produto, etc. 7

Algoritmos No algoritmo da troca de pneu, vimos uma aplicação de algoritmo no dia-a-dia. Esse algoritmo é dito nãocomputacional Se submetêssemos esse algoritmo a um computador, ele não saberia o que fazer A linguagem que utilizamos (língua portuguesa escrita) e a forma de abordar o problema não é adequada para que um computador entenda. Neste curso, estamos interessados em algoritmos computacionais, esses poderão ser utilizados na construção de programas de computador. 8

Aplicações Os algoritmos podem ser utilizados: Na descrição de um problema: o próprio algoritmo passa a ser uma notação padrão Assim, essa descrição pode ser reutilizada por outros, que utilizam diferentes notações Para facilitar a comunicação de uma solução/problema de forma genérica, omitindo detalhes sem tanta importância Exemplo: Codificar uma solução diretamente em uma linguagem de programação exige que se entre em detalhes (ambiente operacional, funções da linguagem, estruturas de dados particulares, etc.) que podem fugir ao foco do problema, tornando a descrição mais complexa. 9

Principais Características Podem existir diversos algoritmos para resolver um mesmo problema: Maior ou menor consumo de recursos (esforço, tempo, processador ou memória de um computador): eficiência em relação ao recurso; Melhor, médio, ou pior caminho para atingirmos a solução desejada; Maior ou menor detalhamento. Os algoritmos podem ser classificados de acordo com a sua saída produzida: 10 Determinístico: Sua execução sempre produz uma mesma saída para uma entrada dada; Não-determinístico: Podem produzir saídas diferentes para uma mesma entrada dada.

Exemplo de Algoritmos Alternativos Algorimo troca de pneu 1) Pegar o pneu reserva 2) Afrouxar ligeiramente as porcas; 3) Suspender o carro com o macaco; 4) Retirar as porcas e o pneu furado; 5) Colocar o pneu reserva e as porcas; 6) Abaixar o carro; 7) Dar o aperto final nas porcas. Após essas duas formas de escrever o algoritmo da troca de pneus, ainda temos como modificá-lo? 11 Algorimo troca de pneu com teste (mais detalhado) 1) Verificar se o pneu está furado ou apenas baixo 1) Pneu está furado 1) Pegar o pneu reserva 2) Afrouxar ligeiramente as porcas; 3) Suspender o carro com o macaco; 4) Retirar as porcas e o pneu furado; 5) Colocar o pneu reserva e as porcas; 6) Abaixar o carro; 7) Dar o aperto final nas porcas. 2) Pneu apenas baixo 1) Encher o pneu

Principais Características Um algoritmo fixa um padrão de comportamento a ser seguido Após um tempo finito, deve produzir uma resposta; Caso uma resposta não possa ser obtida, devido a um erro interno, ou a um conjunto de dados de entrada inadequado, o algoritmo deve indicar o motivo do erro. 12

Definição Revisitada Vemos aqui uma nova definição para o conceito de algoritmo: Um algoritmo é uma sequência ordenada e finita de operações que, quando executada sobre dados convenientes, produz uma solução para um problema ou a indicação de que esta solução não pode ser obtida. 13

Método para a construção de algoritmos 1. Entender corretamente o problema a ser resolvido (ler atentamente o enunciado); 2. Extrair do enunciado as entradas que o algoritmo irá receber; 3. Obter da descrição do problema a saída desejada (qual o objetivo do algoritmo?); 4. Descrever o processamento do algoritmo em si, ou seja, a transformação das entradas recebidas no resultado esperado. 14

Exercício Seguindo as instruções do método para construção de algoritmos do slide anterior, elabore um algoritmo para calcular a média aritmética de um aluno dadas as notas que ele tirou no primeiro e segundo bimestres. O algoritmo deve informar se o aluno foi aprovado, se ele ficou na prova final ou se ficou em dependência. Quais são as entradas deste algoritmo? Quais são as saídas? Como devemos fazer o processamento do algoritmo, ou seja, dadas as entradas, como devemos obter a saída? OBS.: A média aritmética é definida por: n1 + n2 / 2 (nota1 + nota2 dividido por 2) 15

Exercício Utilizando a língua portuguesa escrita elabore um algoritmo que descreva passo-a-passo o procedimento para a troca de uma lâmpada queimada. Você deve pensar nas possíveis situações que podem ocorrer. Por exemplo, se a lâmpada não estiver queimada?, e se a nova lâmpada, que você trocou também estiver queimada? 16