O documento apresenta dois exemplos de algoritmos para resolver somatórias utilizando estruturas de repetição "PARA". O primeiro exemplo soma números de 1 a 500 e o segundo soma múltiplos de 2 de 1 a 1000 para demonstrar como utilizar a variável de controle "i" da estrutura de repetição nos cálculos. Também recomenda-se o uso de uma variável auxiliar para armazenar o limite superior da estrutura "PARA", facilitando alterações posteriores.
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
Curso De Algoritmo Aula 7
1. http://olinux.uol.com.br/artigos/434/print_preview.html
Curso de Algoritmo - Aula VII
Por: Jorge Luiz E. Souza ( 11/01/2002 )
Introdução
Muito bem, como ficou acertado, veremos a resolução de exercícios matemáticos, para a escrita de
algoritmos estruturados.
Exemplo 1
Nosso primeiro exercício será a resolução de uma somatória de números.
S = 1 + 2 + 3 + 5 + ...
Até um total de 500 dígitos.
Já ficou estabelecido o número de repetições, então, a melhor estrutura a ser utilizada para a resolução
do problema é o PARA.
Resolução
Algoritmo Somatoria
Declare S, i : Inteiro
//Inicialização da variável acumuladora
S <- 1
PARA i <- 2 ATÉ 500 FAÇA
S <- S + i
FIMPARA
FIM ALGORITMO
Pronto, a implementação para a solução deste problema é bem simples não?! E demonstra um pouco do
poder de cálculo dos computadores. Para fazer esta soma, um computador levaria um milésimos de
segundo.
Aproveitando esta implementação, vejamos uma técnica para atualização rápida de estruturas PARA,
em algoritmos mais complexos. Esta técnica é muito importante, pois imagine um código com 1500 (mil
e quinhentas) linhas, e algumas estruturas PARA espalhadas, utilizando o mesmo valor de repetições.
Você teria que procurar pelo código para encontrar as estruturas PARA e atualizar uma por uma caso o
valor de repetição mudasse.
A técnica é a seguinte:
Ao invés de utilizarmos:
PARA i <- 2 ATÉ 500 FAÇA
Utilizaremos:
PARA i <- 2 ATÉ VFim FAÇA
Onde Vfim é uma variável que deve ser inicializada no início do programa com o valor de finalização da
estrutura de repetição.
Então teriamos:
Algoritmo Somatoria
Declare S, Vfim, i : Inteiro
//Inicialização da variável acumuladora
S <- 1
Vfim <- 500
2. PARA i <- 2 ATÉ VFim FAÇA
S <- S + i
FIMPARA
FIM ALGORITMO
Agora, basta alterar o valor de Vfim, para que a estrutura passe a calcular mais ou menos de 500
dígitos.
Exemplo 2
Vejamos um algoritmo para resolver o seguinte problema:
S <- 2 + 4 + 6 + 8 +...
Para um total de 1000 dígitos.
Algoritmo SomatoriaII
Declare S, Vfim, i : Inteiro
//Inicialização da variável acumuladora
S <- 0
Vfim <- 1000
PARA i <- 1 ATÉ VFim FAÇA
S <- S + (i*2)
FIMPARA
FIM ALGORITMO
Note que a solução apresentada aqui, para este segundo exemplo, utiliza a própria variável da estrutura
PARA, para obter os valores a serem somados. Assim, quando o valor de "i" for:
I = 1 ------- S receberá seu valor atual (zero) + o valor obtido pela multiplicação de "i" por 2, isto é
(dois).
I = 2 ------- S receberá seu valor atual (dois) + o valor obtido pela multiplicação de "i" por 2, isto é
(quatro).
E assim por diante.
Observe que foi utilizado parenteses para descrever a ordem de operações que deve ser seguida.
Como na matemática, o computador, se não especificado, segue a seguinte ordem de operações
matemáticas:
1. Raiz quadrada
2. Equações
3. Multiplicação e divisão
4. Soma e subtração
5. Operadores lógicos (AND,OR,XOR,NOT)
Para determinar a ordem de uma expressão matemática utiliza-se os parenteses. Assim, dão resultados
diferentes:
1. 5*5+15/20 é diferente de 5*(5+15)/20 que é diferente de (5*5+(15/20)).
Conclusão
Com esta aula, vimos que a implementação de uma somatória pode ser muito simples e rápida para o
computador. E como uma técnica simples pode ajudar na manutenção de estruturas PARA em
algoritmos mais complexos.
Para exercitar, faça um algoritmo que calcule:
S = 1+ 3+ 5 + 7+...