Lógica de Programação ALGORITMOS. O QUE JÁ VIMOS? O que é algoritmo; Características; Exemplo de algoritmos; Pseudocódigo; Nomenclaturas corretas; Variáveis e tipos de dados; Operadores; Teste de mesa; Algoritmos – [email protected] ESTRUTURAS DE CONTROLE Estrutura de seleção: Permitem executar o algoritmo de forma NÃO sequencial; Permite executar ou não determinado trecho de código baseando-se em decisões condicionais. Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURA DE SELEÇÃO SIMPLES se(<condicao>) entao ...codigos... ...codigos... ...codigos... fimSe Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURA DE SELEÇÃO //Exemplo de uso do comando se algoritmoExemploSe inicio inteiro idadeAluno; imprima(“Digite a idade do aluno: “); Leia(idadeAluno); se(idadeAluno<18) entao imprima(“Aluno menor de idade”); fim_se fim Algoritmos – [email protected] ESTRUTURAS CONTROLE: ALGORITMO CALCULA MÉDIA Lembra-se do algoritmo calcular média da aula anterior? Vamos solicitar ao nosso aluno suas 4 notas bimestrais e desenvolver um algoritmo de acordo com os critérios abaixo: Se media > 70 então Imprimir Se media < 70 e media >60 então Imprimir (“aluno aprovado direto”); (“aluno de exame”); Se media < 60 então Imprimir (“aluno reprovado”); Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURA DE SELEÇÃO COMPOSTA //Exemplo de uso do comando senão algoritmoExemploSe inicio inteiro idadeAluno; imprima(“Digite a idade do aluno: “); Leia(idadeAluno); se(idadeAluno>=18) entao se imprima(“Aluno de maior idade”); senao imprima(“Aluno menor de idade”); fim_se fim Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURA DE SELEÇÃO COMPOSTA Utilizando estrutura de seleção composta vamos resolver novamente o algoritmo abaixo: Vamos solicitar ao nosso aluno suas 4 notas bimestrais e desenvolver um algoritmo de acordo com os critérios abaixo: Se media > 70 então Imprimir Se media < 70 e media >60 então Imprimir (“aluno aprovado direto”); (“aluno de exame”); Se media < 60 então Imprimir (“aluno reprovado”); Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURA DE SELEÇÃO COMPOSTA A estrutura de seleção composta quando aplicada de maneira correta diminui o processamento do computador? Explique. Esta quantidade de processamento representa algo para o computador? Falamos de um computador de qual capacidade? Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURA DE SELEÇÃO ANINHADA se(<condicao>)entao ...codigo... senao se(<condicao>)entao ...codigo... fimSe fimSe ESTRUTURAS CONTROLE: ESTRUTURA DE SELEÇÃO ANINHADA Utilizando estrutura de seleção aninhada vamos resolver novamente o algoritmo abaixo: Vamos solicitar ao nosso aluno suas 4 notas bimestrais e desenvolver um algoritmo de acordo com os critérios abaixo: Se media > 70 então Imprimir Se media < 70 e media >60 então Imprimir (“aluno aprovado direto”); (“aluno de exame”); Se media < 60 então Imprimir (“aluno reprovado”); Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURA DE SELEÇÃO ANINHADA A estrutura de seleção aninhada quando aplicada de maneira correta diminui o processamento do computador? Explique. Esta quantidade de processamento representa algo para o computador? Falamos de um computador de qual capacidade? Algoritmos – [email protected] PRÁTICA! Construa um algoritmo que: Verifique o número de filhos de um funcionário; Caso o número de filhos seja menor ou igual a zero: Mensagem(“Você não tem direito ao adicional por filho”); Senão: Caso número de filhos menor que três: Adicional é igual a R$20,00 no salário; Caso o número de filhos seja maior ou igual a quatro e menor que seis; Adicional é igual a R$50,00; Senão adicional igual a R$100,00 No final informe (“Seu adicional é de” + valorAdicional); Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURAS DE REPETIÇÃO OU LOOPING As estruturas de repetição permitem executar uma ou mais linhas de um algoritmos várias vezes. Enquanto <condição> for verdadeiro; verdadeiro; Repita até que<condição> ; Para <condição> faça n vezes; vezes; Algoritmos – [email protected] ESTRUTURAS CONTROLE: ESTRUTURA DE REPETIÇÃO ENQUANTO Enquanto <condição> faça ...códigos...; ...códigos...; ...códigos...; fimEnquanto ESTRUTURAS CONTROLE: ESTRUTURA DE REPETIÇÃO ENQUANTO 1algoritmo "exemploEnquantoVisualg" 2//Este algoritmo conta de zero até cinco 3var 4contador:inteiro 5inicio 6// Seção de Comandos 7 contador:=0; 8 enquanto contador<=5 faca 9 escreval("Contador vale:")//escreva linha 10 escreval(contador) 11 contador:=contador+1; 12 fimenquanto 13fimalgoritmo ESTRUTURAS CONTROLE: ESTRUTURA DE REPETIÇÃO REPITA algoritmo "exemploRepitaVisualg" //Este algoritmo conta de cinco até zero var contador:inteiro inicio // Seção de Comandos contador:=5; repita escreval("Contador vale:")//escreva linha escreval(contador) contador:=contador-1; ate contador<=0; fimalgoritmo ESTRUTURAS CONTROLE: ESTRUTURA DE REPETIÇÃO PARA FAÇA algoritmo "exemploParaFacaVisualg" //Este algoritmo faz a tabuada var contador:inteiro resposta:inteiro numero:inteiro inicio // Seção de Comandos contador:=0 resposta:=0 escreval("informe um numero: ") leia(numero) para contador de 0 ate 10 faca resposta:= numero*contador; escreva(numero) escreva(" X ") escreva(contador) escreva(" = ") escreva (resposta) escreval(" ") //incrementa o contador contador:=(contador+1) fimpara fimalgoritmo