Buscar

Aula 1 ProgComp 2014 2 1308 Biotec

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Programação de Computadores 
Prof.a Camila Magalhães 
e-mail: camila.mag@gmail.com 
camila@xerem.ufrj.br 
Universidade Federal do Rio de Janeiro 
Campus Xerém 
Roteiro da Aula 
• Objetivos da Disciplina 
• Motivação 
• Informações sobre a Disciplina 
• Conceitos Introdutórios 
 
 
 
 
Objetivos da Disciplina 
• Solucionar Problemas 
 
• Programar em Python (Linguagem de 
Programação) 
 
• Desenvolver programas de computador 
 
Motivação 
• Prática do pensamento crítico e lógico 
 
• Desenvolvimento da capacidade de resolver 
problemas 
 
• Usuário de programas mais habilidoso 
 
• Diferencial no mercado de trabalho 
 
 
 
Motivação 
• Bioinformática e Biologia Computacional utilizam 
fortemente os programas de computador. 
 
• Exemplos: 
• Alinhamento de Sequências de Proteínas e de DNA 
• Simulação Computacional de Biomoléculas 
(Desenvolvimento de fármacos) 
Simulação Computacional de 
Biomoléculas 
Por que Python? 
• Linguagem poderosa com inúmeros recursos 
(estruturas de dados avançadas, orientação a objetos, 
bibliotecas etc.) 
 
• Linguagem simples 
 
• Muitas aplicações 
 
 
 
 
 
• Bibliografia Básica: 
• MENEZES, N., "Introdução à programação com Python", 
2010. 
• FERTIG, M., MEDINA, G. “Algoritmos e 
 Programação: teoria e prática” 
 
• Apoio: 
• Slides das Aulas 
• Listas de exercícios 
 
 
Sobre a Disciplina: 
Programa da Disciplina: 
1. Introdução a algoritmos. 
2. Ambientes de desenvolvimento e programação. Conceito de 
compiladores e interpretadores. 
3. Linguagem de programação: Estrutura de um programa, 
constantes e variáveis, tipos de dados, comandos de atribuição 
e de entrada e saída, operadores aritméticos e operadores 
lógicos; 
4. Estruturas de controle de fluxo; 
5. Estruturas de repetição; 
6. Estruturas de armazenamento; 
7. Funções; 
8. Arquivos. 
Sobre a Disciplina: 
 
• Aulas: 2 partes 
• Parte 1: Teórica 
• Parte 2: Prática (Exercícios - Avaliação Prática) 
 
• Monitoria: 
• Monitor: Mateus Felipe 
(mateus.schuchter@gmail.com) 
• 2as feiras, 15 – 17hs 
 
 
 
• Avaliação: 2 Provas (P1, P2) + Teste e Avaliação Prática 
(TAP): 
• P1 = 10,0 P2 = 5,0 TAP = 5,0 
• Média = (P1 + (P2 + TAP))/2 
 
 
 
 
 
 
Sobre a Disciplina: 
Critérios de Avaliação 
• Média = (P1 + (P2 + TAP))/2 
1. Média ≥ 7 -> Aprovação 
2. Média < 3 -> Reprovação 
3. 3,0 ≤ Média < 7,0 -> Prova Final (PF): toda a matéria 
• Média Final = (Média + PF)/2 
• Média Final ≥ 5 -> Aprovação 
• Média Final < 5 -> Reprovação 
 
 
Sobre a Disciplina: 
• 2a Chamada 
• Haverá apenas uma segunda chamada (casos especiais com 
justificativa comprovada), cobrindo toda a matéria lecionada 
na disciplina. 
 
Cronograma (Provável) 
• Prova 1: 17/09 
• Teste: 22/10 
• Prova 2: 12/11 
• Segunda Chamada: 19/11 (com justificativa por 
escrito) 
• Prova Final: 03/12 
 
Roteiro da Aula 
• Objetivos da Disciplina 
• Motivação 
• Informações sobre a Disciplina 
• Conceitos Introdutórios 
 
 
 
 
Algoritmo 
• Sequência finita de passos que leva à execução 
de uma tarefa 
 
• É uma descrição passo a passo de uma 
metodologia que conduz à resolução de um 
problema 
 
• Um conjunto de instruções que devem ser 
feitas para realizar uma tarefa. 
 
 
Resolução de Problemas 
• Exemplo de Problema: 
• Fazer uma omelete 
• Qual a sequência de passos necessária para atingir o 
objetivo? 
 
 
 
 
 
 
 
Passos para Fazer uma Omelete 
1. Quebrar ovos 
2. Bater ovos 
3. Adicionar sal 
4. Ligar o fogão 
5. Adicionar óleo na frigideira 
6. Colocar a frigideira no fogo 
7. Fritar os ovos batidos 
8. Verificar se está pronto 
9. Se sim, desligar o fogo 
10. Se não, voltar para o passo 8 
 
Observação Importante 
• Quanto à sequência lógica: 
• Se executarmos “fritar ovos batidos” antes de 
“bater ovos”, ou pior, antes de “quebrar ovos”, não 
iremos cumprir a tarefa “fazer omelete” 
 
 
 
 
 
 
 
Características de Algoritmos 
• Finitude: deve sempre terminar após um número finito de 
passos. 
 
• Definição: cada passo de um algoritmo deve ser precisamente 
definido (sem ambiguidades). 
 
• Entradas: deve ter zero ou mais entradas (fornecidas antes do 
algoritmo iniciar). 
 
• Saídas: deve ter uma ou mais saídas (resultado final do 
algoritmo). 
 
 
 
Características de Algoritmos 
• Efetividade: todas as operações devem ser suficientemente 
básicas de modo que possam ser executadas com precisão em um 
tempo finito por uma pessoa. 
 
 
Problema: Torre de Hanói 
• Objetivo: Passar todos os discos do pino A para o 
pino C, usando os pinos B e C como auxiliar, de 
forma que, um disco maior nunca fique sobre outro 
que seja menor (em nenhuma situação). 
 
 
 
 
 
 
 
Algoritmo: Torre de Hanói 
1. Mover o Disco Verde de A para C 
2. Mover o Disco Azul de A para B 
3. Mover o Disco Verde de C para B 
4. Mover o Disco Vermelho de A para C 
5. Mover o Disco Verde de B para A 
6. Mover o Disco Azul de B para C 
7. Mover o Disco Verde de A para C 
 
 
 
 
 
 
 
 
http://www.taringa.net/comunidades/webdesign/7850746/Aporte-js-Colga-tu-PC-con-las-torres-de-hanoi.html 
 
Algoritmos e Programas de 
Computador 
• Algoritmo = método para solucionar um 
problema 
 
• Programa = algoritmo + estruturas de dados 
expressos de forma a ser entendido pelo 
computador 
 
 
 
 
 
 
 
 
• Linguagem com sintaxe e semântica bem definidas 
• Usada para escrever programas 
• Mais “técnica” do que linguagens naturais 
• Menos “técnica” do que a linguagem nativa dos 
computadores (linguagem de máquina) 
 
Exemplos de Linguagens de programação: Python, 
Pascal, C, Cobol, Fortran, Java, entre outras 
 
 
Linguagem de Programação 
Algoritmos e Programas 
• Programas de computador tipicamente 
processam dados de entrada e produzem 
dados de saída 
 
 
 
 
Analogia com Robô Exemplo 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
http://loucosporrobos.blogspot.com.br/ 
 
• O que ele sabe fazer? 
• Ler (e guardar na memória) 
• Escrever 
• Realizar operações aritméticas básicas 
 
• Objetivo: Escrever um algoritmo 
para que o robô calcule a média aritmé- 
tica entre 3 números. 
 
 
Robô Exemplo x Computador 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
• O computador funciona de forma similar: 
 
• Lê dados de entrada (via teclado ou de um 
arquivo), que são guardados em variáveis na 
memória 
 
• O computador efetua processamento sobre os 
dados (na CPU: Central Processing Unit) 
 
• Escreve a saída (no monitor ou impressora) 
 
 
 
 
 
• Dados de entrada: os números para calcular a média 
• Processamento: Operações de soma e divisão 
• Dados de saída: a média calculada 
 
1. Quantas entradas? 
 
1. Quantas saídas? 
 
 
 
Especificando... 
 
 
 
• Instruções: as ações, ou seja, a sequência de passos 
necessária para resolver o problema 
 
 
 
 
 
 
O Processo 
 
 
 
• O computador não faz nada sozinho 
 
• Ele precisa que alguém diga para ele quaisos passos 
que precisam ser executados 
• Ele precisa que ensinemos a ele o ALGORITMO 
para resolver o problema! 
 
• Mas... o computador não entende qualquer instrução 
• Ele entende apenas um conjunto fixo de instruções 
 
 
 
Portanto: 
Exercícios 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
• Escreva um algoritmo para solucionar o seguinte 
problema: 
• Dispomos de duas vasilhas com capacidades de 9 e 4 
litros. As vasilhas não tem nenhum tipo de marcação, 
de modo que não é possível ter medidas como 
metade ou um terço. Escreva um algoritmo (sequência 
de passos), que usando as vasilhas de 9 e 4 litros 
encha uma terceira vasilha de medida desconhecida 
com seis litros de água. 
 
 
 
Exercícios 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
• Defina com suas próprias palavras: 
1. Algoritmo 
2. Programa 
3. Pseudocódigo 
4. Código-fonte 
5. Código-objeto 
6. Linguagem de máquina 
7. Linguagem de programação

Outros materiais