• Matéria: Informática
  • Autor: NicollasYuri
  • Perguntado 3 anos atrás

Faça um programa em C ou C++ para ler um vetor B de 10 elementos inteiros e um valor X.
Em seguida escreva o valor pertencente a B que for mais próximo de X.

Respostas

respondido por: joaopedrolemos
1

Resposta:

#include <stdio.h>

#include <locale.h>

int main() {

   //Insere os caracteres do português

   setlocale(LC_ALL, "Portuguese");

   int b[10], diferenca[10], x;

       //Recebe X

       printf("Valor de X: ");scanf("%d",&x);

       //Recebe 10 Valores e vê a diferença entre os números.

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

           printf("Valor(%d): ",i+1);scanf("%d",&b[i]);

               if (x>b[i]){

                   diferenca[i]=x-b[i];

               }

               else {

                   diferenca[i]=b[i]-x;

               }

       }

       //Verifica os valores, salva o menor e o indice

       int menor = diferenca[9], indice;

           for (int j=0;j<10;j++){

               if (menor>diferenca[j]) {

                   menor=diferenca[j];

                   indice=j;

               }

           }

       //Imprime o menor

       printf("Valor mais próximo de x>> %d\n", b[indice]);

   return 0;

}

---------------------------------------------------------------------

OUTPUT:

Valor de X: 10

Valor(1): 11

Valor(2): 12

Valor(3): 13

Valor(4): 14

Valor(5): 15

Valor(6): 16

Valor(7): 17

Valor(8): 18

Valor(9): 19

Valor(10): 20

Valor mais próximo de x>> 11

Perguntas similares