Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [c++] Eliminazioni elementi da un vettore 2

    Ciao, da traccia devo eliminare da un vettore V1 gli elementi uguali agli elementi del vettore V2
    codice:
    es. v1=7,5,3,4 v2=1,3,7,6,8,2 il vettore v1 dopo l'eliminazione sarà: v1=5,4
    bene io ho provato a fare questo algoritmo all'interno di una funzione:
    codice:
    void ricerca_elim (int vett1[],int vett2[],int riemp1,int riemp2)
    {int i,j,k; //indice scorrimento vettore
     bool trovato;
    
    
    for(i=0;i<riemp2;i++)
    {   j=0; trovato=false;
        while (j<riemp1 && !trovato)
           { trovato=vett2[i]==vett1[j];
             j++;
           }
        if (trovato)
         {  for(k=j;k<riemp1-1;k++)
             { 
               vett1[k]=vett1[k+1];
             } riemp1--;
         }   
    }     
           //stampa di prova
       cout<<"vett1: \n";
       for(i=0;i<riemp1;i++)
       cout<<vett1[i]<<"\t";
    
    }
    controllando e ricontrollando a me sembra vada bene, però quando faccio una stampa di prova invece di darmi in stampa il nuovo vettore mi caccia fuori 7 e 3 che sono gli elementi che dovrei eliminare....dove sbaglio? potete darci un occhiata magari voi lo trovate prima l'errore, perchè a me sembra che vada bene però non da il risultato che cerco :S grazie

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Intanto dovrebbe essere

    codice:
    for(k=j-1; k<riemp1-1; k++)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.