Algoritmo

19,284 views

Published on

Conceitos básicos de algoritmos e lógica de programação

Published in: Education
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
19,284
On SlideShare
0
From Embeds
0
Number of Embeds
24
Actions
Shares
0
Downloads
441
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Algoritmo

  1. 1. ALGORITMO
  2. 2. Definição <ul><li>Representa a lógica de solução de um problema passo-a-passo. </li></ul>
  3. 3. Um algoritmo pode ser <ul><li>Na forma textual: </li></ul><ul><ul><li>Uma descrição tal como uma receita de bolo; </li></ul></ul><ul><ul><li>Um manual de montagem; </li></ul></ul><ul><ul><li>Um relato de como fazer uma tarefa; </li></ul></ul><ul><ul><li>O pseudo código de um programa; </li></ul></ul><ul><li>Na forma de gráficos </li></ul><ul><ul><li>Um fluxograma </li></ul></ul><ul><ul><li>Um mapa indicando o caminho </li></ul></ul>
  4. 4. Características <ul><li>Possui um número limitado de passos; </li></ul><ul><li>As regras de codificação do algoritmo são previamente conhecidas e dependem da “máquina” que irá resolver o problema </li></ul>
  5. 5. Qualidades de um algoritmo <ul><li>Integridade : refere-se à precisão das informações manipuladas pelo programa; </li></ul><ul><li>Clareza : refere-se à facilidade de leitura do programa; </li></ul><ul><li>Simplicidade : a clareza e precisão de um programa são normalmente melhoradas tornando seu entendimento o mais simples possível, consistente com os objetivos do programa; </li></ul><ul><li>Eficiência : refere-se à velocidade de processamento e a correta utilização da memória; </li></ul><ul><li>Modularidade : consiste no particionamento do programa em módulos menores bem identificáveis e com funções específicas; e </li></ul><ul><li>Generalidade : é interessante que um programa seja tão genérico quanto possível de forma a permitir a reutilização de seus componentes em outros projetos. </li></ul>
  6. 6. Pseudo código <ul><li>É uma forma de algoritmo que simula a solução do problema por uma linguagem computacional; </li></ul><ul><li>Não existem regras rígidas para a codificação dos algoritmos, porem, de uma forma geral seguem a um padrão. </li></ul>
  7. 7. Programação Estruturada <ul><li>Possui 3 figuras básicas </li></ul><ul><ul><li>Seqüência simples; </li></ul></ul><ul><ul><li>Decisão; </li></ul></ul><ul><ul><li>Repetição </li></ul></ul>
  8. 8. Comandos <ul><li>Inicio  representa o inicio do algoritmo; </li></ul><ul><li>Fim  representa o fim do algoritmo; </li></ul><ul><li>Leia A  significa ler um valor de uma unidade de entrada e armazenar em A. Caso exista um valor em A este é destruído e substituído pelo novo valor lido. </li></ul>
  9. 9. Comandos <ul><li>Escreva A  significa exibir o conteúdo de A. Não destrói o valor exibido. Pode-se exibir uma mensagem colocando entre aspas. Escrever “resposta” </li></ul><ul><li>A  C+B significa A recebe a soma do conteúdo de C com B; </li></ul><ul><li>Atenção o símbolo  tem significado diferente da matemática pois primeiro realiza a operação depois atribui o resultado para a variável A </li></ul>
  10. 10. Observe que <ul><li>A  A+B significa some o conteúdo de A com B e atribua a A. </li></ul><ul><li>Diga qual o valor que será exibido </li></ul><ul><li>Inicio </li></ul><ul><ul><li>X  2 </li></ul></ul><ul><ul><li>Y  3 </li></ul></ul><ul><ul><li>X  x+y </li></ul></ul><ul><ul><li>Escreva x </li></ul></ul><ul><li>Fim </li></ul>
  11. 11. Exemplo <ul><li>Elabore um Algoritmo para ler dois valores e exibir sua soma </li></ul><ul><li>Inicio </li></ul><ul><ul><li>Ler A,B </li></ul></ul><ul><ul><li>C  A+B </li></ul></ul><ul><ul><li>Escrever C </li></ul></ul><ul><li>Fim </li></ul>
  12. 12. Operadores matemáticos <ul><li>+ soma </li></ul><ul><li>- subtração </li></ul><ul><li>* multiplicação </li></ul><ul><li>/ divisão </li></ul><ul><li>Mod resto inteiro da divisão </li></ul><ul><li>Div divisão inteira </li></ul><ul><li>( ) </li></ul>
  13. 13. Exemplo <ul><li>A  10 mod 3 </li></ul><ul><li>B  10 div 3 </li></ul><ul><li>Auto avaliação: </li></ul><ul><li>Proponha um método para saber se um número é par ou impar com o que foi mostrado até agora. </li></ul>
  14. 14. Exercício <ul><li>Elabore um algoritmo para ler 3 valores e determinar sua média </li></ul>
  15. 15. Solução <ul><li>Inicio </li></ul><ul><ul><li>Ler A,B,C </li></ul></ul><ul><ul><li>D  ( A+B+C) / 3 </li></ul></ul><ul><ul><li>Escrever D </li></ul></ul><ul><li>Fim </li></ul>
  16. 16. Alem dos operadores existem as funções <ul><li>Inúmeras funções são disponíveis. Por exemplo: </li></ul><ul><ul><li>Sqrt raiz quadrada </li></ul></ul><ul><ul><li>Sqr quadrado </li></ul></ul><ul><ul><li>Sin seno </li></ul></ul><ul><ul><li>Cos cosseno </li></ul></ul><ul><ul><li>Rnd número aleatório </li></ul></ul><ul><ul><li>Etc. </li></ul></ul>
  17. 17. Estrutura de decisão <ul><li>Pode ser: </li></ul><ul><ul><li>Alternativa simples  quando existe apenas uma ação a ser executada se a condição for verdadeira; </li></ul></ul><ul><ul><li>Alternativa dupla  quando existem duas ações a serem executadas se a condição for verdadeira e se for falsa; </li></ul></ul><ul><ul><li>Alternativas múltiplas  quando existem mais de duas alternativas. </li></ul></ul>
  18. 18. Estrutura de decisão <ul><li>Se (condição) </li></ul><ul><ul><li>Então </li></ul></ul><ul><ul><ul><li>Conjunto de comandos se a condição for verdadeira </li></ul></ul></ul><ul><ul><li>Se não </li></ul></ul><ul><ul><ul><li>Conjunto de comandos se a condição for falsa </li></ul></ul></ul><ul><li>Fim se </li></ul>
  19. 19. Operadores relacionais <ul><li>> maior que </li></ul><ul><li>< menor que </li></ul><ul><li>= igual </li></ul><ul><li>>= maior ou igual </li></ul><ul><li><= menor ou igual </li></ul><ul><li><> diferente </li></ul><ul><li>E </li></ul><ul><li>Ou </li></ul>
  20. 20. Exemplo <ul><li>Elabore um algoritmo para ler dois valores e exibir o maior deles. Os valores são, por definição, diferentes entre si. </li></ul><ul><li> Inicio </li></ul><ul><ul><li>Ler A,B </li></ul></ul><ul><ul><ul><li>Se A>B então </li></ul></ul></ul><ul><ul><ul><ul><li>Escreva A </li></ul></ul></ul></ul><ul><ul><ul><li>Se não </li></ul></ul></ul><ul><ul><ul><ul><li>Escreva B </li></ul></ul></ul></ul><ul><ul><ul><li>Fim se </li></ul></ul></ul><ul><ul><ul><li>Fim </li></ul></ul></ul>
  21. 21. Exercício <ul><li>Elabore um algoritmo para ler a idade de uma pessoa. Se a idade for menor que 18 anos exibir: “menor de idade” se for maior ou igual exibir “maior de idade”. </li></ul><ul><li>Auto avaliação </li></ul><ul><li>Se vc inverter a pergunta o resultado será o mesmo? </li></ul>
  22. 22. Solução <ul><li>Inicio </li></ul><ul><ul><li>Ler idade </li></ul></ul><ul><ul><li>Se idade < 18 então </li></ul></ul><ul><ul><ul><li>Escrever “menor de idade” </li></ul></ul></ul><ul><ul><li>Se não </li></ul></ul><ul><ul><ul><li>Escrever “maior de idade” </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><li>Fim </li></ul>
  23. 23. Auto avaliação <ul><li>Elabore um algoritmo para ler 3 valores (diferentes entre si) e escrever o maior deles. </li></ul>
  24. 24. Solução <ul><li>Inicio </li></ul><ul><ul><li>Ler A,B,C </li></ul></ul><ul><ul><li>Se A>B e A>C então </li></ul></ul><ul><ul><ul><li>Escrever A </li></ul></ul></ul><ul><ul><li>Se não </li></ul></ul><ul><ul><ul><li>Se B > C então </li></ul></ul></ul><ul><ul><ul><ul><li>Escrever B </li></ul></ul></ul></ul><ul><ul><ul><li>Se não </li></ul></ul></ul><ul><ul><ul><ul><li>Escrever c </li></ul></ul></ul></ul><ul><ul><ul><li>Fim se </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><li>fim </li></ul>
  25. 25. Elabore um algoritmo que <ul><ul><li>leia código da mercadoria e preço. Se for código 00 aplicar um desconto de 10%. Exibir o preço final. </li></ul></ul>
  26. 26. Solução <ul><li>Inicio </li></ul><ul><ul><li>Ler código, preço </li></ul></ul><ul><ul><li>Se código = 00 então </li></ul></ul><ul><ul><ul><li>Preço  Preço * 0,9 </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><ul><li>Escreva código, preço </li></ul></ul><ul><li>Fim </li></ul>
  27. 27. Elabore um algoritmo que <ul><li>Leia o sexo M ou F e se for M acrescente 1 a variável que contém a quantidade de homens (CM) </li></ul>
  28. 28. <ul><li>INICIO </li></ul><ul><ul><li>CM  0 { não é obrigatório pois todas as variáveis iniciam com 0} </li></ul></ul><ul><ul><li>LER SEXO </li></ul></ul><ul><ul><li>SE SEXO = ‘M’ ENTÃO </li></ul></ul><ul><ul><ul><li>CM  CM +1 </li></ul></ul></ul><ul><ul><li>FIM SE </li></ul></ul><ul><ul><li>ESCREVA CM </li></ul></ul><ul><li>FIM </li></ul>
  29. 29. Simulação (chinês) <ul><li>Para verificar se um algoritmo atende aos requisitos do enunciado deve-se simular seu funcionamento com dados cujos resultados são previamente conhecidos; </li></ul><ul><li>Por exemplo: </li></ul><ul><li>Simule o funcionamento do algoritmo anterior para sexo ‘M’ </li></ul>
  30. 30. Dicas <ul><li>Relacione as variáveis na mesma ordem do algoritmo. Elabore uma tabela e vá acompanhando o valor de cada variável </li></ul>1 CM M Sexo 0 CM valor variável
  31. 31. Elabore um algoritmo que <ul><li>Leia a nota do aluno se for maior que 5 escrever “aprovado” caso contrário escrever “reprovado” </li></ul><ul><li>Inicio </li></ul><ul><ul><li>Ler nota </li></ul></ul><ul><ul><li>Se nota >= 5 então </li></ul></ul><ul><ul><ul><li>Escreva “aprovado” </li></ul></ul></ul><ul><ul><li>Se não </li></ul></ul><ul><ul><ul><li>Escreva “reprovado” </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><li>Fim </li></ul>
  32. 32. Elabore um algoritmo que <ul><li>Leia dois valores e exiba em ordem crescente (os valores são diferentes entre si) </li></ul>
  33. 33. <ul><li>Inicio </li></ul><ul><ul><li>Ler A,B </li></ul></ul><ul><ul><li>Se A> B então </li></ul></ul><ul><ul><ul><li>Escreva A, B </li></ul></ul></ul><ul><ul><li>Se não </li></ul></ul><ul><ul><ul><li>Escreva B, A </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><li>Fim </li></ul>
  34. 34. Altere o algoritmo anterior <ul><li>Inclua a condição dos valores serem iguais, neste caso escrever “valores iguais” </li></ul>
  35. 35. Quando existem mais de duas alternativas <ul><li>Neste caso será necessário colocar vários “se’s”. </li></ul><ul><li>Pode-se usar o operador E, ou então, o OU </li></ul><ul><li>Por exemplo: </li></ul>
  36. 36. Imposto de renda na fonte <ul><li>O critério para a retenção de imposto de renda na fonte é o seguinte: </li></ul><ul><li>Elabore um algoritmo </li></ul>465,35 27,5% Acima de 2326,00 174,60 15% De 1164,01 a 2326 Isento 1164 Parcela a deduzir Alíquota Renda
  37. 37. <ul><li>Inicio </li></ul><ul><ul><li>Ler renda </li></ul></ul><ul><ul><ul><li>Se renda <= 1164 então </li></ul></ul></ul><ul><ul><ul><ul><li>IR  0 </li></ul></ul></ul></ul><ul><ul><ul><li>Se não </li></ul></ul></ul><ul><ul><ul><ul><li>Se renda <= 2326 então </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>IR  renda* 0,15 – 174,60 </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>Se não </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>IR  renda * 0,275 – 465,35 </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>Fim se </li></ul></ul></ul></ul><ul><ul><ul><li>Fim se </li></ul></ul></ul><ul><ul><ul><li>Escreva renda IR </li></ul></ul></ul><ul><ul><li>Fim </li></ul></ul>
  38. 38. Simulação <ul><li>Simule o funcionamento do algoritmo anterior para os valores </li></ul><ul><ul><li>260,00 </li></ul></ul><ul><ul><li>2000,00 </li></ul></ul><ul><ul><li>5000,00 </li></ul></ul>
  39. 39. Elabore um algoritmo que leia a nota do aluno e escreva sua situação <ul><li>O critério de aprovação da UERJ é o seguinte: </li></ul><ul><ul><li>Nota < 4 aluno reprovado </li></ul></ul><ul><ul><li>Nota >= 4 e < 7 aluno em prova final </li></ul></ul><ul><ul><li>Nota >= 7 aluno aprovado </li></ul></ul>
  40. 40. <ul><li>Inicio </li></ul><ul><ul><li>Ler nota </li></ul></ul><ul><ul><ul><li>Se nota < 4 então </li></ul></ul></ul><ul><ul><ul><ul><li>Escreva “reprovado” </li></ul></ul></ul></ul><ul><ul><ul><li>Se não </li></ul></ul></ul><ul><ul><ul><ul><li>Se nota <= 7 então </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Escreva “final” </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>Se não </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Escreva “aprovado” </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>Fim se </li></ul></ul></ul></ul><ul><ul><ul><li>Fim se </li></ul></ul></ul><ul><li>Fim </li></ul>
  41. 41. Exercício <ul><li>Complemente o exercício anterior incluindo a condição: se o aluno tiver menos de 75% de freqüência estará reprovado independente da nota </li></ul>
  42. 42. <ul><li>Inicio </li></ul><ul><ul><li>Ler nota,freq </li></ul></ul><ul><ul><li>Se freq < 0,75 então </li></ul></ul><ul><ul><ul><li>Escreva “reprovado” </li></ul></ul></ul><ul><ul><li>Se não </li></ul></ul><ul><ul><ul><li>Se nota < 4 então </li></ul></ul></ul><ul><ul><ul><ul><li>Escreva “reprovado” </li></ul></ul></ul></ul><ul><ul><ul><li>Se não </li></ul></ul></ul><ul><ul><ul><ul><li>Se nota <= 7 então </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Escreva “final” </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>Se não </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Escreva “aprovado” </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>Fim se </li></ul></ul></ul></ul><ul><ul><ul><li>Fim se </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><li>Fim </li></ul>
  43. 43. Elabore o algoritmo para determinar o recolhimento do INSS: <ul><li>O INSS para o trabalhador assalariado é calculado de acordo com a seguinte tabela: </li></ul>11,00 De 1254,37 a 2508,72 9,00 De 780,01 a 1254,36 8,65 De 752,63 a 780,00 7,65 Até 752,62 Alíquota (%) Salário de contribuição
  44. 44. Dicas <ul><li>Qual informação deve ser lida? </li></ul><ul><li>A solução é um conjunto de decisões? </li></ul><ul><li>Comece pelo menor valor e vá estabelecendo os intervalos </li></ul><ul><li>Quais são as variáveis que serão utilizadas? </li></ul>
  45. 45. <ul><li>Inicio </li></ul><ul><ul><li>Ler sal </li></ul></ul><ul><ul><li>Se sal <= 752,62 então </li></ul></ul><ul><ul><ul><li>INSS  sal * 0,0765 </li></ul></ul></ul><ul><ul><li>Se não </li></ul></ul><ul><ul><ul><li>Se sal <= 780,00 então </li></ul></ul></ul><ul><ul><ul><ul><li>INSS  sal * 0,0865 </li></ul></ul></ul></ul><ul><ul><ul><li>Se não </li></ul></ul></ul><ul><ul><ul><ul><li>Se sal <=1254,36 então </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>INSS  sal * 0,09 </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>Se não </li></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Se sal <= 2508,72 então </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>INSS  sal * 0,11 </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Se não </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>INSS  2508,72 * 0,11 </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Fim se </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><li>Fim se </li></ul></ul></ul></ul><ul><ul><ul><li>Fim se </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><ul><li>Escreva INSS </li></ul></ul><ul><li>Fim </li></ul>
  46. 46. <ul><li>{uma solução pior, mas certa} </li></ul><ul><li>Inicio </li></ul><ul><ul><li>Ler sal </li></ul></ul><ul><ul><li>Se sal <= 752,62 então </li></ul></ul><ul><ul><ul><li>INSS  sal * 0,0765 </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><ul><li>Se sal >= 752,63 e sal <= 780,00 e então </li></ul></ul><ul><ul><ul><li>INSS  sal * 0,0865 </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><ul><li>Se sal >= 780,01 e sal <=1254,36 então </li></ul></ul><ul><ul><ul><li>INSS  sal * 0,09 </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><ul><li>Se sal >= 1254,37 e sal <= 2508,72 então </li></ul></ul><ul><ul><ul><li>INSS  sal * 0,11 </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><ul><li>Se sal > 2508,72 então </li></ul></ul><ul><ul><ul><li>INSS  2508,72 * 0,11 </li></ul></ul></ul><ul><ul><li>Fim se </li></ul></ul><ul><ul><li>Escreva INSS </li></ul></ul><ul><li>Fim </li></ul>
  47. 47. Seleção múltipla <ul><li>É quando temos várias alternativas, como por exemplo no “menu” de um terminal bancário </li></ul>
  48. 48. Decisão múltipla <ul><li>Caso opção faça </li></ul><ul><ul><li>Resposta 1: alternativa 1 </li></ul></ul><ul><ul><li>Resposta 2: alternativa 2 </li></ul></ul><ul><ul><li>Outro caso </li></ul></ul><ul><ul><ul><li>Alternativa 3 </li></ul></ul></ul><ul><li>Fim caso </li></ul>
  49. 49. Ler uma opção e escrever qual letra foi selecionada <ul><li>Inicio </li></ul><ul><ul><li>Ler letra </li></ul></ul><ul><ul><ul><li>Caso letra faça </li></ul></ul></ul><ul><ul><ul><ul><li>“ a”: escreva “vc escolheu a “ </li></ul></ul></ul></ul><ul><ul><ul><ul><li>“ b” : escreva “vc escolheu b “ </li></ul></ul></ul></ul><ul><ul><ul><li>Outro caso </li></ul></ul></ul><ul><ul><ul><ul><li>Escreva “vc escolheu outra letra” </li></ul></ul></ul></ul><ul><ul><li>Fim </li></ul></ul>
  50. 50. Estrutura de repetição <ul><li>Repete, de forma controlada, um conjunto selecionado de instruções. </li></ul><ul><li>Podem ser de 3(três) tipos: </li></ul><ul><ul><li>Para-faça </li></ul></ul><ul><ul><li>Enquanto-faça </li></ul></ul><ul><ul><li>Repita-até </li></ul></ul>
  51. 51. Para-faça <ul><li>Usa-se da seguinte forma: </li></ul><ul><ul><li>Para variável  inicio até fim </li></ul></ul><ul><ul><ul><li>Grupo de instruções que será repetido </li></ul></ul></ul><ul><ul><li>Fim para </li></ul></ul><ul><li>Funciona da seguinte forma </li></ul><ul><ul><li>A variável é inicializada com o valor do inicio; </li></ul></ul><ul><ul><li>O grupo de instruções é executado; </li></ul></ul><ul><ul><li>Ao chegar ao comando “fim para” a variável tem seu valor acrescido de 1(um) e verifica se o seu valor é maior que fim </li></ul></ul><ul><ul><li>Se for menor ou igual, repete o conjunto de instruções </li></ul></ul>
  52. 52. Elabore um algoritmo para escrever os números inteiros de 1 até 10 <ul><li>Inicio </li></ul><ul><ul><li>Para j  1 ate 10 faça </li></ul></ul><ul><ul><ul><li>Escreva j </li></ul></ul></ul><ul><ul><li>Fim para </li></ul></ul><ul><li>Fim </li></ul>
  53. 53. Elabore um algoritmo para determinar a soma dos 10 primeiros números inteiros <ul><li>Inicio </li></ul><ul><ul><li>Soma  0; </li></ul></ul><ul><ul><li>Para j  1 até 10 faça </li></ul></ul><ul><ul><ul><li>Soma  soma+j </li></ul></ul></ul><ul><ul><li>Fim para </li></ul></ul><ul><ul><li>Escreva soma </li></ul></ul><ul><li>Fim </li></ul>
  54. 54. Elabore um algoritmo que leia 5 valores e determine a sua soma <ul><li>Inicio </li></ul><ul><ul><li>Soma  0 </li></ul></ul><ul><ul><li>Para j  1 ate 5 faça </li></ul></ul><ul><ul><ul><li>Ler x </li></ul></ul></ul><ul><ul><ul><li>Soma  soma+x </li></ul></ul></ul><ul><ul><li>Fim para </li></ul></ul><ul><ul><li>Escreva soma </li></ul></ul><ul><li>Fim </li></ul>
  55. 55. Altere o algoritmo anterior para ler “n” valores <ul><li>Inicio </li></ul><ul><ul><li>Ler n </li></ul></ul><ul><ul><li>Soma  0 </li></ul></ul><ul><ul><li>Para j  1 ate n faça </li></ul></ul><ul><ul><ul><li>Ler x </li></ul></ul></ul><ul><ul><ul><li>Soma  soma +x </li></ul></ul></ul><ul><ul><li>Fim para </li></ul></ul><ul><ul><li>Escreva soma </li></ul></ul><ul><li>Fim </li></ul>
  56. 56. Enquanto-faça <ul><li>Usa-se da seguinte forma: </li></ul><ul><ul><li>Enquanto condição faça </li></ul></ul><ul><ul><ul><li>Grupo de instruções que será repetido </li></ul></ul></ul><ul><ul><li>Fim enquanto </li></ul></ul><ul><li>Funciona da seguinte forma: </li></ul><ul><ul><li>Enquanto a condição for VERDADEIRA o grupo de instruções é repetido </li></ul></ul>
  57. 57. Por exemplo: soma de 5 valores lidos <ul><li>Inicio </li></ul><ul><li>Soma  0 </li></ul><ul><li>Cont  0 </li></ul><ul><li>Enquanto cont < 5 faça </li></ul><ul><ul><li>Ler x </li></ul></ul><ul><ul><li>Soma  soma+x </li></ul></ul><ul><ul><li>Cont  cont+1 </li></ul></ul><ul><li>Fim enquanto </li></ul><ul><li>Escreva soma </li></ul><ul><li>Fim </li></ul>
  58. 58. As condições são construídas <ul><li>De forma análoga as condições da estrutura de decisão; </li></ul><ul><li>Pode-se usar os operadores >, >=, <,<=,=,<> e ou não </li></ul>
  59. 59. Pode-se interromper a repetição <ul><li>Usando um contador, conforme o exemplo anterior ou; </li></ul><ul><li>Usando um “flag” condição que indica que a repetição deve ser interrompida. </li></ul>
  60. 60. Elabore um algoritmo que <ul><li>Leia uma quantidade indeterminada de valores positivos. O “flag” é um valor negativo. </li></ul>
  61. 61. Solução <ul><li>Inicio </li></ul><ul><li>Soma  0 </li></ul><ul><li>Ler x </li></ul><ul><li>Enquanto x > 0 faça </li></ul><ul><ul><li>Soma  soma +x </li></ul></ul><ul><ul><li>Ler x </li></ul></ul><ul><li>Fim enquanto </li></ul><ul><li>Escreva soma </li></ul><ul><li>Fim </li></ul>
  62. 62. Repita-até <ul><li>Usa-se da seguinte forma: </li></ul><ul><ul><li>Repita </li></ul></ul><ul><ul><ul><li>Grupo de instruções que será repetido </li></ul></ul></ul><ul><ul><li>Até que condição </li></ul></ul><ul><li>Funciona da seguinte forma: </li></ul><ul><ul><li>Repete o grupo de instruções ATÉ que a condição seja verdadeira </li></ul></ul>
  63. 63. Elabore um algoritmo que leia 5 valores e determine a sua soma <ul><li>Inicio </li></ul><ul><li>Soma  o </li></ul><ul><li>Cont  0 </li></ul><ul><li>Repita </li></ul><ul><ul><li>Ler x </li></ul></ul><ul><ul><li>Soma  soma+x </li></ul></ul><ul><ul><li>Cont  cont+1 </li></ul></ul><ul><li>Ate que cont = 5 </li></ul><ul><li>Escreva soma </li></ul><ul><li>Fim </li></ul>

×