2.31k likes | 2.52k Views
CURSO ENGENHARIAS ELÉTRICA E MECÂNICA ALGORITMO E PROGRAMAÇÃO. Mardem Barbosa de Anchieta Rosa PITÁGORAS/CONTAGEM AGO/2012. FUNDAMENTOS DE PROGRAMAÇÃO. Algoritmos Baseados em Estruturas de Dados Homogêneas (vetores) Repetição com Teste no Final Repetição com Variável de Controle
E N D
CURSO ENGENHARIASELÉTRICA E MECÂNICA ALGORITMO E PROGRAMAÇÃO Mardem Barbosa de Anchieta Rosa PITÁGORAS/CONTAGEM AGO/2012
FUNDAMENTOS DE PROGRAMAÇÃO • Algoritmos Baseados em Estruturas de Dados Homogêneas (vetores) • Repetição com Teste no Final • Repetição com Variável de Controle • O Comando Abandone • Algoritmos Baseados em Estruturas de Dados Homogêneas (Matrizes) • Alternativa de Múltiplas Escolhas • Definição do Tipo Matriz • Definição de Novos Tipos • Algoritmos Baseados em Estruturas de Dados Heterogêneas (Matrizes) • Tipo registro • Registros usando Vetores e Matrizes • Procedimentos e Funções • Modularização • Objetivo do Curso • Objetivo da Disciplina • Introdução ao conceito de algoritmo e programação • Conceitos básicos • Conceito de Algoritmo • Estruturas Báscias de Controle • Estruturas de Dados • As Melhores práticas na construção de programas • Manutenibilidade • Flexibilidade • Documentação • A força e destruição do GOTO • Portugol • Introdução • Declaração de Variáveis • Tipos Básicos • Comandos Básicos • Blocos • Comandos de Entrada e Saída • Teste de Mesa • Operadores 2
Objetivo Curso • ENGENHARIAS: • MECÂNICA • O curso de Engenharia Mecânica tem como objetivo formar profissionais com uma sólida formação técnico-científica e profissional geral que o capacite a absorver e desenvolver tecnologias, estimulando a sua atuação crítica e criativa na identificação e resolução de problemas de Engenharia Mecânica, considerando seus aspectos político-econômicos, sociais, ambientais e culturais, com visão ética e humanística, em atendimento às demandas da sociedade. • O engenheiro mecânico é responsável pelo projeto, produção, operação e manutenção de máquinas, equipamentos e componentes mecânicos. Ele responde pela segurança, qualidade e eficiência operacional e energética de tais equipamentos e componentes. Além disso, gerencia equipes de trabalho, acompanha custos, prazos, cumprimento das normas de segurança, saúde e meio ambiente e ainda os padrões de qualidade. 4
Objetivo Curso • ENGENHARIAS: • ELÉTRICA • O Curso de Engenharia Elétrica tem como objetivo formar engenheiros eletricistas capacitados a atender às diferentes solicitações profissionais, com uma visão crítica, criativa e inovadora, através de uma sólida formação básica, geral e humanística, associada à sua formação profissional específica. 5
Objetivo da Disciplina • Algoritmo e Programação • Desenvolver nos alunos a competência e as habilidades necessárias para a concepção de soluções computacionais aplicadas aos problemas relativos à engenharia. 6
AVALIAÇÃO • Algoritmo e Programação • Avaliações parciais • Exercícios • Provas • Trabalhos • Desafios • Partipações 7
AVALIAÇÃO • Algoritmo e Programação • Valor das avaliações: • Parcial – 0 a 10 pontos • Oficial (1 por bimestre) – 0 a 10 pontos • Composição: (Teórico/prático) • Avaliação oficial = 70% da nota bimestral • Avaliação parcial = 30% da nota bimestral 8 8
AVALIAÇÃO • Algoritmo e Programação • Composição: (Prática) • Avaliação oficial = 0% da nota bimestral • Avaliação parcial = 100% da nota • bimestral 9 9 9
AVALIAÇÃO • Algoritmo e Programação • Nota do bimestre 10 10 10
AVALIAÇÃO • Algoritmo e Programação • Exame final • Nota final < 6 • Reprovação • Média bimestral < 4 • Média com exame final < 6 11 11 11 11
AVALIAÇÃO • Algoritmo e Programação 12 12 12 12 12
AVALIAÇÃO • Algoritmo e Programação • Frequência • 75% de frequência • 60 horas aulas • Máximo de 15 faltas. 13 13 13 13 13
AVALIAÇÃO • Algoritmo e Programação • 2ª chamada • Válida para as avaliações oficiais • 1 por semestre • Falta nas duas avaliações oficiais • Primeira = 0 • Segunda = Nota da 2ª chamada • (Toda a disciplina vista no semestre) 14 14 14 14 14
PROGRAMAÇÃO DAS AULAS • Algoritmo e Programação • programação 15 15 15 15 15 15
ENTREGA DE DESAFIOS • Entrega de trabalhos • Trabalhos entregues por e-mail • mardem.barbosa@pitagoras.com.br • No campo ASSUNTO DO E-MAIL digitar as seguintes informações: • PIT-EW-AP-2012s1-DESAFIO XX-DD/DD/AAAA-SEU NOME • Onde: • W: M – Mecânica, E – Elétrica • XX: Número do desafio; • DD: dia em que foi aplicado o desafio; • MM: Mês em que foi aplicado o desafio; • AAAA: Ano em que foi aplicado o desafio; • SEU NOME: SEU NOME. 16
Qual a missão desta ferramenta? AR VENTO FRIO CALOR Possibilitar a representação e o tratamento dos objetos do nosso mundo real.
Comos esses objetos são representados no computador? AR VENTO FRIO CALOR Através das suas características, propriedades, Atributos.
Comos esses objetos são representados no computador? Como esses conceitos são tratados no computador? Carro Fogo Pessoa AR VENTO A luz Vento e sua direção e velocidade Sol Através das suas características, propriedades, Atributos. Através dos programas
Comos esses objetos são tratados no computador? Como esses conceitos são tratados no computador? Carro Fogo Pessoa AR VENTO A luz Vento e sua direção e velocidade Sol Através de programas de computador. Através dos programas
NIVELAMENTO CONCEITOS BÁSICOS • 1ª lei Mardeniana. Tudo na informática termina em IF´s e MOVE´s.
Introdução ao conceito de algoritmo e programação • Conceitos Básicos • Concreto • Algo que tem existência própria • Abstrato • Algo que tem dependência de existência • Abstração • Foco na essência • Ação • É um evento que ocorre num período de tempo finito, estabelecendo um efeito intencionado e bem definido. • Exemplo: • -Levantar o pé; • -Deslocar o pé levantado para frente; • -Abaixar o pé levantado.
Introdução ao conceito de algoritmo e programação • Conceitos Básicos • Atividade • É a execução de uma tarefa ou ação. • Tarefa • Conjunto de ações. (Veja definição de ação) • No exemplo sobre ação dado no slide anterior, qual é a tarefa que pode ser relacionada ?_____________ • Processo • Conjunto de tarefas. • No exemplo de tarefa identificado acima, qual o processo pode ser relacionado ? _____________ 23
Introdução ao conceito de algoritmo e programação • Conceitos Básicos • Problema • É um resultado indesejado • Dado • Um valor qualquer • Informação • Valor com significado 24
____ ____ ____ ____ ____ ____ ____ ____ ____ Introdução ao conceito de algoritmo e programação • Conceitos Básicos Relacione as Figuras com Atividade, Ação, tarefa e Processo. 25
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • O que é um algoritmo ? • É a DESCRIÇÃO de um PADRÃO de COMPORTAMENTO, expresso em termos de um repertório BEMDEFINIDO e FINITO de AÇÕES“primitivas” , das quais damos por certo que elas podem ser executadas.
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • Identifique os padrões de comportamento abaixo que os objetos sugerem. • Sugestões dos alunos • Fritar Ovos________ • _________________ • _________________ • _________________ • _________________ • _________________ • _________________ 27 27 27
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • Identifique os padrões de comportamento abaixo que os objetos sugerem. • 1,5,9,13,17,21 Sugestões dos alunos • _________________ • _________________ • _________________ • _________________ • _________________ • _________________ • _________________ 28 28
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • Identifique os padrões de comportamento abaixo que os objetos abaixo sugerem. • Sugestões dos alunos • _________________ • _________________ • _________________ • _________________ • _________________ • _________________ • _________________ 29 29 29
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • Responda as perguntas abaixo: • Os padrões de comportamentos identificados nos slides anteriores são algoritmos ? Explique. • O que é necessário para que sejam um algoritmo ? • Tudo que está ao nosso redor pode ser entendido como tendo um padrão de comportamento ? Explique. 30 30
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • Boas lembranças • Um objeto não é um padrão de comportamento, mas ele sofre ou sugere um padrão de comportamento • Padrão de comportamento é EXPRESSO em termos de um ________ bem ______ e ______ de _______primitivas das quais estamos certos que podem ser executadas. • Cada frase expressa em um algoritmo é chamada de “comando” 31 31 31
Abrir a geladeira; Pegar ovo na geladeira; Fechar a geladeira; Colocar o ovo em cima da mesa; Abrir o armário; Pegar uma frigideira; Fechar o armário; Abrir a dispensa; Pegar o sal; Pegar o óleo; Ascender o fogão; Colocar a frigideira no fogão; Colocar óleo na frigideira; Trincar a casca do ovo; Quebrar o ovo dentro da frigideira; Esperar o ovo fritar; Retirar o ovo; Colocar em um prato. Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • Descrever o padrão de comportamento “FRITAR OVOS” • É a DESCRIÇÃO de um PADRÃO de COMPORTAMENTO, • expresso em termos de um repertório bem DEFINIDO e FINITO de AÇÕES “primitivas” , • das quais damos por certo que elas podem ser executadas.
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • Desafio 01 – valor xx pontos – Fazer dentro de sala. • Escolha dois dos padrões de comportamentos identificados nos slides 10 ao 12 e os descreva conforme o exemplo anterior. • A partir do conceito de algoritmo explique o sentido das seguintes palavras de acordo com o seu entendimento: • Descrever • Padrão de comportamento • Bem definido • Finito 33 33 33
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo Baseando-se no exemplo de descrição do padrão de comportamento “Fritar ovos” responda: • O exemplo dado é um algoritmo ? Explique. • Justifique a sua resposta da pergunta anterior baseando-se no conceito de algoritmos. • Existe(m) alguma(s) ação(ões) que não é(são) bem definida(s) ? Indique qual(is). • Existe(m) alguma(s) ação(ões) que não é(são) finita(s) ? Indique qual(is). • Indique no exemplo onde temos “atividades”. • Como pode ser classificada “Fritar ovos” ? • Como uma ação ? • Como uma tarefa ? • Como um processo ? • Como uma atividade ? Explique a sua resposta. 34 34 34 34
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo OS DOIS ASPECTOS IMPORTANTES DE UM ALGORITMO ASPECTO ESTÁTICO Analisando o exemplo de algoritmo “FRITAR OVOS”, identifique elementos que são ESTÁTICOS, ou seja, independente da execução do algoritmo, eles nunca mudarão. O texto que descreve os comandos A ordem dos comandos 35 35 35 35
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo OS DOIS ASPECTOS IMPORTANTES DE UM ALGORITMO ASPECTO ESTÁTICO Se alterarmos um dos verbos (não pelo seu sinônimo) que estão no início do comando mudamos o _____________, mudando também o seu resultado final, o seu efeito. 1. Abrir a geladeira; (arredar, arrumar) 2. Pegar um ovo na geladeira; 3. Fechar a geladeira;(virar, limpar) 4. Colocar o ovo em cima da mesa; 5. Abrir o armário;(fechar, tirar) 6. Pegar uma frigideira; 7. Fechar o armário;(abrir, pintar) 8. Abrir a dispensa; 9. Pegar o sal;(comprar, ensacar) 10. Pegar o óleo; 11. Ascender o fogão;(ligar, lavar) 12.Colocar a frigideira no fogão; 36 36 36 36
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo OS DOIS ASPECTOS IMPORTANTES DE UM ALGORITMO ASPECTO ESTÁTICO Se alterarmos a ordem dos comandos também mudamos o _____________, mudando o seu resultado final, o seu efeito. 1. Fechar a geladeira; 2. Pegar um ovo na geladeira; 3. Colocar o ovo em cima da mesa; 4. Pegar uma frigideira; 5. Abrir o armário; 6.Abrir a geladeira; 7. Fechar o armário; 8. Abrir a dispensa; 9. Pegar o sal; 10. Pegar o óleo; 11. Ascender o fogão; 12.Colocar a frigideira no fogão; 37 37 37 37
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo OS DOIS ASPECTOS IMPORTANTES DE UM ALGORITMO ASPECTO ESTÁTICO Concluindo, o texto sob o qual o algoritmo é criado, representa a parte estática do mesmo. Este texto é composto pelos comandos e a ordem em que eles estão dispostos. 38 38 38 38
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo OS DOIS ASPECTOS IMPORTANTES DE UM ALGORITMO ASPECTO DINÂMICO Analisando o exemplo de algoritmo “FRITAR OVOS”, identifique elementos que são DINÂMICOS, ou seja, podem mudar entre as execuções dos algoritmos que o efeito desejado do mesmo não muda. Os objetos sob os quais os comandos agem sobre eles 39 39 39 39
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo OS DOIS ASPECTOS IMPORTANTES DE UM ALGORITMO ASPECTO DINÂMICO Se alterarmos os objetos (por objetos da mesma classe) que estão no início do comando não mudamos o _____________, que continua produzindo o mesmo efeito desejado. 1. Abrir a geladeira; (arredar, arrumar) 2. Pegar um ovo na geladeira; 3. Fechar a geladeira;(virar, limpar) 4. Colocar o ovo em cima da mesa; 5. Abrir o armário;(fechar, tirar) 6. Pegar uma frigideira; 7. Fechar o armário;(abrir, pintar) 8. Abrir a dispensa; 9. Pegar o sal;(comprar, ensacar) 10. Pegar o óleo; 11. Ascender o fogão;(ligar, lavar) 12.Colocar a frigideira no fogão; 40 40 40 40
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo OS DOIS ASPECTOS IMPORTANTES DE UM ALGORITMO ASPECTO DINÂMICO Concluindo, os objetos tratados, usados no algoritmo constituem a parte dinâmica do mesmo. Ou seja, a cada execução do algoritmo os objetos podem ser diferentes e as ações sobre eles mudam as suas características o seu estado, que não modifica o efeito final desejado. Um exemplo disso é o ovo, uma vez frito, o próximo ovo a ser fritado, não é o mesmo da vez anterior, e o efeito esperado é o mesmo “OVO FRITO”......sacaram...? 41 41 41 41
Introdução ao conceito de Estruturas de Controle • Conceito de Algoritmo • Considere o seguinte RELATO de uma pessoa observando uma dona de casa: • Trazer a cesta com batatas do porão; • Trazer a panela do armário; • Descascar as batatas; • Devolver a cesta ao porão (EVENTO 1) – DESCASCAR BATATAS PARA O JANTAR (R1) 42 42 42 42
Introdução ao conceito de Estruturas de Controle • Conceito de Algoritmo • No outro dia a dona de casa novamente realiza outro evento, relatado pelo mesmo observador: • Trazer a cesta com batatas do porão; • Trazer a panela do armário; • Descascar as batatas; • Devolver a cesta ao porão (EVENTO 2) – DESCASCAR BATATAS PARA O JANTAR (R1) 43 43 43 43
Introdução ao conceito de algoritmo e programação • Conceito de Algoritmo • Desafio 02 – valor xx pontos – Fazer dentro de sala. • Os dois eventos “Descascar batatas para o jantar” são os mesmos ? Explique • Os dois relatos descrevem os mesmos eventos ? • Os dois relatos são os mesmos ? Explique usando o conceito de ESTÁTICO e DINÂMICO. • O quê os dois eventos tem em comum ? • Logo, os dois relatos descrevem o mesmo evento ? • Então os dois relatos podem ser transformados em um _____________. Entregar via e-mail na data xx/xx/xx 44 44 44 44 44 44 44 44
Introdução ao conceito de algoritmo e programação • Estruturas Básicas de Controle • SEQÜÊNCIA SIMPLES • Definida pelo símbolo “;” que tem o objetivo de indicar o término de um comando e estabelecer a ordem de execução dos comandos um após o outro de acordo como aparecem no texto. • Trazer a cesta com batatas do porão; • Trazer a panela do armário; • Descascar as batatas; • Devolver a cesta ao porão; (A1) 45 45 45 45 45 45 45 45
Introdução ao conceito de algoritmo e programação • Estruturas Básicas de Controle • Desafio 03 – valor xx pontos – Fazer dentro de sala. • O que significa o símbolo “;” em um algoritmo ? • Indique a ordem em que o (A1) será executado; • O que garante que o comando “Descascar as batatas;” não seja executado antes de “Trazer a panela do armário;” ? • Qual comando em (A1) não é finito ? • Defina os aspectos dinâmicos e estáticos em (A1). Entregar via e-mail na data xx/xx/xx 46 46 46 46 46 46 46 46
Introdução ao conceito de algoritmo e programação • Estruturas Básicas de Controle • CONECTOR CONDICIONAL SE.....ENTÃO • Suponhamos que toda vez que a cozinheira for descascar batatas ela põe um avental. Modifique o (A1) para representar esta nova situação. • Trazer a cesta com batatas do porão; • Trazer a panela do armário; • Descascar as batatas; • Devolver a cesta ao porão; (A1) 47 47 47 47 47 47 47 47
Introdução ao conceito de algoritmo e programação • Estruturas Básicas de Controle • CONECTOR CONDICIONAL SE.....ENTÃO • Com a introdução do comando “Colocar avental;”, temos um novo algoritmo, mesmo que o efeito final seja o mesmo, em função do texto que eles apresentam são algoritmos diferentes. • Trazer a cesta com batatas do porão; • Trazer a panela do armário; • Colocar o Avental; • Descascar as batatas; • Devolver a cesta ao porão; (A1) 48 48 48 48 48 48 48 48
Introdução ao conceito de algoritmo e programação • Estruturas Básicas de Controle • CONECTOR CONDICIONAL SE.....ENTÃO • Agora, suponha que a cozinheira só colocará o avental se ela estiver com uma roupa clara.Modifique o (A2) para representar esta nova situação. • Trazer a cesta com batatas do porão; • Trazer a panela do armário; • Descascar as batatas; • Devolver a cesta ao porão; (A2) 49 49 49 49 49 49 49 49
Introdução ao conceito de algoritmo e programação • Estruturas Básicas de Controle • CONECTOR CONDICIONAL SE.....ENTÃO • Esta nova estrutura de controle, chamada conector condicional SE...ENTÃO, permite ao algoritmo decidir sob determinadas condições e executar os comandos se a condição for verdadeira, ou não executar os comandos se a condição for falsa. • Trazer a cesta com batatas do porão; • Trazer a panela do armário; • Se roupa for clara Então • Colocar avental; • Descascar as batatas; • Devolver a cesta ao porão; (A3) 50 50 50 50 50 50 50 50