Inserimento in un vettore in ordine.

di il
1 risposte

Inserimento in un vettore in ordine.

Salve a tutti ho scritto del codice su come inserire un elemento in un vettore già ordinato. Il sottoprogramma non funziona per quanto riguarda la stampa del vettore nel caso in cui inserisco un elemento non agli estremi del vettore. Vi posto il codice così proviamo a capire insieme dove è l'errore.
void Inserimento_in_Ordine (int *m,int dim,int numero)
{
    int tmp;
    int i;
    bool inserito=false;
    if (*(m+0)> numero)
    {
        for (i=0;i<dim-1;i++)
        {
            *(m+i+1)=(*m+i);
        }
      *(m+0)=numero;
      inserito=true;
    }
    if (*(m+dim-2) < numero)
    {
        *(m+dim-1)=numero;
        inserito=true;
    }
    if(inserito==false)
    {
        while (*(m+i)< numero && i < dim-2)
        {i++;}
      int pos=i;
      for (i=pos;i<dim-2;i++)
      {
          *(m+i+1)=*(m+i);
      }
      *(m+pos)=numero;
    }
}

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte