Lógica de Programação - Unimep/Pronatec - Aula06

351 visualizações

Publicada em

Sexta aula de Lógica de Programação da turma de Técnico em Informática para Internet, do curso Pronatec/UNIMEP, realizada no segundo semestre de 2014.

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
351
No SlideShare
0
A partir de incorporações
0
Número de incorporações
5
Ações
Compartilhamentos
0
Downloads
27
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Lógica de Programação - Unimep/Pronatec - Aula06

  1. 1. Lógica de Programação Unimep/Pronatec 2° Semestre/2014 AULA 06 - Prof. André Bertoletti - apbertolet@unimep.br
  2. 2. Aula de hoje •Estruturas de Seleção •Operadores relacionais •Exercícios C#
  3. 3. Hora do Código Acesse, identifique-se e faça os exercícios! abre.ai/horadocodigo
  4. 4. Estruturas de seleção Quando seu algoritmo precisar tomar decisões
  5. 5. Mais um comando para a nossa coleção •Comando Se/Senão •Este comando deve ser utilizado sempre quando você precisar desviar o fluxo de execução do algoritmo, baseado numa condição lógica. •Condição Lógica = Pergunta que deverá sempre retornar VERDADEIRO ou FALSO
  6. 6. Operadores relacionais Operador Significado > Maior do que >= Maior ou igual do que < Menor do que <= Menor ou igual do que == Igual a != Diferente de
  7. 7. Exemplos de algumas condições lógicas 10 > 5 “banana” == “maçã” 8.5 < 9 1120 != 1120 20 >= 20 (2+2)==4 Verdadeiro Falso Verdadeiro Falso Verdadeiro Verdadeiro
  8. 8. Hierarquia de resolução das operações ^ MOD (raiz, round, etc...)
  9. 9. Exemplo 01 de resolução seguindo a hierarquia das operações 10 – 20 * 3 > 20 - Raiz(4) * (3 – 1) 10 – 60 > 20 - Raiz(4) * 2 – 50 > 20 - 2 * 2 – 50 > 20 – 4 – 50 > 16 FALSO
  10. 10. Exemplo 02 de resolução seguindo a hierarquia das operações (20 * (3 + 1)) - 100 * 3 <= (20 - Raiz(4)) * 3 / 10 (20 * 4) – 100 * 3 <= (20 – 2) * 3 / 10 80 – 100 * 3 <= 18 * 3 / 10 80 – 300 <= 54 / 10 -220 <= 5.4 VERDADEIRO
  11. 11. Sintaxe do comando Se()/Senão Inicio (...) SE (condição) Inicio <linha(s) de comando quando a condição for VERDADEIRA> Fim SENÃO Inicio <linha(s) de comando quando a condição for FALSA> Fim (...) Fim
  12. 12. Escreva um algoritmo que leia um número inteiro qualquer e informe no final se este número é positivo ou negativo.
  13. 13. 1. Inicio 2. Inteiro Num 3. Ler(Num) 4. Se (Num >= 0) 5. Inicio 6. Escrever(“Este número é positivo”) 7. Fim 8. Senão 9. Inicio 10. Escrever(“Este número é negativo”) 11. Fim 12. Fim
  14. 14. Bora codificar! Passe o exercício anterior para um programa em C#
  15. 15. Vamos debugar nosso código Inicie a execução do seu programa através da tecla F10
  16. 16. Vamos treinar um pouco?!
  17. 17. Lista de Exercícios Resolva os exercícios a seguir em algoritmo e/ou C#
  18. 18. Exercicio S_1 Fazer um programa que leia duas palavras e informe se as palavras são IGUAIS ou DIFERENTES
  19. 19. Exercício S_1 (Resolução em algoritmo) 1. Inicio 2. Texto Palavra1 3. Texto Palavra2 4. Ler(Palavra1) 5. Ler(Palavra2) 6. Se (Palavra1 == Palavra2) 7. Inicio 8. Escreva(“Estas palavras são IGUAIS”) 9. Fim 10. Senão 11. Inicio 12. Escreva(“Estas palavras são DIFERENTES”) 12. Fim 14. Fim
  20. 20. Exercício S_1 (Resolução em C#)
  21. 21. Exercicio S_2 Fazer um programa que leia dois números e escreva qual dos dois é maior e o menor entre eles.
  22. 22. Exercício S_2 (Resolução em algoritmo) 1. Inicio 2. Decimal Num1 3. Decimal Num2 4. Ler(Num1) 5. Ler(Num2) 6. Se (Num1 > Num2) 7. Inicio 8. Escrever(“O maior número é o:”) 9. Escrever(“Num1) 10. Escrever(“O menor número é o:”) 11. Escrever(“Num2) 12. Fim 13. Senão 14. Inicio 15. Escrever(“O maior número é o:”) 16. Escrever(“Num2) 17. Escrever(“O menor número é o:”) 18. Escrever(“Num1) 19. Fim 20. Fim
  23. 23. Exercício S_2 (Resolução em C#)
  24. 24. Exercicio S_3 Num determinado parque de diversões, visitantes menores de idade pagam meia entrada, e os demais pagam a entrada completa. Desenvolva um programa que leia o nome e a idade do visitante, e escreva se ele irá “PAGAR MEIA” ou “PAGAR INTEIRA”
  25. 25. Exercício S_3 (Resolução em algoritmo) 1. Inicio 2. Texto NomeDoVisitante; 3. Inteiro IdadeDoVisitante; 4. Ler(NomeDoVisitante); 5. Ler(IdadeDoVisitante); 6. Se (IdadeDoVisitante >= 18) 7. Inicio 8. Escrever(“Este visitante pagará entrada INTEIRA”) 9. Fim 10. Senão 11. Inicio 12. Escrever(“Este visitante pagará MEIA entrada”) 13. Fim 14. Fim
  26. 26. Exercício S_3 (Resolução em C#)
  27. 27. Exercício S_4 Fazer um programa que leia um número e informe se este número é PAR ou IMPAR
  28. 28. Exercício S_4 (Resolução em algoritmo) 1. Inicio 2. Inteiro Numero 3. Inteiro RestoDaDivisaoPorDois 4. Ler(Numero) 5. RestoDaDivisaoPorDois  (Numero % 2) 6. Se (RestoDaDivisaoPorDois == 0) 7. Inicio 8. Escrever(“Este número é PAR”) 9. Fim 10. Senão 11. Inicio 12. Escrever(“Este número é IMPAR”) 13. Fim 14. Fim
  29. 29. Exercício S_4 (Resolução em C#)
  30. 30. Exercício S_5 Fazer um programa que recebe um símbolo de operação do usuário (+, -, / ou *) e dois números decimais. O programa deve retornar o resultado da operação recebida sobre estes dois números. Ou seja, se o usuário digitou “+” exibe a soma, se digitou “-” exibe a subtração e assim por diante.
  31. 31. Exercício S_5 (Resolução em algoritmo com o Se/Senão) 1. Inicio 2. Texto Operador 3. Decimal Num1 4. Decimal Num2 5. Decimal Result 6. Ler(Num1) 7. Ler(Num2) 8. Ler(Operador) 9. Se (Operador == “+”) 10 Inicio 11. Result  Num1 + Num2 12. Fim 13. Senão 14. Inicio 15. Se (Operador == “-”) 16. Inicio 17. Result  Num1 - Num2 18. Fim 19. Senão 20. Inicio 21. Se (Operador == “*”) 22. Inicio 23. Result  Num1 * Num2 24. Fim 25. Senão 26. Inicio 27. Se (Operador == “/”) 28. Inicio 29. Result  Num1 / Num2 30. Fim 31. Senão 32. Inicio 33. Escrever(“Operador inválido”) 34. Fim 35. Fim 36. Fim 37. Fim 38. Escrever(Result) 39.Fim
  32. 32. Exercício S_5 (Resolução em C# - if/else)
  33. 33. Um outro comando que pode ser utilizado para condições lógicas •Comando Escolha/Caso •Este comando poderá ser utilizado para substituir uma sequência de comandos Se/senão aninhados. Os comandos Caso realizam a escolha entre possíveis valores para uma variável, fornecida como parâmetro no comando Escolha() •Em alguns cenários, o código pode ficar mais elegante utilizando o comando Escolha/Caso
  34. 34. Sintaxe do comando Escolha/Caso Inicio (...) ESCOLHA (variável) Inicio Caso Condição1: <Faça isso> Caso Condição2: <Faça aquilo> Caso Condição3: <Faça aquele outro> Senão: <Faça apenas isso> Fim (...) Fim
  35. 35. Exercício S_5 (Resolução em algoritmo com o Escolha/Caso) 1. Inicio 2. Texto Operador 3. Decimal Num1 4. Decimal Num2 5. Decimal Result 6. Ler(Num1) 7. Ler(Num2) 8. Ler(Operador) 9. Escolha(Operador) 10. Inicio 11. Caso “+”: Result  Num1 + Num2 12. Caso “-”: Result  Num1 - Num2 13. Caso “*”: Result  Num1 * Num2 14. Caso “/”: Result  Num1 / Num2 15. Senão: Escrever(“Operador invalido”) 13. Fim 14. Escrever(Resultado) 15. Fim
  36. 36. Exercício S_5 (Resolução em C# - switch)
  37. 37. Exercício S_6 Fazer um programa para receber valores inteiros X, Y e Z do usuário e determinar se estes valores podem formar os lados de um triângulo equilátero. Sabendo-se que um triangulo desta natureza possui todos os seus lados com medidas iguais.
  38. 38. Exercício S_6 (Resolução em algoritmo) 1.Inicio 2. Decimal X 3. Decimal Y 4. Decimal Z 5. Ler(X) 6. Ler(Y) 7. Ler(Z) 8. Se (X == Y) 9. Inicio 10. Se (Y == Z) 11. Inicio 12. Escrever(“Estas medidas FORMAM um triangulo equilátero”) 13. Fim 14. Senão 15. Inicio 16. Escrever(“Estas medidas NÃO formam um triangulo equilátero”) 17. Fim 18. Fim 19. Senão 20. Inicio 21. Escrever(“Estas medidas NÃO formam um triangulo equilátero”) 22. Fim 23.Fim
  39. 39. Exercício S_6 (Resolução em C#)
  40. 40. Por hoje é só... Agora é hora de estudar!

×