Faça um código que leia 10 números do tipo float e armazene em um vetor. Utilize um ponteiro para acessar o vetor. Ao final, diga a média dos números do vetor e o menor número.
Passo 1
Então, a gente tem um exercício que pede para fazer um código que leia 10 números decimais (tipo
float
), guardar esses números em um vetor, usar um ponteiro para acessar esse vetor e, por fim, calcular a média dos números e encontrar o menor número desse vetor. Para resolver isso, vamos precisar entender como usar vetores (arrays), ponteiros, laços de repetição para ler os números e calcular a média e o menor valor.Passo 2
Primeiro, vamos declarar um vetor para armazenar os 10 números
float
. Em C, a gente faz assim:float numeros[10];
Passo 3
Agora, vamos usar um ponteiro para acessar esse vetor. Declaramos o ponteiro assim:
float *ptr = numeros;
Aqui,
ptr
aponta para o primeiro elemento do vetor numeros
.Passo 4
Vamos precisar ler os 10 números do usuário e armazenar no vetor. Usamos um laço
for
para isso:for(int i = 0; i < 10; i++) {
printf("Digite o %dº número: ", i+1);
scanf("%f", ptr + i);
}
Explicando:
ptr + i
acessa a posição i
do vetor usando o ponteiro.Passo 5
Agora, vamos calcular a média dos números. Primeiro, somamos todos os números:
float soma = 0.0;
for(int i = 0; i < 10; i++) {
soma += *(ptr + i);
}
float media = soma / 10;
Aqui,
*(ptr + i)
pega o valor na posição i
do vetor.Passo 6
Para encontrar o menor número, inicializamos com o primeiro elemento e comparamos com os demais:
float menor = *ptr;
for(int i = 1; i < 10; i++) {
if(*(ptr + i) < menor) {
menor = *(ptr + i);
}
}
Passo 7
Por fim, vamos imprimir a média e o menor número:
printf("A média dos números é: %.2f\n", media);
printf("O menor número é: %.2f\n", menor);
Resposta
A média dos números é [valor da média] e o menor número é [valor do menor número].