sexta-feira, 31 de agosto de 2012
Resposta questão 2 Fila B - LTP1 2º TRIM 2012
{ Crie um algoritmo que preencha um vetor de 10 posicoes de elementos inteiros.
Calcule e mostre:
a) os elementos pares;
b) a soma dos elementos de indice impar;
c) a media dos elementos;
d) a quantidade de elementos iguais a 30;
e) a quantidade de elementos maiores que a media
f) os elementos do vetor ordenado (crescente)
g) uma pesquisa sequencial de um elemento da lista, iniciando a posicao onde se encontra. }
program vetor_10_posicoes;
uses crt;
var
x : array[1..10] of integer;
i,j,aux,elem_par,soma_eleind_impar,quant_30,quant_elem_mmedia,soma : integer;
media_elementos : real;
begin
soma:=0;
clrscr;
{**** CADASTRAMENTO DOS ELEMENTOS DE UM VETOR DE 10 POSICOES ****}
writeln ('Cadastramento dos elementos em um vetor de 10 elementos: ');
writeln;
writeln ('Digite os elementos deste vetor: ');
for i:= 1 to 10 do
begin
readln (x[i]);
soma:= soma + x[i]; {esta variável sera utilizada para calcular a media dos elementos da tabele (item c) }
end;
clrscr;
{**** c) a media dos elementos; ****}
media_elementos:=soma/10;
{**** LISTAGEM DOS ELEMENTOS DE UM VETOR DE 10 POSICOES ****}
writeln ('Elementos em um vetor de 10 elementos: ');
writeln;
writeln ('Elementos deste vetor: ');
for i:= 1 to 10 do
write (' ',x[i]);
{**** Solucao dos itens de "a" ate a letra "g" ****}
elem_par:= 0;
soma_eleind_impar:=0;
quant_30:= 0;
quant_elem_mmedia:=0;
for i:= 1 to 10 do
begin
{**** a) os elementos pares; ****}
if (x[i] mod 2 = 0) then
elem_par:= elem_par + 1;
{**** b) a soma dos elementos de indice impar; ****}
if (i mod 2 <> 0) then
soma_eleind_impar:=soma_eleind_impar + x[i];
{**** d) a quantidade de elementos iguais a 30; ****}
if x[i] = 30 then
quant_30:= quant_30 + 1;
{**** e) a quantidade de elementos maiores que a media ****}
if x[i] > media_elementos then
quant_elem_mmedia:= quant_elem_mmedia + 1;
end;
writeln;
writeln;
{**** Apresentacao do resultado obtido nas questoes : "a,b,d,e" ****}
writeln ('a) os elementos pares : ',elem_par);
writeln ('b) a soma dos elementos de indice impar : ',soma_eleind_impar);
writeln ('c) a media dos elementos : ',media_elementos:2:1);
writeln ('d) a quantidade de elementos iguais a 30 : ',quant_30);
writeln ('e) a quantidade de elementos maiores que a media: ',quant_elem_mmedia);
writeln;
writeln;
{**** f) os elementos do vetor ordenado (crescente) ****}
{**** rotina de troca dos elementos ****}
for i:= 1 to 9 do
for j:= i+1 to 10 do
begin
if x[i] > x[j] then
begin
aux:=x[i];
x[i]:=x[j];
x[j]:=aux;
end;
end;
writeln;
writeln;
{*** rotina para listar os elementos da matriz ordenado (crescente) ****}
writeln ('Listagem dos elementos ordenados (crescente): ');
write ('Elementos: ');
for i:= 1 to 10 do
write (' ',x[i],' ');
writeln;
write ('Tecle <ENTER> para continuar ');
readln;
end.
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário