Algoritmo
Para determinados tipos de problemas o uso de variáveis simples (variáveis escalares) não se torna adequado na sua solução. Tomemos, por exemplo, o problema a seguir:
Problema-G: “Elaborar uma rotina que solicite dez notas e informe a quantidade de notas superiores a média destas notas.”
A seguir veremos duas soluções do problema proposto, ambos usando apenas variáveis escalares.
1ª SOLUÇÃO:
Início ProbG1 declare N1, N2, N3, N4, N5, N6, N7, N8, N9, N10, MED, QDE numérico QDE ( 0 leia N1, N2, N3, N4, N5, N6, N7, N8, N9, N10 MED ( (N1 + N2 + N3 + ... + N9 + N10) / 10 SE N1 > MED | ENTÃO | QDE ( QDE + 1 FIM SE SE N2 > MED | ENTÃO | QDE ( QDE + 1 FIM SE SE N3 > MED | ENTÃO | QDE ( QDE + 1 FIM SE . . . SE N10 > MED | ENTÃO | QDE ( QDE + 1 FIM SE escreva QDE Fim ProbG1
Obs.: Esta solução não é adequada, pois a sua codificação ficaria muito extensa, consequentemente dando muito trabalho ao programador.
2ª SOLUÇÃO:
Início ProbG2 declare NOTA, SOMA, MED, QDE, I numérico QDE ( 0 SOMA ( 0 PARA I DE 1 ATÉ 10 FAÇA | leia NOTA | SOMA ( SOMA + NOTA FIM PARA MED ( SOMA / 10 PARA I DE 1 ATÉ 10 FAÇA | leia NOTA | SE NOTA > MED | | ENTÃO | | QDE ( QDE + 1 | FIM SE FIM PARA escreva QDE Fim ProbG2
Obs.: Também é inadequada esta solução, uma vez que a digitadora teria que digitar cada nota duas vezes. Problemas deste tipo são resolvidos usando variáveis compostas (variáveis vetoriais), que estudaremos neste capítulo.
6.2 - Variáveis Compostas Homogêneas
6.2.1 - Unidimensional ( Vetor )