18.04.2013 Views

Fundamentos de Programação 1 - Alcides Maya Tecnologia

Fundamentos de Programação 1 - Alcides Maya Tecnologia

Fundamentos de Programação 1 - Alcides Maya Tecnologia

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

segundo exemplo<br />

57<br />

<strong>Fundamentos</strong> <strong>de</strong> <strong>Programação</strong><br />

Desenvolver um programa que efetue a leitura <strong>de</strong> <strong>de</strong>z elementos <strong>de</strong> uma matriz A do tipo vetor. No final,<br />

apresente o total da soma <strong>de</strong> todos os elementos que sejam ímpares.<br />

algoritmo<br />

Perceba que em relação ao primeiro exemplo, este apresenta uma diferença: o primeiro pedia para verificar<br />

se o índice era par ou ímpar. Neste exemplo, está sendo solicitado que analise a condição do elemento e não<br />

do índice. Já foi alertado anteriormente para se tomar cuidado para não confundir elemento com índice. Vamos<br />

a solução:<br />

1 – Iniciar o contador <strong>de</strong> índice, variável índice como 1 em um contador até 10;<br />

2 – Ler os 10 valores, um a um;<br />

3 – Verificar se o elemento é ímpar; se sim efetuar a soma dos elementos;<br />

4 – Apresentar o total somado <strong>de</strong> todos os elementos ímpares da matriz.<br />

Observe que quando se faz menção ao índice indica-se a variável que controla o contador <strong>de</strong> índice, e no<br />

caso do exemplo anterior, a variável índice. Quando se faz menção ao elemento, indica-se matrizA[índice] pois<br />

<strong>de</strong>sta forma está se pegando o valor armazenado e não a sua posição <strong>de</strong> en<strong>de</strong>reço.<br />

Codificação em Linguagem C<br />

main( )<br />

{<br />

int matriza[10];<br />

int indice;<br />

int resp;<br />

int soma;<br />

clrscr( );<br />

soma = 0;<br />

for( indice = 0; indice < 10; indice++ )<br />

{<br />

printf ( “digite um valor numerico inteiro: “ );<br />

scanf ( “%d”, &matriza[indice] );<br />

}<br />

for( indice = 0; indice < 10; indice++ )<br />

{<br />

resp = matriza[indice] % 2;<br />

if ( resp == 1 )<br />

soma = soma + matriza[indice];<br />

}<br />

printf ( “\na soma dos elementos ímpares é: %d” , soma );<br />

getch( );<br />

}

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!