1 / 40

Tema: Descrição e construção básica de algoritmo: operadores matemáticos

Tema: Descrição e construção básica de algoritmo: operadores matemáticos e lógicos, tipos de dados, atribuição, leitura e escrita Professor MSc . Edilene A. Veneruchi de Campos. Objetivos deste encontro Entender e usar diferentes tipos de dados;

anana
Download Presentation

Tema: Descrição e construção básica de algoritmo: operadores matemáticos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tema: Descrição e construção básica de algoritmo: operadores matemáticos e lógicos, tipos de dados, atribuição, leitura e escrita Professor MSc. Edilene A. Veneruchi de Campos

  2. Objetivos deste encontro • Entender e usar diferentes tipos de dados; • Criar e usar variáveis • Linearizar expressões matemáticas para uso em algoritmos; • Conhecer e aplicar operadores matemáticos, relacionais e lógicos; • Criar algoritmos com estrutura sequencial; • Criar algoritmos com estrutura condicional.

  3. Tipo de Dados Define o espaço de memória necessário para armazenar um valor que será utilizado pelo algoritmo. Espaço de memória cujo conteúdo não pode ser alterado durante a execução é chamado de constante. Espaço de memória cujo conteúdo pode ser alterado durante a execução é chamado de variável.

  4. Possíveis tipos de dados • Tipo Inteiro • Tipo Real • Tipo Caractere • Tipo Lógico Exemplo: Var idade: INTEIRO; peso: REAL; tamanho: CHAR; situacao: LOGICO;

  5. Matemática e programação ? Grande parte dos problemas computacionais trabalha com números e com funções matemáticas Fonte: http://commons.wikimedia.org/wiki/File:Lots_ of_math_symbols_and_numbers.svg

  6. Exemplos de função f(x) = 2x + 1 ou y = 2x + 1 y 5 3 1 x -1 1 2 -1

  7. Exemplos de função f(x) = x2 ou y = x2 y 4 1 x -2 -1 0 1 2

  8. Exemplos de função

  9. Operadores aritméticos básicos em linguagem algorítmica Fonte: Adaptado de Piva Jr et al (2012) Em algoritmos (ou programas) não são usados colchetes e chaves. Utiliza-se apenas parêntesis.

  10. Linearizando funções matemáticas

  11. Operadores aritméticos mais complexos em linguagem algorítmica Fonte: Adaptado de Piva Jr et al (2012)

  12. Funções matemáticas em linguagem algorítmica Fonte: Adaptado de Piva Jr et al (2012)

  13. Linearizando funções matemáticas

  14. Tomada de Decisão Em programação, decisão significa definir um dentre dois possíveis caminhos a seguir dentro do algoritmo. Exige análise de uma situação. A partir do resultado desta análise define-se qual o caminho apropriado.

  15. Estrutura Condicional Simples Permite decidir se um comando (ou um conjunto de comandos) será executado caso uma situação se mostre verdadeira. ... Falsa ... Inicio Fim Condição ? Verdadeira Ações

  16. Exemplo Exemplo: acrescentar bônus de R$ 300,00 ao salários dos funcionários que possuírem 3 filhos ou mais. Algoritmo “Salario” Var S, F: INTEIRO ESCREVA(“Digite salário: “); LEIA (S) ESCREVA(“Digite qtd de filhos: “); LEIA (F) SE F >= 3 ENTAO S  S + 300 FIMSE ESCREVA (“Salário é ”, S) fimalgoritmo Inicio S, F Sim S  S + 300 F >=3 Não S  S + F Fim

  17. Estrutura Condicional Composta Permite decidir qual, dentre dois possíveis caminhos, será executado. A decisão será tomada com base na análise de uma situação. ... Fim Ações 2 Inicio Verdadeira ... Falsa Condição ? Ações 1

  18. Exemplo Algoritmo “Maior” Var a, b: INTEIRO ESCREVA(“Digite o valor de a: “); LEIA (a) ESCREVA(“Digite o valor de b: “); LEIA (b) SE a > b ENTAO ESCREVA ( “Maior é ”, a) SENÃO ESCREVA (“Maior é ”, b) fimalgoritmo Mostrar o maior número informado pelo usuário. Inicio a, b Sim a > b? Maior é a Não Maior é b Fim

  19. Operadores relacionais em linguagem algorítmica Fonte: Adaptado de Piva Jr et al (2012)

  20. Operadores lógicos em linguagem algorítmica Fonte: Adaptado de Piva Jr et al (2012)

  21. Tabela verdade do NÃO Cenário para inverter situação de um aluno. p = proposição (conteúdo que pode ser tomado como verdadeiro ou falso) V = Verdadeiro F = Falso

  22. Tabela Verdade do E Cenário para um aluno ser considerado aprovado (atendeu a todos os requisitos impostos pela escola).

  23. Tabela Verdade do OU Cenário para um aluno não ser aprovado direto (não atendeu a pelo menos um dos requisitos impostos pela escola).

  24. Tabela Verdade do XOU Cenário para um aluno um aluno fazer recuperação.

  25. Exemplo do uso do operador E Receber como entrada a média e o total de faltas de aluno. Mostrar mensagem informando se ele passou ou se deverá tentar recuperação. Inicio V m >= 7 E f <=15 Passou m, f F Tentar recuperação Fim

  26. Algoritmo “Resultado” Var m: REAL f: INTEIRO ESCREVA (“Digite a média: “) LEIA (m) ESCREVA (“Digite total de faltas: “) LEIA (f) SE m >= 7 E f <= 15 ENTAO ESCREVA(“Aprovado“) SENAO ESCREVA(“Tentar recuperação“) FIMSE fimalgoritmo

  27. Exemplo do uso do operador E Aplicar 10% de desconto no preço dos produtos que possuírem mais de 100 unidades em estoque e cujo preço seja superior a R$ 250,00. Para os demais produtos aplicar desconto de 2% sobre o preço. Mostrar o novo preço. Inicio V Fim q > 100 E p > 250 d  p*10/100 p, q F p d  p*2/100 p  p - d

  28. Algoritmo “Desconto” Var p, q, d: REAL ESCREVA (“Digite a quantidade: “) LEIA (q) ESCREVA (“Digite preço de venda: “) LEIA (p) SE q > 100 E p > 250 ENTAO dp*10/100 SENAO dp*2/100 FIMSE pp-d ESCREVA(“Novo preço de venda: “, p) fimalgoritmo

  29. Exemplo do uso do operador OU Receber como entrada a média e o total de faltas de aluno. Mostrar mensagem informando se ele deverá tentar recuperação ou se já está aprovado. Inicio Tentar recuperação V m < 7 OU f > 15 m, f F Fim Aprovado

  30. Algoritmo “Resultado” Var m: REAL f: INTEIRO ESCREVA (“Digite a média: “) LEIA (m) ESCREVA (“Digite total de faltas: “) LEIA (f) SE m < 7 E f > 15 ENTAO ESCREVA(“Tentar recuperação“) SENAO ESCREVA(“Aprovado“) FIMSE fimalgoritmo

  31. Exemplo do uso do operador OU Uma escola aceita matrícula de alunos com idade entre 6 e 18 anos. Criar uma algoritmo que receba uma idade de um candidato e informe se ele poderá ou não se matricular. Inicio V Matrícula recusada id < 6 OU id > 18 id F Matrícula aceita Fim

  32. Algoritmo “Matricula” Var id: INTEIRO ESCREVA (“Digite a idade: “) LEIA (id) SE id < 6 OU id > 18 ENTAO ESCREVA(“matrícula recusada“) SENAO ESCREVA(“matrícula aceita“) FIMSE fimalgoritmo

  33. Exemplo condicional em C Com base na média e no total de faltas, definir se um aluno está aprovado ou deverá tentar recuperação. #include <stdio.h> main() { float m; int f; printf(“Digite a média: ); scanf(“%f%*c”, &m); printf(“Digite total faltas: ); scanf(“%d%*c”, &f); if (m >= 7 && f <=15) printf(“Aprovado”); elseprintf(“Tentar recuperação”); getchar(); }

  34. Exemplo condicional em Pascal Fornecer bônus de R$ 300,00 aos funcionários com 3 ou mais filhos. PROGRAM SALARIO; VAR s: REAL; f: INTEGER; BEGIN WRITELN(“Digite o salário: ); READLN(s); WRITELN(“Digite qtd de filhos: ); READLN(f); IF f >= 3 THEN s := s + 300; WRITELN(“Salário = ”, s); READLN(); END.

  35. Condicional em Java Fornecer 10% de desconto para produtos com mais de 600 unidades em estoque ou com preço superior a R$ 500,00. Nos demais casos, fornecer desconto de 4%. importjava.util.Scanner; publicclass Calculo { publicstaticvoidmain(String args[]) { double p, q; Scanner e = new Scanner(System.in); System.out.println(“Digite o preço: “); p = e.nextFloat();

  36. System.out.println(“Digite ta quantidade: “); q = e.nextFloat(); if (p > 500 || q > 600) p = p – (p * 10 / 100); else p = p – (p* 4 / 100); System.out.println(“Novo preco = “ + p); } }

  37. Conclusões... Estruturas condicionais são estruturas de controle (ou fluxo de controle) que possibilitam incorporar mais flexibilidade aos algoritmos. Assim, é possível que um mesmo algoritmo resolva uma quantidade maior de problemas.

More Related