Ajuda com algoritmo em Pascal

1. Ajuda com algoritmo em Pascal

jokil kolpo
comp

(usa Outra)

Enviado em 01/04/2024 - 15:27h

Preciso de um algoritmo em linguagem Pascal, que utilize function e procedure para média, soma, maior e menor valor de um array [1..10] de real. Se possível mostrar a posição e quantas vezes aparece o mesmo número digitado.


  


2. Re: Ajuda com algoritmo em Pascal

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 01/04/2024 - 15:27h

Para resolver esse problema em Pascal, você pode fazer uso de uma função para calcular a média, a soma, o maior e o menor valor de um array de 10 elementos e também mostrar a posição e a quantidade de vezes que um número específico aparece. Veja um exemplo de como você pode implementar isso:

[code]
program CalculoArray;

var
arrayNum: array [1..10] of real;

procedure preencherArray();
var
i: integer;

begin
for i := 1 to 10 do
begin
write('Digite o valor da posição ', i, ': ');
readln(arrayNum[i]);
end;
end;

function calcularMaior(): real;
var
i: integer;
maior: real;

begin
maior := arrayNum[1];
for i := 2 to 10 do
begin
if arrayNum[i] > maior then
maior := arrayNum[i];
end;

calcularMaior := maior;
end;

function calcularMenor(): real;
var
i: integer;
menor: real;

begin
menor := arrayNum[1];
for i := 2 to 10 do
begin
if arrayNum[i] < menor then
menor := arrayNum[i];
end;

calcularMenor := menor;
end;

function calcularMedia(): real;
var
i


3. Re: Ajuda com algoritmo em Pascal

Daniel Lara Souza
danniel-lara

(usa Fedora)

Enviado em 01/04/2024 - 16:11h


talvez ajude




program CalculoArray;

const
TAMANHO_ARRAY = 10;

type
TArray = array[1..TAMANHO_ARRAY] of real;

var
numeros: TArray;

procedure LerNumeros(var numeros: TArray);
var
i: integer;
begin
writeln('Digite os ', TAMANHO_ARRAY, ' números do array:');
for i := 1 to TAMANHO_ARRAY do
begin
write('Número ', i, ': ');
readln(numeros[i]);
end;
end;

function Media(const numeros: TArray): real;
var
i: integer;
soma: real;
begin
soma := 0;
for i := 1 to TAMANHO_ARRAY do
soma := soma + numeros[i];
Media := soma / TAMANHO_ARRAY;
end;

function Soma(const numeros: TArray): real;
var
i: integer;
begin
Soma := 0;
for i := 1 to TAMANHO_ARRAY do
Soma := Soma + numeros[i];
end;

function MaiorValor(const numeros: TArray): real;
var
i: integer;
begin
MaiorValor := numeros[1];
for i := 2 to TAMANHO_ARRAY do
if numeros[i] > MaiorValor then
MaiorValor := numeros[i];
end;

function MenorValor(const numeros: TArray): real;
var
i: integer;
begin
MenorValor := numeros[1];
for i := 2 to TAMANHO_ARRAY do
if numeros[i] < MenorValor then
MenorValor := numeros[i];
end;

procedure PosicaoEQuantidade(const numeros: TArray; const valor: real; var posicao: integer; var quantidade: integer);
var
i: integer;
begin
quantidade := 0;
for i := 1 to TAMANHO_ARRAY do
begin
if numeros[i] = valor then
begin
quantidade := quantidade + 1;
posicao := i;
end;
end;
end;

var
mediaNum, somaNum, maiorNum, menorNum: real;
num: real;
posicaoNum, quantidadeNum: integer;

begin
LerNumeros(numeros);
mediaNum := Media(numeros);
somaNum := Soma(numeros);
maiorNum := MaiorValor(numeros);
menorNum := MenorValor(numeros);

writeln('Média: ', mediaNum:0:2);
writeln('Soma: ', somaNum:0:2);
writeln('Maior valor: ', maiorNum:0:2);
writeln('Menor valor: ', menorNum:0:2);

write('Digite um número para encontrar a posição e quantidade de ocorrências: ');
readln(num);
PosicaoEQuantidade(numeros, num, posicaoNum, quantidadeNum);
if quantidadeNum > 0 then
writeln('O número ', num:0:2, ' aparece na posição ', posicaoNum, ' e ocorre ', quantidadeNum, ' vez(es).')
else
writeln('O número ', num:0:2, ' não foi encontrado no array.');

readln;
end.









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts