Buscar

2- Escreva um programa, em linguagem C, que leia quatro números distintos digitados pelo usuário. O programa deve apresentar a soma dos dois menores.

💡 4 Respostas

User badge image

Francisco José da Silva

Segue resposta.

#include <stdio.h>
#include <stdlib.h>

int main()
{
int vetor[4], cont, aux, i, j;
int soma=0, mult=1;

for(cont=0; cont<4; cont++)
{
printf("Digite o valor %d : ", cont+1);
scanf("%d",&vetor[cont]);
fflush(stdin);
}

for(i=cont-1; i >= 1; i--)
{
for(j=0; j < i ; j++)
{
if(vetor[j]>vetor[j+1])
{
aux = vetor[j];
vetor[j] = vetor[j+1];
vetor[j+1] = aux;
}
}
}

soma += vetor[0] + vetor[1];

printf("\nPrimeiro numero menor eh %d.\n", vetor[0]);
printf("\nSegundo numero menor eh %d.\n", vetor[1]);

printf("\nA soma dos dois numeros menores eh %d.\n", soma);

system("PAUSE");

return(0);
}

1
Dislike0
User badge image

Andre Smaira

2- Escreva um programa, em linguagem C, que leia quatro números distintos digitados pelo usuário. O programa deve apresentar a soma dos dois menores.


Para resolver este problema podemos usar um vetor para capturar os valores lidos, e uma constante para controlar a quantidade de entrada, assim nosso algoritmo pode ler mais ou menos de quatro valores, logo na leitura já podemos verificar quais os menores valores e já ir atribuindo as variáveis que armazenaram os mesmos. Feito, no final podemos exibir a listagem de números lidos com um laço de repetição (for) e logo após exibir a soma dos dois menores valores previamente atribuídos no momento da leitura de todos os valores.


#include <stdio.h>

#include <stdlib.h>

//Constante onde posso configurar a quantidade de entrada de valores

const int QTD_NUM_LER = 4;

int main(){

//Declaração das variaveis

/*numeros[] é o vetor de float que guardar todos os valores lidos,

primeiro_menor e segundo_menor armazenam os dois menores valores.

*/

float numeros[QTD_NUM_LER], primeiro_menor, segundo_menor;

//Inicializo as variaveis de soma com valor randomico usando a funcao rand()

primeiro_menor = segundo_menor = rand() * 10000;

//Leio os valores informados e ja verifico os menores

for(int i = 0; i < QTD_NUM_LER; i++){

printf("Entre com o %io numero: ", i+1);

scanf("%f", &numeros[i]);

printf("\n");

/*Verifico se o valor lido é menor que o primeiro_menor*/

if(numeros[i] < primeiro_menor){

//Caso sim, atribuo a variavel

primeiro_menor = numeros[i];

//Caso contrario, verifico se e menor que o segundo_menor

} else if(numeros[i] < segundo_menor) {

//Caso sim, atribuo

segundo_menor = numeros[i];

}

}

//Apresento os valores lidos

printf("\n\n");

printf("Todos os valores lidos");

for(int i = 0; i < QTD_NUM_LER; i++){

printf(" %.1f; ", numeros[i]);

}

//Apresento a soma

printf("\n\n");

printf("Soma dos 2 menores numeros lido= %.1f", primeiro_menor + segundo_menor);

printf("\n\n");

}

0
Dislike0
User badge image

Andre Smaira

Para resolver este problema podemos usar um vetor para capturar os valores lidos, e uma constante para controlar a quantidade de entrada, assim nosso algoritmo pode ler mais ou menos de quatro valores, logo na leitura já podemos verificar quais os menores valores e já ir atribuindo as variáveis que armazenaram os mesmos. Feito, no final podemos exibir a listagem de números lidos com um laço de repetição (for) e logo após exibir a soma dos dois menores valores previamente atribuídos no momento da leitura de todos os valores.


#include <stdio.h>

#include <stdlib.h>

//Constante onde posso configurar a quantidade de entrada de valores

const int QTD_NUM_LER = 4;

int main(){

//Declaração das variaveis

/*numeros[] é o vetor de float que guardar todos os valores lidos,

primeiro_menor e segundo_menor armazenam os dois menores valores.

*/

float numeros[QTD_NUM_LER], primeiro_menor, segundo_menor;

//Inicializo as variaveis de soma com valor randomico usando a funcao rand()

primeiro_menor = segundo_menor = rand() * 10000;

//Leio os valores informados e ja verifico os menores

for(int i = 0; i < QTD_NUM_LER; i++){

printf("Entre com o %io numero: ", i+1);

scanf("%f", &numeros[i]);

printf("\n");

/*Verifico se o valor lido é menor que o primeiro_menor*/

if(numeros[i] < primeiro_menor){

//Caso sim, atribuo a variavel

primeiro_menor = numeros[i];

//Caso contrario, verifico se e menor que o segundo_menor

} else if(numeros[i] < segundo_menor) {

//Caso sim, atribuo

segundo_menor = numeros[i];

}

}

//Apresento os valores lidos

printf("\n\n");

printf("Todos os valores lidos");

for(int i = 0; i < QTD_NUM_LER; i++){

printf(" %.1f; ", numeros[i]);

}

//Apresento a soma

printf("\n\n");

printf("Soma dos 2 menores numeros lido= %.1f", primeiro_menor + segundo_menor);

printf("\n\n");

}

0
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais