[C++]Ajuda com função que retira um elemento do vetor

11/06/2021

3

C++

Olá amigos! podem me ajudar com o código abaixo:

Baseado no Código abaixo, crie uma função que retire um elemento do vetor. O usuário deverá digitar a POSIÇÃO (ou ÍNDICE) que deseja retirar. A retirada deve "copiar" os números em posições à direita de forma a substituir o número que deve ser "eliminado".

Por exemplo, se o usuário digitar um número negativo, (não existem índices negativos no vetor) o programa deve imprimir uma mensagem de erro. Se o usuário digitar um número maior que 9 (no exemplo abaixo os índices vão de 0 a 9)

o programa deve imprimir uma mensagem de erro.


#include <stdio.h>
#define TAM 10


void imprimir(int *v,int qtd);
int inserir(int valor, int *qtd, int *v, int tamanho);




void main()
{
int vetor[TAM]=;
int valor, finalizar=1, qtd=0;
while (finalizar)
{
printf("\nDigite um valor: ");
scanf("%d", &valor);
finalizar=inserir(valor, &qtd, vetor, TAM);
imprimir(vetor,qtd);
}
printf("Cheio!");
}


int inserir(int valor, int *qtd, int *v, int tamanho){
int i=0,aux;
if (*qtd==0){
v[0]=valor;
(*qtd)++;
}else if (*qtd<tamanho){
while (valor>v[i] && i<*qtd) i++;
for (aux = *qtd; aux>i; aux--)v[aux]=v[aux-1];
v[i]=valor;
(*qtd)++;
}else return 0;
return 1;
}


void imprimir(int *v, int qtd)
{
int i;
for (i = 0; i < qtd; i++)printf("[%d]", v[i]);
}
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar