ALGORITMOS E LÓGICA DE PROGRAMAÇÃO · •Prova Parcial 2º Bimestre –04/11/2015 ... Slide 21...
Transcript of ALGORITMOS E LÓGICA DE PROGRAMAÇÃO · •Prova Parcial 2º Bimestre –04/11/2015 ... Slide 21...
04/08/2016
1
ALGORITMOS E LÓGICA DE PROGRAMAÇÃO
Prof. Esp. Fabiano Taguchi
http://fabianotaguchi.wordpress.com
ALGORITMOS E LÓGICA DE PROGRAMAÇÃO
• Carga horária: 60 horas/aula
• Aulas: Sextas – 19h00min às 20h15min
20h45min às 22h00min
• Formas de avaliação
Prova e listas de exercícios
Participação nas aulas
04/08/2016
2
APRESENTAÇÃO
Prof. Esp. Fabiano Taguchi
• Bacharel em Sistemas de Informação
• Pós graduado em Gestão de Projetos
• Pós graduado em Gestão de Tecnologia da Informação
Experiências profissionais...
COMPETÊNCIAS
• Conhecer e utilizar ferramentas matemáticas eestatísticas para modelar, simular e otimizar sistemas deprodução;
• Conhecer métodos e técnicas de desenvolvimento,implantação e gerenciamento de processos;
• Conhecer métodos e técnicas de gestão para tomada dedecisão.
04/08/2016
3
HABILIDADE
• Analisar e Interpretar;
• Liderar;
• Ser criativo;
• Relacionamento interpessoal;
• Trabalhar em equipe multiprofissional;
• Tomar decisão;
• Raciocinar de forma lógica;
• Raciocinar de forma crítica e analítica;
• Comunicar.
JUSTIFICATIVA DA DISCIPLINA
Permitir ao acadêmico desenvolver raciocínio lógicoaplicado à solução de problemas em nível computacional,além de introduzir os conceitos básicos de desenvolvimentode algoritmos, para propiciar-lhes visão crítica e sistemáticana resolução de problemas e prepará-los para a atividadede programação.
04/08/2016
4
OBJETIVOS E METODOLOGIA
Apresentar os conceitos iniciais de algoritmos, ensinartécnicas de programação e introduzir a linguagem deprogramação.
Serão aulas em quadro negro com utilização de recursosaudiovisuais, onde o conhecimento será apresentado,discutido e desenvolvido junto com o discente. Oprocedimento educacional se complementa com trabalhos,listas de exercícios e estudos auxiliados por computador(Práticas de laboratório).
METODOLOGIA
As aulas serão postadas no portal com 48 horas deantecedência à aula presencial.
FLIPPED CLASSROOM
• Pré-aula – Uso de artigos e vídeos curtos para introduçãodo assunto
• Aula – Quadro negro, computador e datashow paraapresentação do conteúdo
• Pós-aula – Exercícios para aplicação do conhecimentoadquirido
04/08/2016
5
PLANEJAMENTO DE ENSINO
UNIDADE DE ENSINO I
Algoritmos e Programação – Contextos e Práticas
– Histórico e definição de algoritmos: Perspectivas de linguagem;
– Tipos de dados e expressões: literais, lógicas e aritméticas;
– Representação de algoritmos e o ambiente de programação;
– Declaração de variáveis e constantes.
PLANEJAMENTO DE ENSINO
UNIDADE DE ENSINO II
Estruturas de decisão e seleção
– Instruções primitivas: entrada de dados, atribuição e saída;
– Estrutura condicional simples;
– Estrutura condicional composta;
– Estrutura condicional sequencial e encadeada.
04/08/2016
6
PLANEJAMENTO DE ENSINO
UNIDADE DE ENSINO III
Estruturas de seleção (case) e repetição
– Estrutura de múltipla escolha (case);
– Repetição condicional com teste no início;
– Repetição condicional com teste no final;
– Repetição controlada por variável.
PLANEJAMENTO DE ENSINO
UNIDADE DE ENSINO III
Vetores e matrizes
– Aplicação utilizando vetores e matrizes;
– Operações sobre vetores e matrizes;
– Os vetores como estrutura de dados;
– As matrizes como estrutura de dados.
04/08/2016
7
AVALIAÇÕES
Cada bimestre será composto por:
• Avaliação parcial – Peso 03
• Avalição oficial – Peso 07
Média bimestral – (MD1)*0,4 + (MD2)*0,6
As avaliações poderão ser realizadas a partir de exercíciosteóricos, seminários e utilização de artigos científicossobre o conteúdo da disciplina.
AVALIAÇÕES
• Prova Parcial I 1º Bimestre – 09/09/2016
• Prova Oficial I 1º Bimestre – 30/09/2016
• Prova Parcial 2º Bimestre – 04/11/2015
• Prova Oficial 2º Bimestre – 25/11/2016
• Segunda chamada – 12 a 14/12/2016
• Prova final – 19/12 a 22/12/2016
04/08/2016
8
REFERÊNCIAS BIBLIOGRÁFICAS
BÁSICAS
• FARRER, Harry Et Al. Programação estruturada de computadores: algoritmos estruturados. 3. ed. Rio de Janeiro LTC - Livros Técnicos e Científicos 2011. 284 p
• GERSTING, Judith L. Fundamentos matemáticos para a ciência da computação: um tratamento moderno de matemática discreta. 5. ed. Rio de Janeiro: LTC - Livros Técnicos e Científicos, 2004, 2008. 597 p. ISBN 9788521614227.
• MANZANO, José Augusto N. G; OLIVEIRA, Jayr Figueiredo de. Algoritmos: logica para desenvolvimento de programação de computadores. 26. ed. Sao Paulo Erica 2012. 328 p
REFERÊNCIAS BIBLIOGRÁFICAS
COMPLEMENTARES
• FERNANDA, Ascencio Ana. LÓGICA DE PROGRAMAÇÃO COM PASCAL. . São Paulo: Pearson Makron Book, 1999.
• MEDINA, Marco; FERTIG, Cristina. Algoritmos e programação: teoria e pratica. 2. ed. São Paulo: Novatec, 2006. 384 p
• SALIBA, Walter Luiz Caram. Técnicas de programação: uma abordagem estruturada. São Paulo: Makron Books, 1992. 141 p
04/08/2016
9
REFERÊNCIAS BIBLIOGRÁFICAS
COMPLEMENTARES
• CLAUDIO, Dalcidio Moraes; MARINS, Jussara Maria. Cálculo numérico computacional: teoria e pratica: algoritmos em pseudo-linguagem -indicacoes em software matematico - 150 exercicios resolvidos - exerciciospropostos. 3. ed. Sao Paulo: Atlas, 1994, 2000. 464 p
• CHAPRA, Steven C. Métodos numéricos para engenharia. 5. Porto Alegre ArtMed 2010 1 recurso online ISBN 9788580550115.
REFERÊNCIAS BIBLIOGRÁFICAS
OUTRAS FONTES DE PESQUISA
• REVISTA ON-LINE DE INFORMÁTICA, INOVAÇÃO E PESQUISA DA FACULDADE DE TECNOLOGIA DE SÃO JOSÉ DO RIO PRETO.
• REVISTA DE INFORMÁTICA TEÓRICA E APLICADA
• SciLab. Disponível em: <http://www.scilab.org>
04/08/2016
10
EXERCITANDO A LÓGICA
01 – Uma lesma deve subir um poste de 10m de altura. Dedia sobe 2m e à noite desce 1m. Em quantos dias atingirá otopo do poste?
02 – Três gatos comem três ratos em três minutos. Cemgatos comem cem ratos em quantos minutos?
EXERCITANDO A LÓGICA
03 – Qual o próximo número da sequência 7,8,10,13,17?
04 – Um pai de 80kg e suas 2 filhas (40kg cada), precisamsair de uma ilha com um barco. Porém a capacidade dobarco é de 80kg. Como farão para sair da ilha?
04/08/2016
11
ALGORITMOS
“Para programarmos em um computador, devemosconhecer e entender o que são os algoritmos e comoutilizá-los para determinar a sequência de passosnecessários para resolvermos determinados problemas ou,em outras palavras, encontrarmos a solução, ou a melhorsolução, para a implementação em uma linguagem deprogramação” (PIVA JUNIOR et al., 2012, p. 3).
FT1
ALGORITMOS
ALGORITMO É:
Conjunto de processosou ações que obedecema uma sequencia lógicapara executar tarefas.
FT1
04/08/2016
12
ATENÇÃO
Todas as ações que realizamos obedecem a uma sequência, e que esta precisa ser executada para que se consiga atingir o objetivo predeterminado.
• Trocar uma lâmpada
• Trocar o pneu de um carro
• Fazer café
FT1
ALGORITMOS
Todas as ações que realizamos obedecem uma sequencia lógica, e esta sequencia precisa ser obedecida para que um objetivo possam ser alcançado. E nisso são observadas:
• Sintaxe
• Programação estruturada
• Programação orientada a objetos
FT1
04/08/2016
13
ALGORITMO DE EUCLIDES
PASSOS:
1. Divide um número “a” por “b” e o resto de divisão échamado de “r”.
2. Substitui “a” por “b”.
3. Continua a divisão e substitui “b” por “r”.
4. Divide “a” por “b” até que um não possa ser maisdividido e o “a”, para esta situação, será o máximodivisor comum.
FT1
CARACTERÍSTICAS
Um algoritmos possui como características:
• Finitude;
• Definição;
• Entrada;
• Saída;
• Eficácia.
04/08/2016
14
ALGORITMOS
Com o estudo dos algoritmos a identificação dos passosserá facilitada. Um algoritmo funciona a partir de:
• Dados
• Processamento
• Informação
PROGRAMAÇÃO
As linguagens de programação visam possibilitar a inserçãodos passos ou ações que o software deverá executar,através de uma plataforma que permita, desde que respeitea sintaxe de cada uma, expressar a sequência lógicadeterminada no algoritmo ou em sua construção.
• Desktop
• Web
• Aplicativos móveis
FT1
04/08/2016
15
ORGANIZAÇÃO BÁSICA – PC
• Unidade de entrada;
• Unidade de saída;
• Unidade de processamento central;
• Memória.
ORGANIZAÇÃO BÁSICA – PC
04/08/2016
16
TABELA ASCIIAMERICAN STANDARD CODE
Tabela responsável por converter os caracteres para a suarespectiva combinação binária, desta forma, cada caractereé composto por 8 bits.
Disponível em: <http://www.ascii-code.com>
EXEMPLO PRÁTICOhttps://www.ufrgs.br/psicoeduc/hanoi/
04/08/2016
17
PROCESSO DE CONSTRUÇÃO
Compreender o problema
Definir os dados de entrada
Realizar o processamento
Definir os dados que
serão exibidos
DESCRIÇÃO NARRATIVA
Representação do problema é feita por meio da linguagemnatural, descrevendo os passos que devem ser seguidospara solução de um problema.
Exemplo: Algoritmo que efetua a soma entre doisnúmeros.
É preciso obter como entrada dois números quaisquer,esses números devem ser somados, e então o resultadoapresentado.
04/08/2016
18
FLUXOGRAMA
Consiste em uma notação gráfica que permite indicar asações e decisões.
SIMBOLOGIA
Declara o início e o fim do algoritmo
Indica a fase do processamento
Representa a entrada de dados
Usado para representar a saída de dados
Determina o fluxo do algoritmo
Estrutura condicional (Decisão)
04/08/2016
19
PSEUDOCÓDIGO
Representação do problema por meio de regras pré-definidas, essa linguagem em geral é conhecido comoportuguês estruturado.
Algoritmo soma
Var
valor1, valor2, soma: inteiro
Inicio
leia (valor1)
leia (valor2)
s <- valor1+valor2
Fim
EXERCÍCIO
Elabore um algoritmo que some quatro notas e calcule amedia aritmética dessas notas Ao final informe ao usuário amédia final obtida.
ENTRADAS?
PROCESSAMENTO?
SAÍDAS?
04/08/2016
20
PROBLEMÁTICA
Suponha que você e a sua equipe foram contratados para odesenvolvimento de um aplicativo que divulgue os serviçosde hotelaria e gastronomia dos comerciantes do litoral sul.
Uma das propostas da empresa é disponibilizar umprotótipo do aplicativo para celular que informamosusuários quais são os serviços de hotelaria e gastronomiadisponíveis naquela região.
PROBLEMÁTICA
É preciso definir em linguagem natural um algoritmo quedeixe clara a sequência lógica que terá de ser cumpridapara a solução do problema que os comerciantes do LitoralSul têm de resolver.
O que precisa ser feito?
04/08/2016
21
PROBLEMÁTICA
1. Início
2. Levantar requisitos do aplicativo junto aos comerciantes.
3. Escrever o plano de ação do projeto.
4. Obter a aprovação junto aos clientes.
5. Elaborar o algoritmo do software em questão em linguagem natural e em pseudocódigo.
6. Desenvolver o fluxograma das ações do aplicativo.
7. Direcionar à equipe de desenvolvimento do projeto para a implantação.
8. Desenvolver a solução utilizando uma linguagem de programação.
9. Realizar os testes.
10. Disponibilizar o aplicativo.
11. Encerrar o projeto.
ONDE PRATICAR
• VISUALG
Disponível em: www.apoioinformatica.com.br
• DEVC++
Disponível em www.bloodshed.net/devcpp.htm