Elabore um programa em C para verificar entre quatro números inteiros fornecidos pelo utilizador qual número está mais próximo do valor 1000. O programa deve retornar O (zero) se os quatro números forem iguais. Use vectores para armazenar os quatros números digitados e as distâncias calculadas.
printf("O número mais próximo de 1000 é %d.\n", numbers[closest]);
return 0;
}
Explicação:
O programa começa declarando as constantes e as variáveis necessárias. A constante SIZE define o tamanho do vetor que armazenará os números digitados pelo usuário, e os vetores numbers e distances armazenam os números digitados e as distâncias calculadas, respectivamente. As variáveis i, closest e min_distance são usadas para controle do loop e cálculo do número mais próximo de 1000.
Em seguida, o programa lê os números digitados pelo usuário e armazena-os no vetor numbers.
Depois, o programa calcula as distâncias dos números para 1000 usando a função abs da biblioteca math.h, e armazena-as no vetor distances.
Em seguida, o programa busca pelo número mais próximo de 1000 percorrendo o vetor distances e comparando os valores. A variável closest armazena o índice do número mais próximo de 1000, e a variável min_distance armazena a menor distância encontrada.
Por fim, o programa exibe o resultado. Se todos os números forem iguais, o programa exibe a mensagem "Os quatro números são iguais.". Caso contrário, o programa exibe o número mais próximo de 1000.
Lista de comentários
Verified answer
Resposta:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define SIZE 4
int main() {
int numbers[SIZE];
int distances[SIZE];
int i, closest, min_distance;
// leitura dos números digitados pelo usuário
printf("Digite %d números inteiros:\n", SIZE);
for (i = 0; i < SIZE; i++) {
scanf("%d", &numbers[i]);
}
// cálculo das distâncias dos números para 1000
for (i = 0; i < SIZE; i++) {
distances[i] = abs(numbers[i] - 1000);
}
// busca pelo número mais próximo de 1000
closest = 0;
min_distance = distances[0];
for (i = 1; i < SIZE; i++) {
if (distances[i] < min_distance) {
closest = i;
min_distance = distances[i];
}
}
// exibição do resultado
if (min_distance == 0) {
printf("Os quatro números são iguais.\n");
return 0;
}
printf("O número mais próximo de 1000 é %d.\n", numbers[closest]);
return 0;
}
Explicação:
O programa começa declarando as constantes e as variáveis necessárias. A constante SIZE define o tamanho do vetor que armazenará os números digitados pelo usuário, e os vetores numbers e distances armazenam os números digitados e as distâncias calculadas, respectivamente. As variáveis i, closest e min_distance são usadas para controle do loop e cálculo do número mais próximo de 1000.
Em seguida, o programa lê os números digitados pelo usuário e armazena-os no vetor numbers.
Depois, o programa calcula as distâncias dos números para 1000 usando a função abs da biblioteca math.h, e armazena-as no vetor distances.
Em seguida, o programa busca pelo número mais próximo de 1000 percorrendo o vetor distances e comparando os valores. A variável closest armazena o índice do número mais próximo de 1000, e a variável min_distance armazena a menor distância encontrada.
Por fim, o programa exibe o resultado. Se todos os números forem iguais, o programa exibe a mensagem "Os quatro números são iguais.". Caso contrário, o programa exibe o número mais próximo de 1000.