·

Cursos Gerais ·

Linguagens de Programação

Send your question to AI and receive an answer instantly

Ask Question

Preview text

Técnicas de Desenvolvimento de Algoritmos Material Teórico Responsável pelo Conteúdo Profª Me Ana Fernanda Gomes Ascencio Revisão Textual Jaquelina Kutsunugi Revisão Técnica Profª Esp Margarete Eliane da Silva Almendro Estruturas de Decisão Estruturas Condicionais em Algoritmos Desenvolver algoritmos em fl uxograma e em pseudocódigo com estruturas condicionais OBJETIVO DE APRENDIZADO Estruturas de Decisão Orientações de estudo Para que o conteúdo desta Disciplina seja bem aproveitado e haja maior aplicabilidade na sua formação acadêmica e atuação profissional siga algumas recomendações básicas Assim Organize seus estudos de maneira que passem a fazer parte da sua rotina Por exemplo você poderá determinar um dia e horário fixos como seu momento do estudo Procure se alimentar e se hidratar quando for estudar lembrese de que uma alimentação saudável pode proporcionar melhor aproveitamento do estudo No material de cada Unidade há leituras indicadas e entre elas artigos científicos livros vídeos e sites para aprofundar os conhecimentos adquiridos ao longo da Unidade Além disso você tam bém encontrará sugestões de conteúdo extra no item Material Complementar que ampliarão sua interpretação e auxiliarão no pleno entendimento dos temas abordados Após o contato com o conteúdo proposto participe dos debates mediados em fóruns de discus são pois irão auxiliar a verificar o quanto você absorveu de conhecimento além de propiciar o contato com seus colegas e tutores o que se apresenta como rico espaço de troca de ideias e de aprendizagem Organize seus estudos de maneira que passem a fazer parte Mantenha o foco Evite se distrair com as redes sociais Mantenha o foco Evite se distrair com as redes sociais Determine um horário fixo para estudar Aproveite as indicações de Material Complementar Procure se alimentar e se hidratar quando for estudar lembrese de que uma Não se esqueça de se alimentar e de se manter hidratado Aproveite as Conserve seu material e local de estudos sempre organizados Procure manter contato com seus colegas e tutores para trocar ideias Isso amplia a aprendizagem Seja original Nunca plagie trabalhos UNIDADE Estruturas de Decisão Estruturas Condicionais em Algoritmos Nesta Unidade vamos continuar conhecendo um pouco mais sobre as estrutu ras que compõem os algoritmos salientando que a implementação dos algoritmos utilizando qualquer Linguagem de Programação permite seu teste efetivo Neste curso os testes serão realizados na ferramenta VisualG Na Unidade I abordamos as definições de algoritmos e as três técnicas mais utili zadas para o seu desenvolvimento Na Unidade II abordados alguns algoritmos que utilizam apenas estrutura sequencial ou seja entrada dos dados processamento e saída A partir desta Unidade vamos abordar algoritmos que apresentam desvios em seus comandos Os desvios são denominados Estruturas Condicionais As estruturas condicionais estão divididas em Estruturas Condicionais Simples Compostas e de Caso A primeira estrutura condicional a ser abordada é a estrutura condicional sim ples em que o comando ou os comandos só serão executados se a condição for verdadeira Uma condição é uma comparação que possui dois valores possíveis verdadeiro ou falso Quadro 1 Estrutura condicional simples em fluxograma e em pseudocódigo fluxograma pseudocódigo se condição então comando fimse As condições são comparações que resultam em verdadeiro ou falso Cada con dição terá um operador relacional e estes estão descritos a seguir Quadro 2 Operadores relacionais utilizados nas condições Operador Função igual diferente menor igual maior igual menor maior 8 9 Quando é necessário ter mais de uma condição é necessária a utilização de ope radores lógicos e estes são E OU e NÃO sendo usados para conjunção disjunção e negação respectivamente Os resultados dos operadores lógicos estão descritos a seguir Quadro 3 Operadores lógicos utilizados nas condições compostas TABELA E TABELA OU TABELA NÃO V e V V V ou V V Não V F V e F F V ou F V Não F V F e V F F ou V V F e F F F ou F F Para os valores x 2 e y 3 a condição abaixo é verdadeira Explor se x 2 E y 3 entao escrevaVERDADEIRA senao escrevaFALSA Neste caso a mensagem a ser exibida é a palavra FALSA A segunda estrutura condicional a ser abordada é a estrutura condicional com posta em que o comando1 será executado se a condição for verdadeira e o co mando 2 será executado se a condição for falsa Quadro 4 Estrutura condicional composta em fl uxograma e em pseudocódigo fl uxograma pseudocódigo secondição entao comando1 senao comando2 fimse 9 UNIDADE Estruturas de Decisão A terceira e última estrutura de decisão é denominada CASO e está ilustrada a seguir Quadro 5 Estrutura de caso em fl uxograma e em pseudocódigo fl uxograma pseudocódigo instruções Valor 1 Valor 2 Valor 3 Valor 4 instruções instruções instruções instruções variável de verifcação ESCOLHA operacao CASO 1 comando1 CASO 2 comando2 CASO 3 comando3 CASO N comandoN FIMESCOLHA fimse Fonte elaborado pela autora Para quais valores de num e cont a condição abaixo é verdadeira Explor Desse ponto em diante vamos fazer alguns exemplos de algoritmos que utilizam estruturas condicionais EXEMPLO 1 Faça um algoritmo que recebe duas notas calcule a média arit mética e mostre mensagem de Aprovado ou Reprovado considerando para apro vação média de no mínimo 7 Abaixo encontrase o desenvolvimento do ALGORITMO 1 em fluxograma Figura 1 Fluxograma do algoritmo exemplo 1 10 11 Primeira forma de resolução algoritmo exemplo1a Função calcular a média aritmética entre duas notas mostrar mensagem de aprovado ou reprovado Autor Ana Fernanda revisão Margarete E S Almendro Data 24122018 07022020 RESOLUÇÃO UTILIZANDO ESTRUTURAS CONDICIONAIS SIMPLES seção de declarações de variáveis e constantes var m n1 n2 real inicio escrevalDigite duas notas leian1n2 m n1n22 se m 7 entao escrevalAprovado fimse se m 7 entao escreval Reprovado fimse fimalgoritmo Segunda forma de resolução algoritmo exemplo1B Função calcular a média aritmética entre duas notas mostrar mensagem de aprovado ou reprovado Autor Ana Fernanda Data 27122018 RESOLUÇÃO UTILIZANDO ESTRUTURA CONDICIONAL COMPOSTA seção de declarações de variáveis e constantes 11 UNIDADE Estruturas de Decisão var m n1 n2 real inicio escrevalDigite duas notas leian1n2 m n1n22 se m 7 entao escrevalAprovado senao escreval Reprovado fimse fimalgoritmo EXEMPLO 2 Faça um programa que receba três notas de um aluno calcule e mostre a média aritmética e a mensagem constante no quadro a seguir Aos alunos que ficaram para exame calcule e mostre a nota que deverão tirar para se rem aprovados considerando que a média exigida é 60 ASCENCIO CAMPOS 2012 p 62 Quadro 6 Regras para a emissão de mensagem do exemplo 2 Média aritmética Mensagem 0 3 Reprovado 3 7 Exame 7 10 Aprovado 12 13 Abaixo encontrase o desenvolvimento do ALGORITMO 2 em fluxograma Figura 2 Fluxograma do algoritmo exemplo 2 algoritmo exemplo2a Função calcular a média aritmética entre três notas mostrar mensagem de aprovado exame ou reprovado No caso de exame mostrar a nota a ser tirada para apro vação Autor Ana Fernanda revisão Margarete E S Almendro Data 24122018 07022020 13 UNIDADE Estruturas de Decisão RESOLUÇÃO UTILIZANDO ESTRUTURAS CONDICIONAIS SIMPLES seção de declarações de variáveis e constantes var m n1 n2 n3 nf real inicio escrevalDigite três notas leian1n2n3 m n1n2n33 escrevalMédia m se m 0 E m 3 entao escrevalReprovado fimse se m 3 E m 7 então escreval Exame nf 10 m escrevalNota a ser tirada no exame nf fimse se m 7 então escrevalAprovado fimse fimalgoritmo Outro exemplo de construção com o mesmo propósito algoritmo exemplo2b Função calcular a média aritmética entre três notas mostrar mensagem de aprovado exame ou reprovado No caso de exame mostrar a nota a ser tirada para apro vação Autor Ana Fernanda revisão Margarete E S Almendro Data 24122018 07022020 RESOLUÇÃO UTILIZANDO ESTRUTURA CONDICIONAL COMPOSTA seção de declarações de variáveis e constantes 14 15 var m n1 n2 n3 nf real inicio escrevalDigite três notas leian1n2n3 m n1n2n33 escrevalMédia m se m 3 entao escrevalReprovado senao se m 7 entao escreval Exame nf 10 m escrevalNota a ser tirada no exame nf senao escrevalAprovado fimse fimse fimalgoritmo Qual o erro de lógica do algoritmo abaixo Explor algoritmo reflita Função calcular a média aritmética entre três notas mostrar mensagem de aprovado exame ou reprovado Autor Ana Fernanda revisão Margarete E S Almendro Data 24122018 07022020 seção de declarações de variáveis e constantes var m n1 n2 n3 real inicio 15 UNIDADE Estruturas de Decisão escrevalDigite três notas leian1n2n3 m n1n2n33 escrevalMédia m se m 3entao escrevalReprovado fimse se m 7 entao escreval Aprovado senao escreval Exame fimse fimalgoritmo EXEMPLO 3 Faça um algoritmo que receba dois números e mostre o maior Caso os números sejam iguais mostrar mensagem Abaixo encontrase o desenvolvimento do ALGORITMO 3 em fluxograma Figura 3 Fluxograma do algoritmo exemplo 3 16 17 algoritmo algoritmo3a Função receber dois números e mostrar o maior Autor Ana Fernanda revisão Margarete E S Almendro Data 24122018 07022020 RESOLUÇÃO UTILIZANDO ESTRUTURA CONDICIONAL SIMPLES seção de declarações de variáveis e constantes var num1 num2 real inicio escrevalDigite o primeiro número leianum1 escrevalDigite o segundo número leianum2 se num1 num2 entao escrevalNúmero iguais fimse se num1 num2 entao escreval O número num1 é o maior fimse se num1 num2 entao escreval O número num2 é o maior fimse fimalgoritmo A seguir uma nova solução para o mesmo enunciado algoritmo algoritmo3b Função receber dois números e mostrar o maior Autor Ana Fernanda revisão Margarete E S Almendro Data 24122018 07022020 RESOLUÇÃO UTILIZANDO ESTRUTURA CONDICIONAL COMPOSTA 17 UNIDADE Estruturas de Decisão seção de declarações de variáveis e constantes var num1 num2 real inicio escrevalDigite o primeiro número leianum1 escrevalDigite o segundo número leianum2 se num1 num2 entao escrevalNúmeros iguais senao se num1 num2 entao escreval O número num1 é o maior senao escreval O número num2 é o maior fimse fimse fimalgoritmo Se o usuário digitar os números 7 e 5 qual será a mensagem mostrada pelo algoritmo abaixo Está correto Explor algoritmo reflita2 Função receber dois números e mostrar o maior Autor Ana Fernanda 18 19 Data 27122018 seção de declarações de variáveis e constantes var num1 num2 real inicio escrevalDigite o primeiro número leianum1 escrevalDigite o segundo número leianum2 se num1 num2entao escreval O número num1 é o maior fimse se num1 num2 entao escreval O número num2 é o maior senao escrevalNúmero iguais fimse fimalgoritmo O número 7 é o maior Número iguais EXEMPLO 4 Faça um algoritmo que receba os três lados de um triângulo e mostre sua classificação conforme regras abaixo triângulo escaleno três lados diferentes triângulo isósceles dois lados iguais triângulo equilátero três lados iguais 19 UNIDADE Estruturas de Decisão A seguir encontrase o desenvolvimento do ALGORITMO 4 em fluxograma Figura 4 Fluxograma do algoritmo exemplo 4 algoritmo exemplo4a Função receber os três lados de um triângulo e clas sificar Autor Ana Fernanda revisão Margarete E S Almendro Data 24122018 07022020 RESOLUÇÃO UTILIZANDO ESTRUTURA CONDICIONAL SIMPLES seção de declarações de variáveis e constantes var x y z real inicio escrevaDigite o primeiro lado leiax escrevaDigite o segundo lado leiay escrevaDigite o terceiro lado leiaz 20 21 se x y E y z entao escreval Triângulo Equilátero fimse se x y E x Z E y Z entao escreval Triângulo Escaleno fimse se x y E y z então escrevalTriângulo Isósceles fimse se x z E z y então escrevalTriângulo Isósceles fimse se y z E z x então escrevalTriângulo Isósceles fimse fimalgoritmo algoritmo exemplo4b Função receber os três lados de um triângulo e clas sificar Autor Ana Fernanda revisão Margarete E S Almendro Data 24122018 07022020 RESOLUÇÃO UTILIZANDO ESTRUTURA CONDICIONAL COMPOSTA seção de declarações de variáveis e constantes var x y z real inicio escrevaDigite o primeiro lado leiax escrevaDigite o segundo lado leiay escrevaDigite o terceiro lado leiaz se x y E y z entao escreval Triângulo Equilátero 21 UNIDADE Estruturas de Decisão senao se x y E x Z E y Z entao escreval Triângulo Escaleno senao escreval Triângulo Isósceles fimse fimse fimalgoritmo As estruturas condicionais permitem que o processamento de um algoritmo seja desviado de acordo com uma condição Figura 5 Estruturas condicionais em algoritmos Fonte Nasirkhan 123RF Essas são algumas das estruturas condicionais em algoritmos apresentadas nesta Unidade 22 23 Material Complementar Indicações para saber mais sobre os assuntos abordados nesta Unidade Livros Lógica de Programação com Pascal O livro Lógica de Programação com Pascal no Capítulo 5 mostra a teoria sobre Estruturas Condicionais e vários exemplos Ao final deste capítulo há uma lista de exercícios a resolver ASCENCIO A F G Lógica de Programação com Pascal São Paulo Pearson 1999 Fundamentos da Programação de Computadores O livro Fundamentos da Programação de Computadores no Capítulo 4 mostra a teoria sobre Estruturas Condicionais e vários exemplos Ao final deste capítulo existem duas listas de exercícios uma resolvida e a outra a resolver ASCENCIO A F G CAMPOS E A V Fundamentos da Programação de Computadores 3 ed São Paulo Pearson 2012 Algoritmos Teoria e Prática O livro Algoritmos Teoria e Prática do autor Thomas Cormen é um clássico na área de Computação e aborda o desenvolvimento de algoritmos na teoria e na prática CORMEN T H Algoritmos Teoria e Prática Rio de Janeiro Campus 2012 Algoritmos O livro Algoritmos de José Augusto Manzano é muito indicado para quem está começando a desenvolver algoritmos tendo em vista a possível sequência didática de aprendizagem e uma linguagem apropriada para iniciantes MANZANO J A N G Algoritmos 28 ed São Paulo Pearson 2016 23 UNIDADE Estruturas de Decisão Referências ASCENCIO A F G CAMPOS E A V Fundamentos da Programação de Computadores 3 ed São Paulo Pearson 2012 24 Cruzeiro do Sul Educacional