Algoritmo e Programação Tathiana E. Silva ([email protected]) Variáveis Estruturadas Quando temos a necessidade de armazenar vários valores não seria prático ter que criar uma variável para cada valor a ser armazenado. Para essas situações podemos utilizar a variável estruturada que é um conjunto de valores armazenados, um após o outro, mas todos com o mesmo nome. Ex: Variáveis Estruturadas As variáveis estruturadas podem ter uma ou duas dimensões: uma dimensão 3 67 vetor 29 duas dimensões -4 18 35 matriz 45 6 386 -34 23 1 -2 0 15 61 294 -77 Variáveis Estruturadas 3 67 29 -4 18 35 1 2 3 4 5 6 Esse é um vetor de 6 elementos, isto é, tem 6 variáveis, todas com o mesmo nome e diferentes por sua posição dentro do arranjo que é indicada por um índice. A1=3, A2=67, A3=29, A4=-4, A5=18, A6=35 Em algoritmos fica da seguinte forma: A[1] = 3 A[4] = -4 A[2] = 67 A[5] = 18 A[3] = 29 A[6] = 35 Variáveis Estruturadas Um vetor deve estar declarado dimensionado na área de variáveis. <variáveis> : vetor [<intervalos>] de <tipo-de-dado> Ex: vet: vetor [1..10] de real matriz: vetor [0..4,8..10] de inteiro e Variáveis Estruturadas A leitura e escrita dos valores encontram-se dentro de estruturas de repetição. // leitura para L de 1 ate <tamanho-vetor> faca escreva ("Digite um valor : ") leia (<nome-vetor> [ L ] ) fimpara // escrita para L de 1 ate <tamanho-vetor> faca escreva (<nome-vetor> [ L ] ) fimpara Variáveis Estruturadas Ex: criar um programa que leia 10 números e armazene-os em um vetor. Após, mostrar os números em ordem inversa a de leitura algoritmo "exemplo1" var i: inteiro A: vetor [1..10] de inteiro inicio para i de 1 ate 10 faca leia (A[i]) fimpara para i de 10 ate 1 passo -1 faca escreval (A[i]) fimpara fimalgoritmo Variáveis Estruturadas Exercício: Criar um algoritmo que armazene nome e duas notas de 5 alunos e imprima uma listagem contendo nome, as duas notas e a média de cada aluno da seguinte forma: 1 – MARCOS 1ª nota: 10 2ª nota: 5 média: 7.5 2 – PEDRO 1ª nota: 8 2ª nota: 6 média: 7 3 - MARIANA 1ª nota: 5 2ª nota: 7 média: 6 4 – ANA 1ª nota: 10 2ª nota: 9 média: 9.5 5 – CARLOS 1ª nota: 7 2ª nota: 9 média: 8 Variáveis Estruturadas Para fazer a ordenação de um vetor deve-se comparar o elemento que está na 1ª posição com todos os seguintes a ele. Quando for necessário trocá-lo de lugar, fazendo uso de uma variável auxiliar. Essa operação será repetida até que tenha feito todas as comparações. Ex: Leia 10 números e exiba-os em ordem decrescente. Variáveis Estruturadas algoritmo "exemplo2" var num: vetor[1..10] de inteiro j,i,aux: inteiro inicio para j de 1 ate 10 faca escreva("Digite um número: ") leia(num[j]) fimpara para j de 1 ate 10 faca para i de j+1 ate 10 faca se num[j] < num[i] entao aux <- num[j] num[j] <- num[i] num[i]<-aux fimse fimpara fimpara para j de 1 ate 10 faca escreval(num[j]) fimpara fimalgoritmo Variáveis Estruturadas Exercício: Leia os nomes de 10 pessoas e exiba-os em ordem alfabética.