Fundamentos de Programação 1 - Alcides Maya Tecnologia
Fundamentos de Programação 1 - Alcides Maya Tecnologia
Fundamentos de Programação 1 - Alcides Maya Tecnologia
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Fundamentos</strong> <strong>de</strong> <strong>Programação</strong><br />
Leitura <strong>de</strong> dados <strong>de</strong> uma matriz<br />
A leitura <strong>de</strong> uma matriz <strong>de</strong> duas dimensões, assim como das matrizes <strong>de</strong> uma dimensão é processado passo<br />
a passo, um elemento por vez. A instrução <strong>de</strong> leitura é leia seguida da variável mais os seus índices. A seguir,<br />
são apresentados o fluxograma e a codificação em português estruturado da leitura das notas dos alunos, cálculo<br />
da média e a sua apresentação.<br />
Observe que está sendo consi<strong>de</strong>rada a leitura <strong>de</strong> 4 notas <strong>de</strong> 8 alunos. Assim sendo, a tabela em questão<br />
armazena 32 elementos. Um <strong>de</strong>talhe a ser consi<strong>de</strong>rado é a utilização <strong>de</strong> duas variáveis para controlar os dois<br />
índices <strong>de</strong> posicionamento <strong>de</strong> dados na tabela. Anteriormente, utilizamos a variável índice para controlar as<br />
posições dos elementos <strong>de</strong>ntro da matriz, ou seja, a posição em nível <strong>de</strong> linha. Neste exemplo a variável índice<br />
passa a ser tratada como lin, controlando a posição da linha, e a segunda variável será tratada como col,<br />
controlando a posição da coluna. Muitos programadores utilizam i no lugar <strong>de</strong> lin e utilizam j no lugar <strong>de</strong> col.<br />
Analisando o fluxograma, temos a inicialização das variáveis lin e col como 1, ou seja, a leitura será efetuada<br />
na primeira linha da primeira coluna. Em seguida é iniciado em primeiro lugar o looping da variável lin para<br />
controlar a posição em relação às linhas e <strong>de</strong>pois é iniciado o looping da variável col para controlar a posição em<br />
relação às colunas.<br />
Veja que, ao serem iniciados os valores para o preenchimento da tabela, eles são colocados na posição<br />
nota[1,1], lembrando que o primeiro valor <strong>de</strong>ntro dos colchetes representa a linha e o segundo representa a<br />
coluna.<br />
Será digitado então, para o primeiro aluno a primeira nota. Depois é incrementado mais 1 em relação à<br />
coluna, sendo colocada para a entrada a posição nota[1,2], linha 1 coluna 2. Desta forma, será digitado para o<br />
primeiro aluno a segunda nota.<br />
Quando o contador <strong>de</strong> coluna atingir o valor 4, ele será encerrado e será efetuado o cálculo e a apresentação<br />
da média. Em seguida o contador da variável lin será incrementado com mais 1, tornando-se 2. Será então<br />
inicializado novamente o contador col em 1, permitindo que seja digitado um novo dado na posição nota[2,1].<br />
O mecanismo <strong>de</strong> preenchimento esten<strong>de</strong>r-se-á até que o contador <strong>de</strong> linhas atinja o seu último valor, no<br />
caso 8. Esse looping é o principal, tendo a função <strong>de</strong> controlar o posicionamento na tabela por aluno. O segundo<br />
looping, mais interno, controla o posicionamento das notas.<br />
Codificação em Linguagem C<br />
main( )<br />
{<br />
float nota[8][4];<br />
float soma, media, valor;<br />
int lin, col;<br />
clrscr( );<br />
for( lin = 0; lin < 8; lin++ )<br />
{<br />
soma = 0;<br />
for( col = 0; col < 4; col++ )<br />
{<br />
printf ( “digite a nota %d do aluno %d : “, col+1, lin+1 );<br />
scanf ( “%f”, &valor );<br />
nota[lin][col] = valor;<br />
soma = soma + nota[lin][col];<br />
}<br />
61